Beispiel #1
0
        public WorkerWrapper(IInvokeHandler invokeHandler,
                             NodeConfiguration nodeConfiguration,
                             TrySendNodeStartUpNotificationToManagerTimer nodeStartUpNotificationToManagerTimer,
                             Timer pingToManagerTimer,
                             TrySendJobDoneStatusToManagerTimer trySendJobDoneStatusToManagerTimer,
                             TrySendJobCanceledToManagerTimer trySendJobCanceledStatusToManagerTimer,
                             TrySendJobFaultedToManagerTimer trySendJobFaultedStatusToManagerTimer,
                             TrySendJobDetailToManagerTimer trySendJobDetailToManagerTimer, JobDetailSender jobDetailSender)
        {
            _handler           = invokeHandler;
            _nodeConfiguration = nodeConfiguration;
            WhoamI             = _nodeConfiguration.CreateWhoIAm(Environment.MachineName);

            _nodeStartUpNotificationToManagerTimer = nodeStartUpNotificationToManagerTimer;
            _nodeStartUpNotificationToManagerTimer.TrySendNodeStartUpNotificationSucceded +=
                NodeStartUpNotificationToManagerTimer_TrySendNodeStartUpNotificationSucceded;

            _pingToManagerTimer = pingToManagerTimer;
            _trySendJobDoneStatusToManagerTimer     = trySendJobDoneStatusToManagerTimer;
            _trySendJobCanceledStatusToManagerTimer = trySendJobCanceledStatusToManagerTimer;
            _trySendJobFaultedStatusToManagerTimer  = trySendJobFaultedStatusToManagerTimer;
            _trySendJobDetailToManagerTimer         = trySendJobDetailToManagerTimer;
            _jobDetailSender = jobDetailSender;

            IsWorking = false;

            _trySendJobDetailToManagerTimer.Start();
            _nodeStartUpNotificationToManagerTimer.Start();
        }
Beispiel #2
0
        public void Setup()
        {
            var parameters = new TestJobParams("Test Job",
                                               1);

            var ser = JsonConvert.SerializeObject(parameters);

            _jobDefinition = new JobQueueItemEntity
            {
                JobId      = Guid.NewGuid(),
                Name       = "jobDefinition Name",
                Serialized = ser,
                Type       = "NodeTest.JobHandlers.TestJobParams"
            };
            _nodeStartupNotification = new NodeStartupNotificationToManagerFake(_nodeConfigurationFake,
                                                                                new FakeHttpSender());
            _jobDetailSender = new JobDetailSender(_nodeConfigurationFake, new FakeHttpSender());
            _trySendJobDetailToManagerTimer =
                new TrySendJobDetailToManagerTimer(_nodeConfigurationFake,
                                                   _jobDetailSender);

            _pingToManagerFake = new PingToManagerFake();

            _sendJobDoneTimer = new SendJobDoneTimerFake(_nodeConfigurationFake,
                                                         _jobDetailSender,
                                                         new FakeHttpSender());

            _sendJobCanceledTimer = new SendJobCanceledTimerFake(_nodeConfigurationFake,
                                                                 _jobDetailSender,
                                                                 new FakeHttpSender());

            _sendJobFaultedTimer = new SendJobFaultedTimerFake(_nodeConfigurationFake,
                                                               _jobDetailSender,
                                                               new FakeHttpSender());
        }