This adapter module allow you to set EOIO QoS and Queue ID in sender channel (even it was configured as EO). Queue Id can be setted as fixed value, or as value from Payload (using XPath).
Module has two parameters: QueueName and XPath.
Parameter QueueName is mandatory. Even you fill XPath parameter, you should set QueueName (with any non-empty value).
XPath example for PI message:
For example, we have this message:
<ns0:MT_1xmlns:ns0='someuri'>
<item>
<ThisIsWillBeUsedForQueueName>1</ThisIsWillBeUsedForQueueName>
</item>
</ns0:MT_1>
Xpath is: //item/ThisIsWillBeUsedForQueueName
In the message Data log you will see (even it is EO sender channel):
Quality of Service Exactly Once in Order
Sequence ID : <value from your QueueName or XPath result>
Code of Module in the attachment (this is for PI 7.4, for others may be some differences)
Useful links to create Module:
And check comments
Note: even you select XPI Libraries you can't add Audit, cause in those libraries is missing one important file com.sap.aii.af.svc_api.jar
You can get it from PI server. Very very great blog for it: http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/10/19/how-to-locate-java-library-resource-during-java-development-in-pi
Another useful link: http://wiki.scn.sap.com/wiki/display/NWTech/Custom+Adapter+Module+Development+-+SAP+PI+7.1
There I found how to get payload.
Have fun
PS. If you know, how to optimize it or do better - write in comments please. Thx
PPS. Another blog about : http://scn.sap.com/community/pi-and-soa-middleware/blog/2015/01/29/create-sap-pi-adapter-modules-in-ejb-30-standard