Should send a request to the dispatcher, this request will be checked by isROCheck before, to make sure this is not a Write operation and that we are currently on read-only mode.
Should send a request to the dispatcher, this request will be checked by isROCheck before, to make sure this is not a Write operation and that we are currently on read-only mode. Then the connection and session are possibly checked with tryCheckLink depending if we are already trying to reconnect. Next the request is prepared : transformed to a ReqPacket, by adding opCode and xid. It is finally sent to the service owned by the current connection object.
a Request
a Future[RepPacket] in response to the request
LocalService is used to send ZooKeeper request to the endpoint. In client life, connection or session changes can happen, during those moments we are not able to send request because either the connection is down or the session is not established. For these reasons, during connection/reconnection/changeHost we can lock the service until the situation is back to normal.