The Customer Application creates an MFClient object via the static factory function provided by the MFAPI.
The Customer Application provides the hostname / IP, port and credentials (username, password assigned by MarketFactory and unique to each Customer Application). Two Customer Applica- tions using the same credentials cannot connect at the same time. If this happens, the second MFClient object will receive USER_ALREADY_CONNECTED upon calling .connect(). The original user session remains unaffected. If, however, the already-connected user has been detected as idle for greater than the server-side "timeoutClient" idle time then the second connection takes over.
Creating the MFClient object establishes a TCP connection between the Customer Application and the Whisperer application.
Main Thread MFHandler MFClient
«create»
«create»
.connect() APIResult
.run()
callbacks
.onStop()
.join()
.close()
APIResult
Figure 8.1. – Connection lifecycle showing clean disconnection from Whisperer