Hello @denny.w.h.zhong
Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?
If so please can you click the 'Accept' text next to the appropriate reply? This will guide all community members who have a similar question.
Thanks,
AHS
Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.
Thanks,
AHS
EMA doesn't cache the data. To get the response, you can reissue a request with a handle.
consumer.reissue(ReqMsg().initialImage(true), handle);
With this reissue, the application gets a new refresh via the application callback method.
Would you like to get update messages(containing only changed fields’ value) after a refresh message(the first data response with all fields you specified in view) like below?
RefreshMsg
streamId="5"
domain="MarketPrice Domain"
solicited
RefreshComplete
state="Open / Ok / None / 'All is well'"
itemGroup="00 01"
permissionData="03 08 42 52 6c"
name="JPY="
nameType="1"
serviceId="2114"
serviceName="API_ELEKTRON_EDGE_TOKYO"
Payload dataType="FieldList"
FieldList FieldListNum="99" DictionaryId="1"
FieldEntry fid="22" name="BID" dataType="Real" value="114.50"
FieldEntry fid="25" name="ASK" dataType="Real" value="114.52"
FieldListEnd
PayloadEnd
RefreshMsgEnd
UpdateMsg
streamId="5"
domain="MarketPrice Domain"
updateTypeNum="0"
name="JPY="
serviceId="2114"
serviceName="API_ELEKTRON_EDGE_TOKYO"
Payload dataType="FieldList"
FieldList
FieldEntry fid="22" name="BID" dataType="Real" value="114.51"
FieldListEnd
PayloadEnd
UpdateMsgEnd
consumer.registerClient(reqMsg.serviceName(serviceName).name("TEST1").interestAfterRefresh(false), appClient);
Note: If you set interestAfterRefresh to true, you will get update messages after a refresh messages till you unsubscribe the RIC.