Read-only mirror of https://github.com/swiyu-admin-ch/swiyu-core-business-service — Bundesamt für Justiz. Issues & pull requests at the source.
  • Java 99.7%
  • Shell 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-26 04:14:28 +00:00
.git-hooks Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
.idea/codeStyles Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
.mvn Snapshot import from 2026-07-14T05:00:36Z 2026-07-14 05:00:36 +00:00
.run Snapshot import from 2026-07-13T05:10:25Z 2026-07-13 05:10:25 +00:00
.skills Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
docker-compose-module Snapshot import from 2026-07-14T05:00:36Z 2026-07-14 05:00:36 +00:00
docs/models Snapshot import from 2026-08-11T04:29:44Z 2026-08-11 04:29:44 +00:00
specs Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
swiyu-core-business-service-app Snapshot import from 2026-08-26T04:14:28Z 2026-08-26 04:14:28 +00:00
swiyu-core-business-service-registry-identifier Snapshot import from 2026-08-26T04:14:28Z 2026-08-26 04:14:28 +00:00
swiyu-core-business-service-registry-status Snapshot import from 2026-08-26T04:14:28Z 2026-08-26 04:14:28 +00:00
swiyu-discrete-validator-client Snapshot import from 2026-08-26T04:14:28Z 2026-08-26 04:14:28 +00:00
.gitignore Snapshot import from 2026-07-20T05:14:09Z 2026-07-20 05:14:09 +00:00
.snyk Snapshot import from 2026-07-03T05:17:57Z 2026-07-03 05:17:57 +00:00
.trivyignore Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
CHANGELOG.md Snapshot import from 2026-08-26T04:14:28Z 2026-08-26 04:14:28 +00:00
docker-compose.local.yml Snapshot import from 2026-08-11T04:29:44Z 2026-08-11 04:29:44 +00:00
docker-compose.shared.yml Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
docker-compose.yml Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
Dockerfile Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
kafka_server_jaas.conf Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
mvnw Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
pom.xml Snapshot import from 2026-08-26T04:14:28Z 2026-08-26 04:14:28 +00:00
README.md Snapshot import from 2026-07-14T05:00:36Z 2026-07-14 05:00:36 +00:00
renovate.json Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00
setVersions.sh Snapshot import from 2026-06-25T05:22:01Z 2026-06-25 05:22:01 +00:00

SWIYU Core Business Service

The service contains the business logic to implement the use cases and acts as a middleware between the registries and the internet with a strong focus on security aspects.

Getting Started

The swiyu-core-business-service has the entire local kafka setup needed in the docker-compose.local.yml file which is reused by the other services. To develop locally do the following:

  1. Start the core-business-service via Intellij (-> docker compose up is done automatically ) or via mvn command

Local Profile (uses registries in DEV stage and PAMS mock)

mvn spring-boot:run -Dspring-boot.run.profiles=local

Shared Profile (expects registries to run locally under localhost)

mvn spring-boot:run -Dspring-boot.run.profiles=local,shared
  1. Access confluent to observe the messages / topcis on http://localhost:9021/clusters

Limitations: The access to PAMS is mocked with local profile. When creating a BusinessPartner with this approach, the entity will not be registered at any external access system. In order to not mock anything start the app without local profile and configure all Environment Variables mentioned in application.yml.

Secrets config

Due to the necessity of local secrets for development there might be profiles used in the run configurations which are not part of this repository. Those profiles are generated outside of this repository and provided to the application als application-*.yaml files in the root /config directory or directly via environment variables.

Overview

@startuml
entity BusinessPartner #D00 {
    * foreignID
    name
    addInfo
    ProfileGroups
    }

entity BearerToken #D00 {
    iss
    aud
    bproles: {foreignID#1, ...}
}

entity BusinessEntity {
    * id
    * name
    * contact
}

BearerToken ||..|{ BusinessPartner
BusinessPartner ||--|| BusinessEntity : foreignID<->id

legend top left
 red: ePortal
endlegend
@enduml

Authentication & ePortal Integration (for FOITT internal usage only)

For an overview of roles, profiles and how they interact with the ePortal see confluence: Confluence - ePortal Integration for swiyu Service Portal