Bus.Transport.SendingPipe.MessageSender.Route C# (CSharp) Method

Route() public method

public Route ( IMessage message, PeerId peerName ) : ICompletionCallback
message IMessage
peerName PeerId
return ICompletionCallback
        public ICompletionCallback Route(IMessage message, PeerId peerName)
        {
            var callback = new DefaultCompletionCallback();

            var sequence = _ringBuffer.Next();
            var data = _ringBuffer[sequence];

            data.MessageTargetHandlerData.Message = message;
            data.MessageTargetHandlerData.Callback = callback;
            data.MessageTargetHandlerData.TargetPeer = peerName;
            data.MessageTargetHandlerData.IsAcknowledgement = false;
            data.NetworkSenderData.WireMessages = new List<WireSendingMessage>(2);

            _ringBuffer.Publish(sequence);

            return callback;
        }