Exemple #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="instance"></param>
 /// <param name="method"></param>
 /// <param name="thread"></param>
 public void AddSubscription(object instance, MethodInfo method, DeliveryThread thread)
 {
     lock (_subscriptions)
     {
         var entry = new TransportCacheEntry(TransportProvider.GetTransport(method, thread),
                                             new WeakReference(instance));
         _subscriptions.Add(entry);
     }
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="instance"></param>
 /// <param name="method"></param>
 public void AddSubscription( object instance, MethodInfo method )
 {
     var transportCacheEntry = new TransportCacheEntry( TransportProvider.GetTransport( method ),
                                                        new WeakReference( instance ) );
     _subscriptions.Add( transportCacheEntry );
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="instance"></param>
 /// <param name="method"></param>
 /// <param name="thread"></param>
 public void AddSubscription( object instance, MethodInfo method, DeliveryThread thread )
 {
     lock (_subscriptions)
     {
         var entry = new TransportCacheEntry(TransportProvider.GetTransport(method, thread),
                                                       new WeakReference(instance));
         _subscriptions.Add(entry);
     }
 }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="instance"></param>
        /// <param name="method"></param>
        public void AddSubscription( object instance, MethodInfo method )
        {
            if (_subscriptions.Any(s => s.Target.Target.Equals(instance))) return;

            var transportCacheEntry = new TransportCacheEntry( TransportProvider.GetTransport( method ),
                                                               new WeakReference( instance ) );
            _subscriptions.Add( transportCacheEntry );
        }