$ mvn clean package dependency:copy-dependencies
- 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
-
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();
$ 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
$ 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
Any running example can be stopped by pressing Ctrl + C
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.
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