public async Task async_before_handlers_are_executed()
        {
            int callCount = 0;
            HandlerMessageCallbackDelegate handler = delegate(object message, HandlerAsyncCallback callback) {
                callCount++;
                new Timer(new TimerCallback(callback), null, 1, System.Threading.Timeout.Infinite);
            };

            lifecycle
            .BeforeInitializing(handler)
            .BeforeSuspending(handler)
            .BeforeResuming(handler)
            .BeforeDestroying(handler);
            lifecycle.Initialize(delegate() {
                lifecycle.Suspend(delegate() {
                    lifecycle.Resume(delegate() {
                        lifecycle.Destroy();
                    });
                });
            });

            await Task.Delay(200);

            Assert.That(callCount, Is.EqualTo(4));
        }
 public IContext BeforeDestroying(HandlerMessageCallbackDelegate handler)
 {
     _lifecycle.BeforeDestroying(handler);
     return(this);
 }
Beispiel #3
0
 public void RemoveMessageHandler(object message, HandlerMessageCallbackDelegate handler)
 {
     RemoveMessageHandler(message, handler as Delegate);
 }
Beispiel #4
0
 public void AddMessageHandler(object message, HandlerMessageCallbackDelegate handler)
 {
     AddMessageHandler(message, handler as Delegate);
 }
		public LifecycleTransition AddBeforeHandler(HandlerMessageCallbackDelegate handler)
		{
			_dispatcher.AddMessageHandler (_name, handler);
			return this;
		}
		public ILifecycle BeforeResuming (HandlerMessageCallbackDelegate handler)
		{
			_resume.AddBeforeHandler (handler);
			return this;
		}
		public ILifecycle BeforeDestroying (HandlerMessageCallbackDelegate handler)
		{
			_destroy.AddBeforeHandler (handler);
			return this;
		}
		public ILifecycle BeforeInitializing (HandlerMessageCallbackDelegate handler)
		{
			ReportIfNotUnitialized();
			_initialize.AddBeforeHandler(handler);
			return this;
		}
		public ILifecycle BeforeSuspending (HandlerMessageCallbackDelegate handler)
		{
			_suspend.AddBeforeHandler (handler);
			return this;
		}
 public ILifecycle BeforeDestroying(HandlerMessageCallbackDelegate handler)
 {
     _destroy.AddBeforeHandler(handler);
     return(this);
 }
 public LifecycleTransition AddBeforeHandler(HandlerMessageCallbackDelegate handler)
 {
     _dispatcher.AddMessageHandler(_name, handler);
     return(this);
 }
 public ILifecycle BeforeResuming(HandlerMessageCallbackDelegate handler)
 {
     _resume.AddBeforeHandler(handler);
     return(this);
 }
 public ILifecycle BeforeSuspending(HandlerMessageCallbackDelegate handler)
 {
     _suspend.AddBeforeHandler(handler);
     return(this);
 }
 public ILifecycle BeforeInitializing(HandlerMessageCallbackDelegate handler)
 {
     ReportIfNotUnitialized();
     _initialize.AddBeforeHandler(handler);
     return(this);
 }
		public void RemoveMessageHandler(object message, HandlerMessageCallbackDelegate handler)
		{
			RemoveMessageHandler(message, handler as Delegate);
		}
		public void AddMessageHandler(object message, HandlerMessageCallbackDelegate handler)
		{
			AddMessageHandler(message, handler as Delegate);
		}