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; } }
public override ProcessStepsFactory Config(ProcessRequestModelProxy model, string command) { escalationRule = new StepRuleInstallationWorker(model.EntityType, _repositoryManager).EscationRules(Command.ResolveCommandExpressions(@"([1-9][0-9]{0,2});", command, "enableEscalation", "escalationPeriod")); _repositoryManager.Processes.SetupProcessStep(model.ProcessInstanceId, out preceedingStepId, out preceedingStepInstanceId); if (preceedingStepId.Equals("") || preceedingStepInstanceId.Equals("")) { throw new FailedBatchTransactionException("Failed to initialise global variables for the preceeding step"); } _repositoryManager.Processes.CreateInstanceSnapShot <ProcessRequestModelProxy>(model, currentStepInstanceId, preceedingStepId, preceedingStepInstanceId, model.PersonId, model.EntityId, model.EntityType, model.param_001, model.param_002, model.param_003, model.param_004, model.param_005, model.param_006, model.param_007, model.param_008, model.param_009, model.param_0010); payload = model; return(this); }
/// <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 async Task <ProcessRequestModelProxy> QueueRequestsPool(ProcessRequestModelProxy payload, IStandardNormsRepository NIHandler) { return(await processManager[payload.InterfaceId].Run(payload, NIHandler)); //starts the process }
public override void ProcessRequestedTask(ValidationCallbacksContainer validationCallbackContainer, ProcessRequestModelProxy payload, IStandardNormsRepository norm, out string outcome) { throw new NotImplementedException(); }
public abstract void ProcessRequestedTask(ValidationCallbacksContainer validationCallbackContainer, ProcessRequestModelProxy payload, IStandardNormsRepository norm, out string outcome);
public async Task <ProcessRequestModelProxy> ProcessRequestStep(string requestToken, ProcessRequestModelProxy processRequestModel, IRequestPoolWorker processQueueWorker) { string processInstanceId = _repositoryManager.Processes.CheckProcessToken(requestToken); if (string.IsNullOrEmpty(processInstanceId)) { throw new ArgumentNullException(nameof(requestToken)); } processRequestModel.SecurityToken = processInstanceId; return(await processQueueWorker.QueueRequestsPool(processRequestModel, this)); }
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; }
/// <summary> /// This method does the following /// > Get the current step which the item is residing.... /// > Prepares the preceeding step - <c>initialise preceedingStepId</c> with the thrown Id and returns the ProcessStepFactory /// </summary> /// <param name="model"></param> /// <param name="command"></param> /// <returns></returns> public abstract ProcessStepsFactory Config(ProcessRequestModelProxy model, string command);