Пример #1
0
 public RateLimitAwaiter(
     IRateLimitCacheManager rateLimitCacheManager,
     ITaskDelayer taskDelayer,
     IWeakEvent <EventHandler <QueryAwaitingEventArgs> > queryAwaitingForRateLimitWeakEvent)
 {
     _rateLimitCacheManager = rateLimitCacheManager;
     _taskDelayer           = taskDelayer;
     _queryAwaitingForRateLimitWeakEvent = queryAwaitingForRateLimitWeakEvent;
 }
Пример #2
0
 public RateLimitAwaiter(
     ICredentialsAccessor credentialsAccessor,
     IRateLimitCacheManager rateLimitCacheManager,
     IThreadHelper threadHelper,
     IWeakEvent <EventHandler <QueryAwaitingEventArgs> > queryAwaitingForRateLimitWeakEvent)
 {
     _credentialsAccessor   = credentialsAccessor;
     _rateLimitCacheManager = rateLimitCacheManager;
     _threadHelper          = threadHelper;
     _queryAwaitingForRateLimitWeakEvent = queryAwaitingForRateLimitWeakEvent;
 }
Пример #3
0
 public RateLimitAwaiter(
     ICredentialsAccessor credentialsAccessor,
     IRateLimitCacheManager rateLimitCacheManager,
     IThreadHelper threadHelper,
     IWeakEvent<EventHandler<QueryAwaitingEventArgs>> queryAwaitingForRateLimitWeakEvent)
 {
     _credentialsAccessor = credentialsAccessor;
     _rateLimitCacheManager = rateLimitCacheManager;
     _threadHelper = threadHelper;
     _queryAwaitingForRateLimitWeakEvent = queryAwaitingForRateLimitWeakEvent;
 }
Пример #4
0
 public static Function <T2> CreateFunction <T1, T2>(IWeakEvent trigger, T1 target, Func <T1, T2> getter)
 {
     return(new Function <T2>(trigger.AsOne().ToArray(), target, x => getter((T1)x)));
 }
Пример #5
0
 public Function <TV> AddEvent(IWeakEvent trigger)
 {
     trigger.AddReceiver(_receiver);
     return(this);
 }
Пример #6
0
 private void Unadvise(IWeakEvent iWeakEvent)
 {
     iWeakEvent.RemoveReceiver(trigger);
 }
Пример #7
0
 private void Advise(IWeakEvent iWeakEvent)
 {
     iWeakEvent.AddReceiver(trigger);
 }
Пример #8
0
 public AutoCollection <T> UpdateOn(IWeakEvent trigger)
 {
     Contract.IsNotNull(trigger);
     trigger.AddReceiver(_updateAllCollection);
     return(this);
 }