Example #1
0
        public static void WorkflowStepsAdd(Server.Application application, Int32 stackDepth, Int64 workQueueItemId, List <WorkflowStep> workflowSteps, Workflows.Enumerations.WorkflowStepStatus status, String stepDescription)
        {
            if (workflowSteps != null)
            {
                String stepName =

                    Server.CommonFunctions.PascalString((new System.Diagnostics.StackFrame(stackDepth)).GetMethod().DeclaringType.Name)

                    + " . " +

                    Server.CommonFunctions.PascalString((new System.Diagnostics.StackFrame(stackDepth)).GetMethod().Name);

                Server.Workflows.WorkflowStep workflowStep = new Mercury.Server.Workflows.WorkflowStep(application, status, stepName, stepDescription);

                workflowSteps.Add(workflowStep);

                // REMOVED FROM SAVING EACH TIME, SAVE WILL NO OCCUR BEFORE USER INTERACTION

                // AND WHEN SUSPENDING OR CLOSING THE WORK QUEUE ITEM

                //if (workQueueItemId != 0) {

                //    application.WorkQueueItemWorkflowStepsSave (workQueueItemId, workflowSteps);

                //}
            }

            return;
        }
Example #2
0
        public static void RaiseActivityException(Server.Application application, Int32 stackDepth, Int64 workQueueItemId, List <WorkflowStep> workflowSteps, String exceptionMessage)
        {
            String caller = (new System.Diagnostics.StackFrame(stackDepth)).GetMethod().Name;

            WorkflowStepsAdd(application, stackDepth + 1, workQueueItemId, workflowSteps, exceptionMessage);

            application.WorkQueueItemWorkflowStepsSave(workQueueItemId, workflowSteps);

            throw new ApplicationException(caller + ": " + exceptionMessage);
        }
Example #3
0
        public WorkflowStep(Server.Application application, String stepName, String stepDescription)
        {
            Name = stepName;

            Description = stepDescription;

            if (application != null)
            {
                CreateAccountInfo = new Data.AuthorityAccountStamp(application.Session);

                userDisplayName = application.Session.UserDisplayName;
            }

            return;
        }
Example #4
0
        protected void Application_OnUpdate(Object sender, EventArgs eventArgs)
        {
            if ((sender != null) && (sender is Server.Application))
            {
                Server.Application application = (Server.Application)sender;

                String sessionCacheKey = "Mercury.Server.Session." + application.Session.Token;

                String applicationCacheKey = "Mercury.Server.Application." + application.Session.Token;

                CacheObject(sessionCacheKey, application.Session, new TimeSpan(0, 20, 0));

                CacheObject(applicationCacheKey, application, new TimeSpan(0, 20, 0));

                application.Session.SerializeToDatabase(application);
            }

            return;
        }
Example #5
0
        public static void WorkflowStepsAdd(Server.Application application, Int32 stackDepth, Int64 workQueueItemId, List <WorkflowStep> workflowSteps, String stepDescription)
        {
            WorkflowStepsAdd(application, stackDepth + 1, workQueueItemId, workflowSteps, Enumerations.WorkflowStepStatus.Informational, stepDescription);

            return;
        }