protected override sealed void OnConnectionEstablished(object responseObject) { lock (connectionLock) { if (connectionFuture != null) connectionFuture.TrySetResult(true); connectionFuture = null; } OnConnectionEstablishedCore(responseObject); }