private void OnSubscriptionAdded(IWampTopic topic, WampSubscriptionAddEventArgs e) { IRemoteWampTopicSubscriber subscriber = e.Subscriber; long sessionId = subscriber.SessionId; long subscriptionId = topic.SubscriptionId; AddPeer(sessionId, subscriptionId, () => GetSubscriptionDetails(topic, sessionId, subscriptionId, e.Options)); }
public static bool IsEligible(this PublishOptions options, IRemoteWampTopicSubscriber subscriber) { long sessionId = subscriber.SessionId; string authId = subscriber.AuthenticationId; string authRole = subscriber.AuthenticationRole; return((IsEligible(options.Eligible, sessionId, true) && IsEligible(options.EligibleAuthenticationIds, authId, true) && IsEligible(options.EligibleAuthenticationRoles, authRole, true)) && (IsEligible(options.Exclude, sessionId, false) && IsEligible(options.ExcludeAuthenticationIds, authId, false) && IsEligible(options.ExcludeAuthenticationRoles, authRole, false))); }
public void Publish(IRemoteWampTopicSubscriber subscriber) { Action(subscriber, Details); }
public WampSubscriptionAddEventArgs(IRemoteWampTopicSubscriber subscriber, SubscribeOptions options) { mOptions = options; mSubscriber = subscriber; }