Exemplo n.º 1
0
 public Scheduler(IPluginFinder plugins, IHeart heart, IWorker worker, IErrorNotifier errorHandler)
 {
     _actions      = new List <ScheduledAction>(InstantiateActions(plugins));
     _heart        = heart;
     _worker       = worker;
     _errorHandler = errorHandler;
 }
Exemplo n.º 2
0
        public override void SetUp()
        {
            base.SetUp();

            ITypeFinder types = mocks.Stub <ITypeFinder>();

            Expect.Call(types.GetAssemblies()).Return(new Assembly[] { GetType().Assembly }).Repeat.Any();
            mocks.Replay(types);

            IHeart heart = mocks.Stub <IHeart>();

            heart.Beat += null;
            raiser      = LastCall.IgnoreArguments().GetEventRaiser();
            mocks.Replay(heart);

            errorHandler = mocks.DynamicMock <IErrorHandler>();
            mocks.Replay(errorHandler);

            var ctx = mocks.DynamicMock <IWebContext>();

            mocks.Replay(ctx);

            IPluginFinder plugins = new PluginFinder(types, null, new EngineSection());

            AsyncWorker worker = new AsyncWorker();

            worker.QueueUserWorkItem = delegate(WaitCallback function)
            {
                function(null);
                return(true);
            };

            scheduler = new Scheduler(null, plugins, heart, worker, ctx, errorHandler);
            scheduler.Start();
        }
Exemplo n.º 3
0
 public Scheduler(IPluginFinder plugins, IHeart heart, IWorker worker, IErrorNotifier errorHandler)
 {
     _actions = new List<ScheduledAction>(InstantiateActions(plugins));
     _heart = heart;
     _worker = worker;
     _errorHandler = errorHandler;
 }
Exemplo n.º 4
0
        public override void SetUp()
        {
            base.SetUp();

            config  = TestSupport.SetupEngineSection();
            actions = new ScheduledAction[] { new OnceAction(), new RepeatAction() };

            heart       = mocks.Stub <IHeart>();
            heart.Beat += null;
            raiser      = LastCall.IgnoreArguments().GetEventRaiser();
            mocks.Replay(heart);

            errorHandler = mocks.DynamicMock <IErrorNotifier>();
            mocks.Replay(errorHandler);

            ctx = mocks.DynamicMock <IWebContext>();
            mocks.Replay(ctx);

            engine = new Fakes.FakeEngine();
            engine.Container.AddComponentInstance("", typeof(IErrorNotifier), MockRepository.GenerateStub <IErrorNotifier>());

            worker = new AsyncWorker();
            worker.QueueUserWorkItem = delegate(WaitCallback function)
            {
                function(null);
                return(true);
            };

            scheduler = new Scheduler(engine, heart, worker, ctx, errorHandler, actions, config);
            scheduler.Start();
        }
Exemplo n.º 5
0
 public Scheduler(IEngine engine, IPluginFinder plugins, IHeart heart, IWorker worker, IWebContext context, IErrorNotifier errorHandler)
 {
     this.engine = engine;
     actions = new List<ScheduledAction>(InstantiateActions(plugins));
     this.heart = heart;
     this.worker = worker;
     this.context = context;
     this.errorHandler = errorHandler;
 }
Exemplo n.º 6
0
 public Scheduler(IEngine engine, IPluginFinder plugins, IHeart heart, IWorker worker, IWebContext context, IErrorHandler errorHandler)
 {
     this.engine       = engine;
     actions           = new List <ScheduledAction>(InstantiateActions(plugins));
     this.heart        = heart;
     this.worker       = worker;
     this.context      = context;
     this.errorHandler = errorHandler;
 }
Exemplo n.º 7
0
		public Scheduler(IEngine engine, IHeart heart, IWorker worker, IWebContext context, IErrorNotifier errorHandler, ScheduledAction[] registeredActions, Configuration.EngineSection config)
        {
			this.engine = engine;
			this.heart = heart;
			this.worker = worker;
			this.context = context;
			this.errorHandler = errorHandler;

			this.enabled = config.Scheduler.Enabled;
			if (!string.IsNullOrEmpty(config.Scheduler.ExecuteOnMachineNamed))
				if (config.Scheduler.ExecuteOnMachineNamed != Environment.MachineName)
					this.enabled = false;

			if (enabled)
			{
				actions = new List<ScheduledAction>(InstantiateActions(registeredActions, config.Scheduler));
			}
		}
Exemplo n.º 8
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello Mr. Rockfeller ");
            Client rockfeller = new Client();
            string type       = null;

            while (type == null)
            {
                Console.WriteLine("There are (h)uman, (p)lastic, and (t)ube hearts in our clinic. \nWhat kind of heart do you want to install?");
                type = Console.ReadLine();

                IHeart heart = CreateHeart(ref type);
                if (type == null)
                {
                    continue;
                }
                rockfeller.InstalHeart(heart);
            }

            Console.ReadLine();
        }
Exemplo n.º 9
0
        public override void SetUp()
        {
            base.SetUp();

            ITypeFinder types = mocks.Stub <ITypeFinder>();

            Expect.Call(types.GetAssemblies()).Return(new Assembly[] { GetType().Assembly }).Repeat.Any();
            mocks.Replay(types);

            IHeart heart = mocks.Stub <IHeart>();

            heart.Beat += null;
            raiser      = LastCall.IgnoreArguments().GetEventRaiser();
            mocks.Replay(heart);

            errorHandler = mocks.DynamicMock <IErrorNotifier>();
            mocks.Replay(errorHandler);

            var ctx = mocks.DynamicMock <IWebContext>();

            mocks.Replay(ctx);

            var engine = new Fakes.FakeEngine();

            engine.Container.AddComponentInstance("", typeof(IErrorNotifier), MockRepository.GenerateStub <IErrorNotifier>());

            IPluginFinder plugins = new PluginFinder(types, null, TestSupport.SetupEngineSection());

            AsyncWorker worker = new AsyncWorker();

            worker.QueueUserWorkItem = delegate(WaitCallback function)
            {
                function(null);
                return(true);
            };

            scheduler = new Scheduler(engine, plugins, heart, worker, ctx, errorHandler);
            scheduler.Start();
        }
Exemplo n.º 10
0
        public Scheduler(IEngine engine, IHeart heart, IWorker worker, IWebContext context, IErrorNotifier errorHandler, ScheduledAction[] registeredActions, Configuration.EngineSection config)
        {
            this.engine       = engine;
            this.heart        = heart;
            this.worker       = worker;
            this.context      = context;
            this.errorHandler = errorHandler;

            this.enabled                  = config.Scheduler.Enabled;
            this.asyncActions             = config.Scheduler.AsyncActions;
            this.runWhileDebuggerAttached = config.Scheduler.RunWhileDebuggerAttached;
            if (!string.IsNullOrEmpty(config.Scheduler.ExecuteOnMachineNamed))
            {
                if (config.Scheduler.ExecuteOnMachineNamed != Environment.MachineName)
                {
                    this.enabled = false;
                }
            }

            if (enabled)
            {
                actions = new List <ScheduledAction>(InstantiateActions(registeredActions, config.Scheduler));
            }
        }
Exemplo n.º 11
0
 public void InstalHeart(IHeart heart)
 {
     _heart = heart;
     heart.Connect();
 }