/// <summary> /// Removes a remote subscription from the route path or a local data or control bus /// </summary> /// <param name="message"></param> public void OnSubscriptionRemoved(ISubscriptionRemoved message) { _connectionCache.WithValue(message.SubscriptionId, unsubscribe => { unsubscribe(); _connectionCache.Remove(message.SubscriptionId); _log.Debug(() => string.Format("Removed: {0} => {1}, {2}", message.MessageName, message.EndpointUri, message.SubscriptionId)); }); }
public void OnSubscriptionRemoved(ISubscriptionRemoved message) { Guard.AgainstNull(_inputAddress, "InputAddress", "The input address was not set"); MessageName messageName; if (_bindings.TryGetValue(message.SubscriptionId, out messageName)) { _inboundTransport.UnbindSubscriberExchange(messageName.ToString()); _bindings.Remove(message.SubscriptionId); } }
public void OnSubscriptionRemoved(ISubscriptionRemoved message) { if (_ignoredMessageTypes.Contains(message.MessageName)) { return; } WithTarget(x => x.Send(new RemovePeerSubscriptionMessage { PeerId = _peerId, MessageNumber = ++_messageNumber, EndpointUri = message.EndpointUri, MessageName = message.MessageName, SubscriptionId = message.SubscriptionId, CorrelationId = message.CorrelationId, })); }
/// <summary> /// Called when a subscription was removed. /// </summary> /// <param name="message">The message.</param> public void OnSubscriptionRemoved(ISubscriptionRemoved message) { long messageNumber = Interlocked.Increment(ref _lastMessageNumber); var subscription = new SubscriptionInformation(_peerId, messageNumber, message.MessageName, message.CorrelationId, message.EndpointUri) { SubscriptionId = message.SubscriptionId }; var remove = new RemoveSubscription(subscription); if (_log.IsDebugEnabled) { _log.DebugFormat("RemoveSubscription: {0}, {1}", subscription.MessageName, subscription.SubscriptionId); } _endpoint.Send(remove, SetSendContext); }
public void OnSubscriptionRemoved(ISubscriptionRemoved message) { long messageNumber = Interlocked.Increment(ref _lastMessageNumber); var remove = new RemovePeerSubscriptionMessage { PeerId = _peerId, MessageNumber = messageNumber, SubscriptionId = message.SubscriptionId, EndpointUri = message.EndpointUri, MessageName = message.MessageName, CorrelationId = message.CorrelationId, }; if (_log.IsDebugEnabled) { _log.DebugFormat("RemoveSubscription: {0}, {1}", remove.MessageName, remove.SubscriptionId); } _endpoint.Send(remove, SetSendContext); }
/// <summary> /// Called when a subscription was removed. /// </summary> /// <param name="message">The message.</param> public void OnSubscriptionRemoved(ISubscriptionRemoved message) { _producer.OnSubscriptionRemoved(message); }
public void OnSubscriptionRemoved(ISubscriptionRemoved message) { lock (_observers) _observers.Each(x => x.OnSubscriptionRemoved(message)); }