示例#1
0
 public WINorm(ILogger loggerHandler, IRepositoryStoreManager repositoryManagerHandler, IStandardNormsRepository normsStandardsHandler, IRequestPoolWorker processQueueWorker, ITaskActionWorker taskActionsHandler, IValidationCallbacksContainer validationCallbacksContainer)
 {
     this._loggerHandler                       = loggerHandler.ConfigureAlert;
     this._repositoryManagerHandler            = repositoryManagerHandler;
     this._normsStandardsHandler               = normsStandardsHandler;
     this._processQueueWorker                  = processQueueWorker;
     this._actionTasksHandler                  = taskActionsHandler;
     this._validationCallbacksContainerHandler = validationCallbacksContainer;
 }
示例#2
0
        /// <summary>
        ///     This calls a stored procedure that schedules the school to be migrated overnight.
        ///     This should return via a service call to the client notifying them about the success of their batch.
        /// </summary>
        /// <param name="validationCallbackContainer"></param>
        /// <param name="payload"></param>
        /// <param name="payload.Data_002">EntityId</param>
        /// <param name="payload.Data_003">StagingTable</param>
        /// <param name="norm"></param>
        /// <param name="outcome"></param>
        public override void ProcessRequestedTask(ValidationCallbacksContainer validationCallbackContainer, ProcessRequestModelProxy payload, IStandardNormsRepository norm, out string outcome)
        {
            string custordian = norm.Custordian;
            string extractId  = payload.param_001;
            string schema     = payload.param_002;
            string dimension  = payload.param_003;
            string key_001    = Guid.NewGuid().ToString();

            _repositoryManager.ExtractScheduler.ScheduleEntityMigration <School>(extractId, payload.SurveyId, payload.ConsortiumGroupId, payload.EntityType, payload.EntityId, custordian, schema, dimension, key_001, null, null, null, null, null, null, null, null, null, null, out outcome);
        }
 public override ProcessStepsFactory BeginAction(IStandardNormsRepository niHandler)
 {
     return(action.Invoke);
 }
示例#4
0
 public async Task <ProcessRequestModelProxy> QueueRequestsPool(ProcessRequestModelProxy payload, IStandardNormsRepository NIHandler)
 {
     return(await processManager[payload.InterfaceId].Run(payload, NIHandler)); //starts the process
 }
示例#5
0
 public override void ProcessRequestedTask(ValidationCallbacksContainer validationCallbackContainer, ProcessRequestModelProxy payload, IStandardNormsRepository norm, out string outcome)
 {
     throw new NotImplementedException();
 }
示例#6
0
 public abstract void ProcessRequestedTask(ValidationCallbacksContainer validationCallbackContainer, ProcessRequestModelProxy payload, IStandardNormsRepository norm, out string outcome);
示例#7
0
        public async Task <ProcessRequestModelProxy> Run(ProcessRequestModelProxy ticket, IStandardNormsRepository standardNormsRepository)
        {
            try
            {
                var stepProcess = await Config(ticket, "enableEscalation:0;escalationPeriod:0;").Start
                                  .PreAction()
                                  .BeginAction(standardNormsRepository)
                                  .PostAction()
                                  .Stop;

                return(stepProcess);
            }
            catch
            {
                throw;
            }
        }
示例#8
0
 public override ProcessStepsFactory BeginAction(IStandardNormsRepository normsHandler)
 {
     processSteps[stepName].ProcessRequestedTask(validationCallbackContainer, payload, normsHandler, out outcome);
     return(this);
 }
示例#9
0
        public override void ProcessRequestedTask(ValidationCallbacksContainer validationCallbackContainer, ProcessRequestModelProxy payload, IStandardNormsRepository norm, out string outcome)
        {
            if (string.IsNullOrEmpty(payload.param_001) || string.IsNullOrWhiteSpace(payload.param_001))
            {
                throw new ArgumentNullException("param_001");
            }
            if (string.IsNullOrEmpty(payload.param_002) || string.IsNullOrWhiteSpace(payload.param_002))
            {
                throw new ArgumentNullException("param_002");
            }

            preliminaryVetting = new PreliminaryValidation();
            preliminaryVetting.RunPreliminaryCheck(validationCallbackContainer, payload.param_001, payload.param_002);

            outcome = preliminaryVetting.outcome;
        }
示例#10
0
 /// <summary>
 ///     Execute the initial worker class for the particular step.
 /// </summary>
 /// <returns></returns>
 public abstract ProcessStepsFactory BeginAction(IStandardNormsRepository niHandler);