public TcpPackage CreateNetworkPackage() { lock (_corrIdLock) { var dto = new ClientMessages.DeleteStream(_stream, _expectedVersion); return(new TcpPackage(TcpCommand.DeleteStream, _correlationId, dto.Serialize())); } }
public Task <DeleteResult> DeleteStreamAsync(string stream, int expectedVersion) { var correlationId = Guid.NewGuid(); var dto = new ClientMessages.DeleteStream(correlationId, stream, expectedVersion); var package = new TcpPackage(TcpCommand.DeleteStream, correlationId, dto.Serialize()); var taskCompletionSource = new TaskCompletionSource <DeleteResult>(); var taskWrapper = new DeleteTaskCompletionWrapper(taskCompletionSource); RegisterHandler(correlationId, taskWrapper); EnqueueForSend(package); return(taskCompletionSource.Task); }
public Task<DeleteResult> DeleteStreamAsync(string stream, int expectedVersion) { var correlationId = Guid.NewGuid(); var dto = new ClientMessages.DeleteStream(correlationId, stream, expectedVersion); var package = new TcpPackage(TcpCommand.DeleteStream, correlationId, dto.Serialize()); var taskCompletionSource = new TaskCompletionSource<DeleteResult>(); var taskWrapper = new DeleteTaskCompletionWrapper(taskCompletionSource); RegisterHandler(correlationId, taskWrapper); EnqueueForSend(package); return taskCompletionSource.Task; }