public virtual void Unsubscribe(Article article, ISubscriber subscriber) { if (article == null) { throw new ArgumentNullException("article"); } if (subscriber == null) { throw new ArgumentNullException("subscriber"); } ArticleSubscription subscription = new ArticleSubscription(article, subscriber); subscriptionStore.Remove(((IObjectWithKey)subscription).Key); }
public virtual void Subscribe(Article article, ISubscriber subscriber) { if (article == null) { throw new ArgumentNullException("article"); } if (subscriber == null) { throw new ArgumentNullException("subscriber"); } ArticleSubscription subscription = new ArticleSubscription(article, subscriber); string key = ((IObjectWithKey)subscription).Key; if (subscriptionStore.Select(key) == null) { subscriptionStore.Save(subscription); } }