Hello @Chaitanya.Vishnubhotla,
EmaConfig.xml is used to specify the behavior of EMA API such as connection establishment, dumping communication messages, request time out, etc.
The other benefit from separating the configuration setting from the business logic is that you can just change EmaConfig.xml only when you change the server environment or want to debug incoming/outgoing data. So, you don't have to re-compile your source code again, which is convenient for this scenario.
Here this is the overview from EMAJ_ConfigGuide -- a pdf document located in the <ELEKTRON_SDK_PACKAGE>\Ema\Docs directory.
You write the Message API configuration using a simple XML schema, some settings of which can be changed via software function calls. The initial configuration compiled into the Message API software defines a minimal set of configuration parameters. Message API users can also supply an XML file (EmaConfig.xml) to specify configuration parameters, which must be put in the same directory as the EMA application. Additionally, programmatic interfaces can change parameter settings.
Hope this helps!