Details
-
Task
-
Resolution: Done
-
Major - P3
-
None
-
None
Description
ClientBasic stores an AbstractMessagingPort as _messaging port. That AbstractMessagingPort has a HostAndPort that can be accessed by calling remote(). ClientBasic has a method getRemote() that returns _messagingPort->remote().
ClientBasic's subclass, ClientInfo, stores a HostAndPort as _remote directly, and overrides the getRemote() method to return _remote instead of _messagingPort->remote().
From what I can tell, however, ClientInfo's _remote always get's set to the remote() from the same AbstractMessagingPort that it is storing in _messagingPort as part of its ClientBasic data.
We should always use _messagingPort->remote(), and make getRemote in ClientBasic no longer virtual.