Skip to content

Eurex Clearing Messaging Interfaces - Java based code examples using SwiftMQ and Apache Qpid client libraries

Notifications You must be signed in to change notification settings

Eurex-Clearing-Messaging-Interfaces/Java-Code-Examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CircleCI

How to compile and execute examples

Compilation (all modules except swiftmq)

$ mvn clean package dependency:copy-dependencies

Compilation (module swiftmq)

  • Download swift mq jar files and add them to local repository
    • Download client libraries (swiftmq_*_client.tar.gz) from here
    • Put files amqp.jar and swiftmq.jar to project root directory (where top level file pom.xml is located)
  • Add amqp.jar and swiftmq.jar files to local repository by executing commands below

$ mvn install:install-file -DlocalRepositoryPath=repo-local -DcreateChecksum=true -Dpackaging=jar -Dfile=swiftmq.jar -DgroupId=com -DartifactId=swiftmq -Dversion=1.0

$ mvn install:install-file -DlocalRepositoryPath=repo-local -DcreateChecksum=true -Dpackaging=jar -Dfile=amqp.jar -DgroupId=com.swiftmq -DartifactId=amqp -Dversion=1.0

  • Compile

$ mvn -Pswiftmq clean package dependency:copy-dependencies

Configuration (all modules)

  • Edit BroadcastReceiver.java and/or RequestResponse.java in modules you want to compile and change connection options as described in the documentation:

          Options options = new Options.OptionsBuilder()
             .accountName("ABCFR_ABCFRALMMACC1")
             .hostname("ecag-fixml-simu1.deutsche-boerse.com")
             .port(10170)
             .keystoreFilename("ABCFR_ABCFRALMMACC1.keystore")
             .keystorePassword("12345678")
             .truststoreFilename("truststore")
             .truststorePassword("12345678")
             .certificateAlias("abcfr_abcfralmmacc1")
             .build();
    

Execution (all modules)

Broadcast Receiver

$ java -cp "<module>/target/classes/:<module>target/dependency/*" <class>

where <module> should be replaced again by one of the modules as in configuration and <class> with the class which should run. Example how to start client with Qpid JMS client:

$ java -cp "qpid-jms/target/classes/:qpid-jms/target/dependency/*" com.deutscheboerse.amqp_1_0.examples.BroadcastReceiver

Request Response

$ java -cp "<module>/target/classes/:<module>target/dependency/*" <class>

where <module> should be replaced again by one of the modules as in configuration and <class> with the class which should run. Example how to start client with Qpid JMS client:

$ java -cp "qpid-jms/target/classes/:qpid-jms/target/dependency/*" com.deutscheboerse.amqp_1_0.examples.RequestResponse

Stop example

Any running example can be stopped by pressing Ctrl + C

Integration tests

The project is using Circle CI to run its own integration tests. The tests are executed against Docker images which contain the AMQP broker with configuration corresponding to Eurex Clearing FIXML Interface. The details of the integration tests can be found in the .circleci/config.yml file.

Documentation

More details about Java APIs and code examples can be found in the Volume B of Eurex Clearing Messaging Interfaces documentation on Eurex Clearing website

About

Eurex Clearing Messaging Interfaces - Java based code examples using SwiftMQ and Apache Qpid client libraries

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages