Elektron-SDK-1.4.0.L1.java.rrg - Override NI_PUB default serviceName

Hi, in the Examples for this SDK, Non Interactive Provider, is there a way to override the default publisher serviceName of NI_PUB? This is hard coded several places in the SDK. Thanks, Bill C.

Best Answer

  • wasin.w
    wasin.w admin
    Answer ✓

    Hello @billy.w.cunningham

    By default, the API always sends a Source Directory Service refresh message to ADH with a service name “NI_PUB”. There are three choices to configure the Source Directory refresh message based on your application requirement and implementation logic.

    • Choice 1: Copy the API’s EmaConfig.xml file to the application working directory, then you can change the service values of "Directory_1" node to match your service name
    • Choice 2: Manual sends a Source Directory refresh message to ADH server, so you can change a service name in the application source code to match your TREP/Elektron environment. Please see more detail in NIProvider example 300__MarketPrice__Streaming
    • Choice 3: Use API Programmatic configuration. The EMA Java also provides a programmatic configuration feature for developers. It lets you configure the EMA Java configurations including a default Source Directory in your source code to match your service name and service id. The example for NIProvider is example421__MarketPrice__ProgrammaticConfig application.

    For your reference, please see more detail in the following resources:

Answers

  • Hello @billy.w.cunningham,

    Yes, one can replace the hard-coded serviceName NI_PUB, with the service name that is required, in code.

    However, the provider example connects to ADH infrastructure component. ADH is usually not on the localhost, ADH should have the service configured, and user should be permissioned to run it. Running this example requires coordinating with one's market data group or infrastructure team, to be able to connect according to one's infrastructure setup.