Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • One single eSchKG/e-LP/e-LEF application has to be connected to the sedex network.
  • No further applications are to be served by the same sedex adapter.
  • One nativeApp -> Native Mode
  • One physical sedex participant (=sedex ID) is needed for the sedex adapter (T7-4-1 in the example configuration).

Prerequisite

  • One physical sedex participant (=sedex ID) is needed for the sedex adapter (T7-4-1 in the example configuration).

...

  •   Two eSchKG/e-LP/e-LEF applications are to be connected to the sedex network over one single sedex adapter.
  • Two nativeApps -> Native Mode.
  • One physical sedex participant for the sedex adapter (T7-4-1 in the example configuration).
  • Two logical sedex participants for the applications (T7-4-2 and T7-4-3 in the example configuration).

Prerequisite

  • One physical sedex participant for the sedex adapter (T7-4-1 in the example configuration).
  • Two logical sedex participants for the applications (T7-4-2 and T7-4-3 in the example configuration).

...

  • One eSchKG/e-LP/e-LEF application (message type = 10301) is to be connected to the sedex network.
  • One plain sedex mode application (message type = 112) is to be connected to the sedex network
  • One nativeApp and one transparentApp -> Mixed Mode

Prerequisite

  • One physical sedex participant Id (sedex ID = T7-4-1).

Prerequisite

  • One physical sedex participant Id (sedex ID = T7-4-1).
Since the applications
Note
Note
Since the applications send and receive using different sedex message types they can share the same physical sedex participant. This kind of setup is not recommended, if you plan to serve additional applications which might use the same message types!

...

recipientIdResolver.groovy: same as in case 1 

Case 4 – Two applications in Transparent Mode

...

Assumption

...

  • Two plain sedex mode applications are connected to the sedex network over one single sedex adapter.
  • Both applications use the same message type (112).
  • Two transparentApps -> Transparent Mode.
  • One physical sedex participant for the sedex adapter (T7-4-1 in the example configuration).
  • Two logical sedex participants for the applications (T7-4-2 and T7-4-3 in the example configuration).

 

Prerequisite

  • One physical sedex participant for the sedex adapter (T7-4-1 in the example configuration).
  • Two logical sedex participants for the applications (T7-4-2 and T7-4-3 in the example configuration). 

 

Note
Both applications work with the same sedex message type (112). Due to this each application requires its own logical sedex ID.

...

Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.0">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case4/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case4/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case4/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case4/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case4/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case4"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case4/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <transparentApp participantId="T7-4-2" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationA/outbox" /> 
        <inbox dirPath="applicationA/inbox" msgTypes="112"/>
        <receipts dirPath="applicationA/receipts" msgTypes="112"/>
    </transparentApp>
    <transparentApp participantId="T7-4-3" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationB/outbox" />
        <inbox dirPath="applicationB/inbox" msgTypes="112"/>
        <receipts dirPath="applicationB/receipts" msgTypes="112"/>
    </transparentApp>
</config>

 

Case 5 – Two applications in Transparent Mode – local recipients

 

Assumption

 

  • Two plain sedex mode applications are to be connected to the sedex network over one single sedex adapter.
  • The applications also communicate directly with each other.
  • Both applications use the same sedex message type (112).

 

Prerequisite

  • One physical sedex participant for the sedex adapter (T7-4-1 in the example configuration).
  • Two logical sedex participants for the applications (T7-4-2 and T7-4-3 in the example configuration)

 

 

Note
Both applications work with the same sedex message type (112). Due to this each application requires its own logical sedex ID.

 

Example configuration

Image Added

Code Block
titleDirectory structure
mh_examples/case5
.
+-- applicationA
¦   +-- inbox
¦   +-- outbox
¦   +-- receipts
+-- applicationB
¦   +-- inbox
¦   +-- outbox
¦   +-- receipts
+-- log
¦   +-- mh
¦   +-- sedex
+-- mh
¦   +-- install-dir
¦   ¦   +-- bin
¦   ¦   +-- conf
¦   ¦   ¦   +-- config.xml
¦   ¦   ¦   +-- config.xsd
¦   ¦   ¦   +-- log4j.properties
¦   ¦   +-- lib
¦   +-- working-dir
¦       +-- corrupted
¦       +-- db
¦       +-- sent
¦       +-- tmp
¦       ¦   +-- preparing
¦       ¦   +-- receiving
¦       +-- unknown
+-- sedex
    +-- inbox
    +-- outbox
    +-- receipts
    +-- sent
Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
    xmlns="http://msghandler.suis.admin.ch/xmlns/config"
    version="3.0">
    
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case5/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case5/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case5/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case5/sedex/sent</sentDir>
    </sedexAdapter>
    
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
            corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case5/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case5"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case5/mh/working-dir/db" 
            dataHoldTimeInDays="2" resend="true"/>
        <localRecipients>
            <localRecipient recipientId="T7-4-2" msgTypes="112" />
            <localRecipient recipientId="T7-4-3" msgTypes="112" />
        </localRecipients>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    
    <transparentApp participantId="T7-4-2" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationA/outbox" />
        <inbox dirPath="applicationA/inbox" msgTypes="112"/>
        <receipts dirPath="applicationA/receipts" msgTypes="112"/>
    </transparentApp>
    
    <transparentApp participantId="T7-4-3" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationB/outbox" />
        <inbox dirPath="applicationB/inbox" msgTypes="112"/>
        <receipts dirPath="applicationB/receipts" msgTypes="112"/>
    </transparentApp>
</config>

...