internal object GetSubscriber(int id) { if (ActiveSubscribers.Values.Contains(id)) { return(ActiveSubscribers.Where(p => p.Value == id).Select(p => p.Key).FirstOrDefault()); } return(null); }
/// <summary> /// Adds an active subscriber. /// </summary> /// <param name="instance">The instance.</param> internal void AddActiveSubscriber(object instance) { lock (ActiveSubscribers) { if (!ActiveSubscribers.ContainsKey(instance)) { ActiveSubscribers.Add(instance, Interlocked.Increment(ref _nextModuleID)); } } }
/// <summary> /// Gets the subscriber id. /// </summary> /// <param name="p">The p.</param> /// <returns></returns> internal int GetSubscriberId(object p) { if (ActiveSubscribers.ContainsKey(p)) { return(ActiveSubscribers[p]); } else { return(-1); } }