Example #1
0
 //remove a particular listener from call list
 public void Removeistener(ITimerListener obs)
 {
     try
     {
         _listeners.Remove(obs);
     }catch(Exception e){}
 }
Example #2
0
        /// <summary>
        /// Add a <see cref="ITimerListener"/> that will be executed until it is garbage collected or removed by clearing the returned <see cref="TimerReference"/>.
        /// NOTE: It is the responsibility of code that adds a listener via this method to clear this listener when completed.
        /// </summary>
        /// <param name="listener">ITimerListener implementation that will be triggered according to its <see cref="ITimerListener.GetIntervalTimeInMilliseconds()"/> method implementation.</param>
        /// <returns>The reference which can be used to stop the timer.</returns>
        public TimerReference AddTimerListener(ITimerListener listener)
        {
            Timer timer = new Timer(
                state =>
                {
                    try
                    {
                        listener.Tick();
                    }
                    catch (Exception e)
                    {
                        Logger.ErrorException("Failed while ticking TimerListener", e);
                    }
                },
                null,
                listener.IntervalTimeInMilliseconds,
                listener.IntervalTimeInMilliseconds);

            return new TimerReference(listener, timer);
        }
Example #3
0
 //remove listener from report list
 public void ClearListener(ITimerListener obs)
 {
     _listeners.Clear();
 }
Example #4
0
 //add a listener to be called when event happens
 public void AddListener(ITimerListener obs)
 {
     _listeners.Add(obs);
 }
Example #5
0
 internal static void Register(ITimerListener obj, int interval)
 {
     clients.Add(new Client {Object = obj, Interval = interval});
 }
Example #6
0
 public TimerReference AddListener(ITimerListener collapseTask)
 {
     return(Timer.AddTimerListener(collapseTask));
 }
Example #7
0
 public void RegisterTickListener(ITimerListener listener)
 {
     timer.Tick += listener.OnTimerTick;
 }
Example #8
0
 public TimerReference(ITimerListener listener, TimeSpan period)
 {
     _listener    = listener;
     _tokenSource = new CancellationTokenSource();
     _period      = period;
 }
Example #9
0
 public TimerReference AddListener(ITimerListener collapseTask)
 {
     return HystrixTimer.Instance.AddTimerListener(collapseTask);
 }
Example #10
0
 /// <summary>
 /// Stops the timer.
 /// </summary>
 public void Clear()
 {
     this.Listener = null;
     this.timer.Dispose();
 }
Example #11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TimerReference"/> class.
 /// </summary>
 /// <param name="listener">The listener to call repeatedly.</param>
 /// <param name="timer">The running background timer.</param>
 public TimerReference(ITimerListener listener, Timer timer)
 {
     this.timer = timer;
     this.Listener = listener;
 }
 public TimerReference AddListener(ITimerListener collapseTask)
 {
     return(HystrixTimer.Instance.AddTimerListener(collapseTask));
 }