My connection encounters the following error, along with some other State: Closed errors:
SEVERE: loggerMsg
ClientName: LoginCallbackClient
Severity: Error
Text: RDMLogin stream was closed with status message
username XXXX
usernameType X
State: Closed/Suspect/Timeout - text: "TREP authentication token has expired."
loggerMsgEnd
Information provided in "Migrating an application from Elektron Connect to Refinitiv Real-Time Optimized (https://developers.refinitiv.com/en/article-catalog/article/migrating-an-application-from-elektron-connect-to-refinitiv-real) states that:
"The application developer should consider how this particular scenario should be handled in an application. It could be a combination of application and/or log monitor, which detects that application is not receiving any updates, or all open subscriptions have been closed. Upon detection of this condition, the application should be terminated and restarted."
I am trying to programatically implement an automatic reconnect when these issues occur. The code provided in the Consumer.java examples contain methods for onRefreshMsg/onUpdateMsg etc. but does not not allow for loggerMsg, as this is handled in LoginCallbackClient. In the LoginCallbackClient, there is a boolean closeChannel which is set to false when the stream state is closed, however I'm also having some difficulties recreating the following issue. I have tried disconnecting my network connection to simulate a "State: Closed" but haven't been successful.
1) Is there a way to check the stream state of an OmmConsumer?
2) Is there a way to handle the loggerMsg in the Consumer class?
3) Is there a way to simulate a similar "State: Closed" scenario?
Thank you in advance