internal DispositionContext(ListenerLink link, Message message, DeliveryState deliveryState, bool settled) : base(link, message) { this.Settled = settled; }
/// <summary> /// Initializes a context object. /// </summary> /// <param name="link">The link where the message was received.</param> /// <param name="message">The received message.</param> protected Context(ListenerLink link, Message message) { this.Link = link; this.Message = message; this.state = ContextState.Active; }
static void DispatchMessage(ListenerLink link, Message message, DeliveryState deliveryState, object state) { MessageContext context = new MessageContext(link, message); ((MessageProcessor)state).processor.Process(context); }
protected Context(ListenerLink link, Message message) { this.Link = link; this.Message = message; }
internal RequestContext(ListenerLink requestLink, ListenerLink responseLink, Message request) : base(requestLink, request) { this.responseLink = responseLink; }
public Task<ReceiveContext> GetMessageAsync(ListenerLink link) { lock (this.messages) { ReceiveContext context = null; if (this.messages.Count > 0) { context = new ReceiveContext(link, this.messages.Dequeue()); } return Task.FromResult(context); } }
/// <summary> /// Initializes a TargetLinkEndpoint object /// </summary> /// <param name="messageProcessor">The associated message processor.</param> /// <param name="link">The listener link.</param> public TargetLinkEndpoint(IMessageProcessor messageProcessor, ListenerLink link) { this.messageProcessor = messageProcessor; this.link = link; }
internal AttachContext(ListenerLink link, Attach attach) { this.Link = link; this.Attach = attach; }
internal FlowContext(ListenerLink link, int messages, Fields properties) { this.Link = link; this.Messages = messages; this.Properties = properties; }
/// <summary> /// Initializes a SourceLinkEndpoint object /// </summary> /// <param name="messageSource">The associated message source.</param> /// <param name="link">The listener link.</param> public SourceLinkEndpoint(IMessageSource messageSource, ListenerLink link) { this.syncRoot = new object(); this.messageSource = messageSource; this.link = link; }
public MonitoringLinkEndpoint(ListenerLink link) { this.link = link; this.link.Closed += this.OnLinkClosed; this.random = new Random(); this.timer = new Timer(OnTimer, this, 1000, 1000); }
/// <summary> /// Initializes a context object. /// </summary> /// <param name="link">The link where the message was received.</param> /// <param name="message">The received message.</param> protected Context(ListenerLink link, Message message) { this.Link = link; this.Message = message; }
internal MessageContext(ListenerLink link, Message message) : base(link, message) { this.DeliveryState = message.Delivery.State; }
public Task<ReceiveContext> GetMessageAsync(ListenerLink link) { lock (this.messages) { ReceiveContext context = null; if (this.messages.Count > 0) { context = new ReceiveContext(link, this.messages.Dequeue()); } var tcs = new TaskCompletionSource<ReceiveContext>(); tcs.SetResult(context); return tcs.Task; } }
public SlowLinkEndpoint(AttachContext attachContext) { this.link = attachContext.Link; this.cts = new CancellationTokenSource(); link.Closed += (o, e) => this.cts.Cancel(); attachContext.Complete(this, 0); this.link.SetCredit(1, false, false); }
/// <summary> /// The method is called when the link is closed. Derived classes may override this method to /// perform necessary cleanup work. /// </summary> /// <param name="link">The link that is being closed.</param> /// <param name="error">The error, if any, that causes the link to be closed.</param> public virtual void OnLinkClosed(ListenerLink link, Error error) { }
internal MessageContext(ListenerLink link, Message message) : base(link, message) { }
/// <summary> /// Initializes a ReceiveContext object. /// </summary> /// <param name="link">The listener link to send out the message.</param> /// <param name="message">The message to send out.</param> public ReceiveContext(ListenerLink link, Message message) : base(link, message) { }
public bool TryAdd(ListenerLink link) { Key key = new Key(this.containerId, link); return(this.links.TryAdd(key, link)); }
void OnLinkClosed(AmqpObject sender, Error error) { ListenerLink link = (ListenerLink)sender; this.linkCollection.Remove(link); }