Example #1
0
 public TcpPackage CreateNetworkPackage()
 {
     lock (_corrIdLock)
     {
         var dto = new ClientMessages.CreateStream(_stream, _metadata);
         return(new TcpPackage(TcpCommand.CreateStream, _correlationId, dto.Serialize()));
     }
 }
Example #2
0
        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;
        }