public void UpdateRequestStatus(Guid requestId, Guid organizationalUnitRoot, AsyncQueueStatus currentStatus, AsyncQueueStatus newStatus)
        {
            AsyncQueueRequestStatusUpdate asyncQueueRequestStatusUpdate = new AsyncQueueRequestStatusUpdate(organizationalUnitRoot, requestId);

            asyncQueueRequestStatusUpdate.CurrentStatus = currentStatus;
            asyncQueueRequestStatusUpdate.Status        = newStatus;
            this.Save(this.dataProviderDirectory, asyncQueueRequestStatusUpdate);
        }
Beispiel #2
0
 public AsyncQueueStep(string stepName, short stepOrdinal, AsyncQueueStatus stepStatus) : this()
 {
     AsyncQueueStep.ValidateOrdinal(stepOrdinal);
     AsyncQueueStep.ValidateName(stepName);
     this.StepName    = stepName;
     this.StepOrdinal = stepOrdinal;
     this.StepStatus  = stepStatus;
 }
        public void UpdateStepStatus(string processInstanceName, Guid requestId, Guid organizationalUnitRoot, Guid stepId, AsyncQueueStatus currentStatus, AsyncQueueStatus newStatus, out AsyncQueueRequestStatusInfo requestStatusInfo, TimeSpan?retryWaitInterval = null, string cookie = null)
        {
            requestStatusInfo = null;
            AsyncQueueSession.ValidateProcessInstanceName(processInstanceName);
            AsyncQueueRequestStatusUpdate asyncQueueRequestStatusUpdate = new AsyncQueueRequestStatusUpdate(organizationalUnitRoot, requestId, stepId);

            asyncQueueRequestStatusUpdate.ProcessInstanceName = processInstanceName;
            asyncQueueRequestStatusUpdate.CurrentStatus       = currentStatus;
            asyncQueueRequestStatusUpdate.Status = newStatus;
            asyncQueueRequestStatusUpdate.Cookie = cookie;
            if (retryWaitInterval != null)
            {
                asyncQueueRequestStatusUpdate.RetryInterval = (int)retryWaitInterval.Value.TotalSeconds;
            }
            asyncQueueRequestStatusUpdate[AsyncQueueRequestStatusUpdateSchema.RequestCompleteProperty]      = false;
            asyncQueueRequestStatusUpdate[AsyncQueueRequestStatusUpdateSchema.RequestStatusProperty]        = AsyncQueueStatus.None;
            asyncQueueRequestStatusUpdate[AsyncQueueRequestStatusUpdateSchema.RequestStartDatetimeProperty] = null;
            asyncQueueRequestStatusUpdate[AsyncQueueRequestStatusUpdateSchema.RequestEndDatetimeProperty]   = null;
            this.Save(this.dataProviderDirectory, asyncQueueRequestStatusUpdate);
            requestStatusInfo               = new AsyncQueueRequestStatusInfo();
            requestStatusInfo.Status        = asyncQueueRequestStatusUpdate.RequestStatus;
            requestStatusInfo.StartDatetime = asyncQueueRequestStatusUpdate.RequestStartDatetime;
            requestStatusInfo.EndDatetime   = asyncQueueRequestStatusUpdate.RequestEndDatetime;
        }