public SelectionInfo GetSelectedItem() { ReleaseItem releaseItem = (ReleaseItem)this.listView.SelectedItem; if (releaseItem == null) { return(new SelectionInfo(SelectionInfoType.None)); } return(new SelectionInfo(SelectionInfoType.Release, releaseItem.Release.Id)); }
protected override void Execute(NativeActivityContext context) { // RESET APPLICATION REFERENCE ON WORK QUEUE ITEM WorkQueueItem.Get(context).Application = WorkflowManager.Get(context).Application; // ENSURE THAT THE ITEM IS ASSIGNED TO USER WorkQueueItem.Get(context).SelfAssign("Workflow Suspend Work Queue Item", false); // ATTEMPT TO SUSPEND THE ITEM Success.Set(context, WorkQueueItem.Get(context).Suspend( WorkflowLastStep.Get(context), WorkflowNextStep.Get(context), ConstraintDays.Get(context), MilestoneDays.Get(context), ReleaseItem.Get(context) )); if (!Success.Get(context)) // THROW EXCEPTION IF UNABLE TO SUSPEND { CommonFunctions.RaiseActivityException(WorkflowManager.Get(context).Application, 1, WorkQueueItem.Get(context).Id, WorkflowSteps.Get(context), WorkflowManager.Get(context).Application.LastException.Message ); } // RECORD WORKFLOW STEPS Workflows.Activities.CommonFunctions.WorkflowStepsAdd( WorkflowManager.Get(context).Application, 1, WorkQueueItem.Get(context).Id, WorkflowSteps.Get(context), "Suspend for Next Step: " + WorkflowNextStep.Get(context) + " | Constraint Days: " + ConstraintDays.Get(context).ToString() + " | Milestone Days: " + MilestoneDays.Get(context).ToString() ); // SAVE WORKFLOW STEPS WorkflowManager.Get(context).Application.WorkQueueItemWorkflowStepsSave(WorkQueueItem.Get(context).Id, WorkflowSteps.Get(context)); // EVALUATE IF WE WANT TO SUSPEND THE WORKFLOW TOO, OR JUST THE WORKFLOW ITEM AND LET THE WORKFLOW CONTINUE if (SuspendWorkflow.Get(context)) { // MARK WORKFLOW AS SUSPEND USING WORKFLOW MANAGER WorkflowManager.Get(context).WorkflowStatus = WorkflowStatus.Suspended; // CREATE A BOOKMARK SET TO THE WORKFLOW INSTANCE ID TO MAKE IT UNIQUE context.CreateBookmark(context.WorkflowInstanceId.ToString(), new BookmarkCallback(this.ResumeWorkflow)); } return; }