Пример #1
0
        public void Unsubscribe(UnsubscribeRequest request)
        {
            IdentifierHeader identifierHeader = OperationContextProxy.Current.FindHeader <IdentifierHeader>();

            lock (_activeSubscriptions)
            {
                Subsciption toRemove;
                if (_activeSubscriptions.TryGetValue(identifierHeader.Value, out toRemove))
                {
                    toRemove.Dispose();
                    _activeSubscriptions.Remove(identifierHeader.Value);
                }
            }
        }
Пример #2
0
        public RenewResponse Renew(RenewRequest request)
        {
            IdentifierHeader identifierHeader = OperationContextProxy.Current.FindHeader <IdentifierHeader>();

            lock (_activeSubscriptions)
            {
                Subsciption toRenew;
                if (_activeSubscriptions.TryGetValue(identifierHeader.Value, out toRenew))
                {
                    toRenew.Renew(request.Expires ?? Expires.FromTimeSpan(DefaultExpirationTime));
                }
            }
            return(new RenewResponse
            {
                Expires = request.Expires
            });
        }