public TcpPackage CreateNetworkPackage() { lock (_corrIdLock) { var dto = new ClientMessages.CreateStream(_stream, _metadata); return(new TcpPackage(TcpCommand.CreateStream, _correlationId, dto.Serialize())); } }
public Task <CreateStreamResult> CreateStreamAsync(string stream, byte[] metadata) { var correlationId = Guid.NewGuid(); var dto = new ClientMessages.CreateStream(correlationId, stream, metadata); var package = new TcpPackage(TcpCommand.CreateStream, correlationId, dto.Serialize()); var taskCompletionSource = new TaskCompletionSource <CreateStreamResult>(); var taskWrapper = new CreateStreamCompletionWrapper(taskCompletionSource); RegisterHandler(correlationId, taskWrapper); EnqueueForSend(package); return(taskCompletionSource.Task); }
public Task<CreateStreamResult> CreateStreamAsync(string stream, byte[] metadata) { var correlationId = Guid.NewGuid(); var dto = new ClientMessages.CreateStream(correlationId, stream, metadata); var package = new TcpPackage(TcpCommand.CreateStream, correlationId, dto.Serialize()); var taskCompletionSource = new TaskCompletionSource<CreateStreamResult>(); var taskWrapper = new CreateStreamCompletionWrapper(taskCompletionSource); RegisterHandler(correlationId, taskWrapper); EnqueueForSend(package); return taskCompletionSource.Task; }