Level 2: dcis-libraries

Auf Level 2 werden nur die allgemeinen Informationen über die Maven-Struktur und die Packages gegeben. Für weitere Informationen wird auf die jeweiligen JavaDocs der Bibliotheken verwiesen. Das Handling der drei verschiedenen Bibliothekstypen wird in Handling asynchronously transfered data tiefergehend beschrieben.

1. Client Libraries

1.1. dcis-client-arbitration

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-client-arbitration

Package

de.paladinsinn.tp.dcis..client

Handler

de.paladinsinn.tp.dcis.arbitration.client.events.ArbitrationEventsHandler

Queue (out)

dcis.arbitrations.modification (arbitrations-modification)

Topics (in)

dcis.arbitrations.changes (arbitrations-changes)

Application config snippet

spring:
  application:
    name: dcis-users
    system: DCIS
  cloud:
    stream:
      # noinspection SpringBootApplicationYaml
      bindings:
        input:
          users-changes:
            destination: dcis.arbitrations.changes
            content-type: application/json
            consumer:
              use-native-decoding: false
              auto-startup: true
        output:
          users-modification:
            destination: dcis.arbitrations.modification
            content-type: application/json
            producer:
              use-native-encoding: false
              auto-startup: true

1.2. dcis-client-operatives

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-client-operatives

Package

de.paladinsinn.tp.dcis.operatives.client

Handler

de.paladinsinn.tp.dcis.operatives.client.events.OperativesEventsHandler

Queue (out)

dcis.operatives.modification (operatives-modification)

Topics (in)

dcis.operatives.changes (operatives-changes)

Application config snippet

spring:
  application:
    name: dcis-users
    system: DCIS
  cloud:
    stream:
      # noinspection SpringBootApplicationYaml
      bindings:
        input:
          users-changes:
            destination: dcis.operatives.changes
            content-type: application/json
            consumer:
              use-native-decoding: false
              auto-startup: true
        output:
          users-modification:
            destination: dcis.operatives.modification
            content-type: application/json
            producer:
              use-native-encoding: false
              auto-startup: true

1.3. dcis-client-gaming

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-client-gaming

Package

de.paladinsinn.tp.dcis.gaming.client

Handler

de.paladinsinn.tp.dcis.gaming.client.events.GamingEventsHandler

Queue (out)

dcis.gaming.modification (gaming-modification)

Topics (in)

dcis.gaming.changes (gaming-changes)

Application config snippet

spring:
  application:
    name: dcis-users
    system: DCIS
  cloud:
    stream:
      # noinspection SpringBootApplicationYaml
      bindings:
        input:
          users-changes:
            destination: dcis.gaming.changes
            content-type: application/json
            consumer:
              use-native-decoding: false
              auto-startup: true
        output:
          users-modification:
            destination: dcis.gaming.modification
            content-type: application/json
            producer:
              use-native-encoding: false
              auto-startup: true

1.4. dcis-client-threats

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-client-threats

Package

de.paladinsinn.tp.dcis.threats.client

Handler

de.paladinsinn.tp.dcis.threats.client.events.ThreatEventsHandler

Queue (out)

dcis.threats.modification (threats-modification)

Topics (in)

dcis.threats.changes (threats-changes)

Application config snippet

spring:
  application:
    name: dcis-users
    system: DCIS
  cloud:
    stream:
      # noinspection SpringBootApplicationYaml
      bindings:
        input:
          users-changes:
            destination: dcis.threats.changes
            content-type: application/json
            consumer:
              use-native-decoding: false
              auto-startup: true
        output:
          users-modification:
            destination: dcis.threats.modification
            content-type: application/json
            producer:
              use-native-encoding: false
              auto-startup: true

1.5. dcis-client-codex

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-client-codex

Package

de.paladinsinn.tp.dcis.codex.client

Handler

de.paladinsinn.tp.dcis.codex.client.events.CodexEventsHandler

Queue (out)

dcis.codex.modification (codex-modification)

Topics (in)

dcis.codex.changes (codex-changes)

Application config snippet

spring:
  application:
    name: dcis-users
    system: DCIS
  cloud:
    stream:
      # noinspection SpringBootApplicationYaml
      bindings:
        input:
          users-changes:
            destination: dcis.codex.changes
            content-type: application/json
            consumer:
              use-native-decoding: false
              auto-startup: true
        output:
          users-modification:
            destination: dcis.codex.modification
            content-type: application/json
            producer:
              use-native-encoding: false
              auto-startup: true

1.6. dcis-client-discord

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-client-discord

Package

de.paladinsinn.tp.dcis.discord.client

Handler

de.paladinsinn.tp.dcis.discord.client.events.EventsHandler

Queue (out)

dcis.discord.output (discord-modification)

Topics (in)

dcis.discord.input (discord-changes)

Application config snippet

spring:
  application:
    name: dcis-users
    system: DCIS
  cloud:
    stream:
      # noinspection SpringBootApplicationYaml
      bindings:
        input:
          users-changes:
            destination: dcis.discord.changes
            content-type: application/json
            consumer:
              use-native-decoding: false
              auto-startup: true
        output:
          users-modification:
            destination: dcis.discord.modification
            content-type: application/json
            producer:
              use-native-encoding: false
              auto-startup: true

2. Store Libraries

2.1. Application config snippet

The snippet presented points to a file mode H2 database in PostgreSQL mode. The url, username and password will be overwritten via environment variables during runtime:

  • SPRING_DATASOURCE_URL

  • SPRING_DATASOURCE_USERNAME

  • SPRING_DATASOURCE_PASSWORD

Default snippet for application.yml for datase setup.
spring:
  datasource:
    url: jdbc:h2:file:./target/db;MODE=PostgreSQL
    username: sa
    password: password
    hikari:
      connectionTimeout: 20000
      maximumPoolSize: 5

  jpa:
    showSql: false
    hibernate:
      ddlAuto: validate

  liquibase:
    enabled: true
    show-summary-output: log
    show-summary: summary
    change-log: classpath:/db/changelog/db.changelog-master.yaml
    url: ${spring.datasource.url}
    user: ${spring.datasource.username}
    password: ${spring.datasource.password}

2.2. dcis-store-arbitration

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-store-arbitration

Package

de.paladinsinn.tp.dcis.arbitration.store

Changelog

db/arbitration/master.yml

2.3. dcis-store-operatives

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-store-operatives

Package

de.paladinsinn.tp.dcis.operatives.store

Changelog

db/operatives/master.yml

2.4. dcis-store-gaming

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-store-gaming

Package

de.paladinsinn.tp.dcis.gaming.store

Changelog

db/gaming/master.yml

2.5. dcis-store-threats

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-store-threats

Package

de.paladinsinn.tp.dcis.threats.store

Changelog

db/threats/master.yml

2.6. dcis-store-codex

GroupId

de.paladins-inn.torganized-play

ArtifactId

dcis-store-codex

Package

de.paladinsinn.tp.dcis.codex.store

Changelog

db/codex/master.yml