コード例 #1
0
        private void stateInitializationCodeActivity_ExecuteCode(object sender, EventArgs e)
        {
            Log.LogVerbose("RefreshWorkflow", "Start refresh workflow for '{0}' function", RefreshFunction.Method.Name);
            DelayActivity delayActivity = (DelayActivity)this.GetActivityByName("delayActivity");

            delayActivity.TimeoutDuration = TimeSpan.FromSeconds(Delay);
        }
コード例 #2
0
ファイル: SimpleWorkflow.cs プロジェクト: stanasse/olive
        public WorkFlowIfElse()
        {
            IfElseActivity       ifelse_activity   = new IfElseActivity();
            IfElseBranchActivity branch1           = new IfElseBranchActivity();
            CodeCondition        ifelse_condition1 = new CodeCondition();
            DelayActivity        delay_activity    = new DelayActivity();
            CodeActivity         code_branch1      = new CodeActivity();
            CodeActivity         code_branch2      = new CodeActivity();

            branch2 = new IfElseBranchActivity();

            delay_activity.Name                       = "DelayActivity";
            delay_activity.TimeoutDuration            = TimeSpan.Parse("00:00:05");
            delay_activity.InitializeTimeoutDuration += new EventHandler(DelayActivity_InitializeTimeoutDuration);

            code_branch1.Name         = "Code1";
            code_branch2.Name         = "Code2";
            code_branch1.ExecuteCode += new EventHandler(ExecuteCode1);
            code_branch2.ExecuteCode += new EventHandler(ExecuteCode2);

            branch1.Activities.Add(code_branch1);
            branch2.Activities.Add(code_branch2);

            ifelse_condition1.Condition += new EventHandler <ConditionalEventArgs> (IfElseCondition1);
            branch1.Condition            = ifelse_condition1;

            ifelse_activity.Activities.Add(branch1);
            ifelse_activity.Activities.Add(branch2);

            Activities.Add(delay_activity);
            Activities.Add(ifelse_activity);
        }
コード例 #3
0
        private void stateInitializationCodeActivity_ExecuteCode(object sender, EventArgs e)
        {
            DelayActivity delayActivity = (DelayActivity)this.GetActivityByName("delayActivity");

            delayActivity.TimeoutDuration = TimeSpan.FromSeconds(Delay);
            LoggingService.LogVerbose("FeedAggregator", string.Format("Start RefressWorkfwow"));
        }
コード例 #4
0
 private void InitializeComponent()
 {
     this.CanModifyActivities = true;
     this.code1  = new System.Workflow.Activities.CodeActivity();
     this.delay1 = new System.Workflow.Activities.DelayActivity();
     this.code2  = new System.Workflow.Activities.CodeActivity();
     //
     // code1
     //
     this.code1.Name         = "code1";
     this.code1.ExecuteCode += new System.EventHandler(this.OnCode1ExecuteCode);
     //
     // delay1
     //
     this.delay1.Name            = "delay1";
     this.delay1.TimeoutDuration = System.TimeSpan.Parse("00:00:05");
     //
     // code2
     //
     this.code2.Name         = "code2";
     this.code2.ExecuteCode += new System.EventHandler(this.OnCode2ExecuteCode);
     //
     // DelayWorkflow
     //
     this.Activities.Add(this.code1);
     this.Activities.Add(this.delay1);
     this.Activities.Add(this.code2);
     this.Name = "PersistenceServicesWorkflow";
     this.CanModifyActivities = false;
 }
コード例 #5
0
        private void ACKDelay_InitializeTimeoutDuration(object sender, EventArgs e)
        {
            DelayActivity delay = sender as DelayActivity;

            if (delay != null)
            {
                delay.TimeoutDuration = new TimeSpan(0, 10, 0);
            }
        }
コード例 #6
0
        public void InitTwice()
        {
            DelayActivity              da         = new DelayActivity();
            CorrelationToken           ct         = new CorrelationToken();
            List <CorrelationProperty> properties = new List <CorrelationProperty> ();

            ct.Initialize(da, properties);
            ct.Initialize(da, properties);
        }
コード例 #7
0
        public void Initialize()
        {
            DelayActivity              da         = new DelayActivity();
            CorrelationToken           ct         = new CorrelationToken();
            List <CorrelationProperty> properties = new List <CorrelationProperty> ();

            ct.Initialize(da, properties);
            Assert.AreEqual(true, ct.Initialized, "C3#1");
        }
コード例 #8
0
ファイル: Mainform.cs プロジェクト: Br3nda/sfdocsamples
        private void AddOrderOnHoldState()
        {
            // Get a reference to the WorkflowInstance for the selected workflow
            WorkflowInstance instance =
                this.runtime.GetWorkflow(this.GetSelectedWorkflowInstanceID());

            // Get a reference to the root activity for the workflow
            Activity root = instance.GetWorkflowDefinition();

            // Create a new instance of the WorkflowChanges class for managing
            // the in-memory changes to the workflow
            WorkflowChanges changes = new WorkflowChanges(root);

            // Create a new State activity to the workflow
            StateActivity orderOnHoldState = new StateActivity();

            orderOnHoldState.Name = "OrderOnHoldState";

            // Add a new EventDriven activity to the State
            EventDrivenActivity eventDrivenDelay = new EventDrivenActivity();

            eventDrivenDelay.Name = "DelayOrderEvent";
            orderOnHoldState.Activities.Add(eventDrivenDelay);

            // Add a new Delay, initialized to 5 seconds
            DelayActivity delayOrder = new DelayActivity();

            delayOrder.Name            = "delayOrder";
            delayOrder.TimeoutDuration = new TimeSpan(0, 0, 5);
            eventDrivenDelay.Activities.Add(delayOrder);

            // Add a new SetState to the OrderOpenState
            SetStateActivity setStateOrderOpen = new SetStateActivity();

            setStateOrderOpen.TargetStateName = "OrderOpenState";
            eventDrivenDelay.Activities.Add(setStateOrderOpen);

            // Add the OnHoldState to the workflow
            changes.TransientWorkflow.Activities.Add(orderOnHoldState);

            // Apply the changes to the workflow instance
            try
            {
                instance.ApplyWorkflowChanges(changes);
            }
            catch (WorkflowValidationFailedException)
            {
                // New state has already been added
                MessageBox.Show("On Hold state has already been added to this workflow.");
            }
        }
コード例 #9
0
ファイル: DelayActivityTest.cs プロジェクト: np-albus/WFLite
        public void Test___Method_Stop___Status_Created()
        {
            var testee = new DelayActivity()
            {
                Duration = new AnyVariable <int>()
                {
                    Value = 1000
                }
            };

            testee.Stop();

            Assert.AreEqual(ActivityStatus.Stopped, testee.Status);
        }
コード例 #10
0
ファイル: DelayActivityTest.cs プロジェクト: np-albus/WFLite
        public async Task Test___Method_Start___Status_Created()
        {
            var testee = new DelayActivity()
            {
                Duration = new AnyVariable <int>()
                {
                    Value = 1000
                }
            };

            await testee.Start();

            Assert.AreEqual(ActivityStatus.Completed, testee.Status);
        }
コード例 #11
0
ファイル: DelayActivityTest.cs プロジェクト: np-albus/WFLite
        public async Task Test___Method_Stop___Status_Executing()
        {
            var testee = new DelayActivity()
            {
                Duration = new AnyVariable <int>()
                {
                    Value = 10000
                }
            };

            var task = testee.Start();

            Assert.AreEqual(ActivityStatus.Executing, testee.Status);

            Thread.Sleep(1000);

            testee.Stop();

            await task;

            Assert.AreEqual(ActivityStatus.Stopped, testee.Status);
        }
コード例 #12
0
        public SimpleWorkFlowDelay()
        {
            CanModifyActivities = true;
            CodeCondition codecondition1 = new CodeCondition();

            BackUpFile         = new CodeActivity();
            WhileFilesToBackup = new WhileActivity();
            DelaySystemReady   = new DelayActivity();

            BackUpFile.ExecuteCode += new EventHandler(BackUpFile_ExecuteCode);

            WhileFilesToBackup.Activities.Add(BackUpFile);
            codecondition1.Condition += new EventHandler <ConditionalEventArgs>(MoreFiles);

            WhileFilesToBackup.Condition = codecondition1;

            DelaySystemReady.TimeoutDuration = TimeSpan.Parse("00:00:02");

            Activities.Add(DelaySystemReady);
            Activities.Add(WhileFilesToBackup);
            Name = "SimpleWorkFlowDelay";
            CanModifyActivities = false;
        }
コード例 #13
0
    // Start is called before the first frame update
    void Start()
    {
        GlobalStorage.LoadSpriteDictionary();

        this.SelectedCategory = GlobalStorage.CurrentCategory;

        if (btnBack != null && btnBack.GetComponent <CommonButton>() != null)
        {
            btnBack.GetComponent <CommonButton>().SetCallback(() => { this.BtnBackClicked(); });
        }

        if (categoryTitle != null)
        {
            categoryTitle.GetComponent <SpriteRenderer>().sprite =
                Resources.Load <Sprite>(string.Format(@"images/category-title-{0}", this.SelectedCategory));
        }

        // Ensure the first Stage
        var stage101 = GlobalStorage.LoadRecord(101);

        if (stage101 == null)
        {
            stage101 = StageRecord.Create(101);
            GlobalStorage.SaveRecord(stage101);
        }


        // Play animation to show title and pre
        activityManager = this.gameObject.GetComponent <ActivityManager>();
        if (activityManager == null)
        {
            return;
        }
        activityManager.Initialize(false);

        var moveTo = categoryTitle.AddComponent <MoveTo>();

        moveTo.Initialize(new Vector2(0, 5.5f), 0.6f);

        var delay = new DelayActivity(0.5f);

        activityManager.PushActivity(delay);

        var bundle = new BundleActivity();

        for (int i = 0; i < 9; i++)
        {
            GameObject previewAnchor = this.previewAnchors[i];
            GameObject preview       = GameObject.Instantiate(StagePreviewPrefab);

            // preview.transform.parent = previewAnchor.transform;
            preview.transform.localPosition = previewAnchor.transform.position;
            preview.transform.localScale    = new Vector3(1.5f, 1.5f, 1);
            var renderer = preview.GetComponent <StagePreviewRenderer>();

            int stageId = this.SelectedCategory * 100 + i + 1;
            renderer.Initialize(stageId);
            renderer.SetCallback((stage) => { this.EnterStage(stage); });

            var fadeIn = new FadeInActivity(preview, 0.6f);
            fadeIn.InitObject();
            bundle.AddActivity(fadeIn);
        }

        activityManager.PushActivity(bundle);
    }
コード例 #14
0
        private void InitializeComponent()
        {
            Console.WriteLine("1");

            CanModifyActivities = true;
            CodeCondition codecondition1 = new CodeCondition();

            CodeCloseMailProgram2           = new CodeActivity();
            CodeCloseMailProgram3           = new CodeActivity();
            DelayWaitForSentMail2           = new DelayActivity();
            DelayWaitForSentMail3           = new DelayActivity();
            PrepareMail2                    = new CodeActivity();
            PrepareMail3                    = new CodeActivity();
            CodeCloseMailProgram1           = new CodeActivity();
            DelayWaitForSentMail1           = new DelayActivity();
            CodePrepareMail1                = new CodeActivity();
            SeqSendMail2                    = new SequenceActivity();
            SeqSendMail1                    = new SequenceActivity();
            SeqSendMail3                    = new SequenceActivity();
            TerminateFinishNoNeedToReadMail = new TerminateActivity();
            Parallel = new ParallelActivity();
            IfElseBranchActivityNoNeed         = new IfElseBranchActivity();
            IfElseBranchActivityNeedToSendMail = new IfElseBranchActivity();
            NeedToSendMail = new IfElseActivity();

            PrepareMail3.Name         = "PrepareMail3";
            PrepareMail3.ExecuteCode += new EventHandler(PrepareMail3_ExecuteCode);

            CodeCloseMailProgram3.Name         = "CodeCloseMailProgram3";
            CodeCloseMailProgram3.ExecuteCode += new EventHandler(CodeCloseMailProgram3_ExecuteCode);

            DelayWaitForSentMail3.Name            = "DelayWaitForSentMail3";
            DelayWaitForSentMail3.TimeoutDuration = TimeSpan.Parse("00:00:03");

            CodeCloseMailProgram2.Name         = "CodeCloseMailProgram2";
            CodeCloseMailProgram2.ExecuteCode += new EventHandler(CodeCloseMailProgram2_ExecuteCode);

            DelayWaitForSentMail2.Name            = "DelayWaitForSentMail2";
            DelayWaitForSentMail2.TimeoutDuration = TimeSpan.Parse("00:00:02");

            PrepareMail2.Name         = "PrepareMail2";
            PrepareMail2.ExecuteCode += new EventHandler(PrepareMail2_ExecuteCode);

            CodeCloseMailProgram1.Name         = "CodeCloseMailProgram1";
            CodeCloseMailProgram1.ExecuteCode += new EventHandler(CodeCloseMailProgram_ExecuteCode);

            DelayWaitForSentMail1.Name            = "DelayWaitForSentMail1";
            DelayWaitForSentMail1.TimeoutDuration = TimeSpan.Parse("00:00:05");
            CodePrepareMail1.Name         = "CodePrepareMail1";
            CodePrepareMail1.ExecuteCode += new EventHandler(CodeActivity1_ExecuteCode);

            SeqSendMail2.Activities.Add(PrepareMail2);
            SeqSendMail2.Activities.Add(DelayWaitForSentMail2);
            SeqSendMail2.Activities.Add(CodeCloseMailProgram2);
            SeqSendMail2.Name = "SeqSendMail2";

            SeqSendMail3.Activities.Add(PrepareMail3);
            SeqSendMail3.Activities.Add(DelayWaitForSentMail3);
            SeqSendMail3.Activities.Add(CodeCloseMailProgram3);
            SeqSendMail3.Name = "SeqSendMail3";

            SeqSendMail1.Activities.Add(CodePrepareMail1);
            SeqSendMail1.Activities.Add(DelayWaitForSentMail1);
            SeqSendMail1.Activities.Add(CodeCloseMailProgram1);
            SeqSendMail1.Name = "SeqSendMail1";

            TerminateFinishNoNeedToReadMail.Name = "TerminateFinishNoNeedToReadMail";

            Parallel.Activities.Add(SeqSendMail1);
            Parallel.Activities.Add(SeqSendMail2);
            Parallel.Activities.Add(SeqSendMail3);
            Parallel.Name = "Parallel";

            IfElseBranchActivityNoNeed.Activities.Add(TerminateFinishNoNeedToReadMail);
            IfElseBranchActivityNoNeed.Name = "IfElseBranchActivityNoNeed";

            IfElseBranchActivityNeedToSendMail.Activities.Add(Parallel);
            codecondition1.Condition += new EventHandler <ConditionalEventArgs>(IfElseCondition);
            IfElseBranchActivityNeedToSendMail.Condition = codecondition1;
            IfElseBranchActivityNeedToSendMail.Name      = "IfElseBranchActivityNeedToSendMail";

            NeedToSendMail.Activities.Add(IfElseBranchActivityNeedToSendMail);
            NeedToSendMail.Activities.Add(IfElseBranchActivityNoNeed);
            NeedToSendMail.Name = "NeedToSendMail";

            Activities.Add(NeedToSendMail);
            Name = "IfElseParalellWorkFlow";
            CanModifyActivities = false;
        }
コード例 #15
0
        private void InitializeComponent()
        {
            CanModifyActivities = true;
            CodeCondition codecondition1 = new CodeCondition();

            ProofReadSetStateQualityNotOK = new SetStateActivity();
            ProofReadSetStateQualityOK    = new SetStateActivity();
            ProofReadElseBranchActivity2  = new IfElseBranchActivity();
            ProofReadElseBranch           = new IfElseBranchActivity();
            PrintFinalizationCode         = new CodeActivity();
            PrintSetState        = new SetStateActivity();
            PrintCode            = new CodeActivity();
            PrintDelay           = new DelayActivity();
            ProofReadIfElse      = new IfElseActivity();
            ProofReadDelay       = new DelayActivity();
            CreateInitCode       = new CodeActivity();
            DocumentSetState     = new SetStateActivity();
            CodeDocument         = new CodeActivity();
            CreateDelay          = new DelayActivity();
            PrintFinalization    = new StateFinalizationActivity();
            PrintEventDriven     = new EventDrivenActivity();
            ProofReadEventDriven = new EventDrivenActivity();
            CreateInitialization = new StateInitializationActivity();
            CreateDriven         = new EventDrivenActivity();
            End       = new StateActivity();
            Print     = new StateActivity();
            ProofRead = new StateActivity();
            Create    = new StateActivity();

            // ProofReadSetStateQualityNotOK
            ProofReadSetStateQualityNotOK.Name            = "ProofReadSetStateQualityNotOK";
            ProofReadSetStateQualityNotOK.TargetStateName = "Print";

            // ProofReadSetStateQualityOK
            ProofReadSetStateQualityOK.Name            = "ProofReadSetStateQualityOK";
            ProofReadSetStateQualityOK.TargetStateName = "End";

            // ProofReadElseBranchActivity2
            ProofReadElseBranchActivity2.Activities.Add(ProofReadSetStateQualityNotOK);
            ProofReadElseBranchActivity2.Name = "ProofReadElseBranchActivity2";

            // ProofReadElseBranch
            ProofReadElseBranch.Activities.Add(ProofReadSetStateQualityOK);
            codecondition1.Condition     += new EventHandler <ConditionalEventArgs> (ProofReadIfElseConditionFunction);
            ProofReadElseBranch.Condition = codecondition1;
            ProofReadElseBranch.Name      = "ProofReadElseBranch";

            // PrintFinalizationCode
            PrintFinalizationCode.Name         = "PrintFinalizationCode";
            PrintFinalizationCode.ExecuteCode += new EventHandler(PrintFinalizationCodeFunction);

            // PrintSetState
            PrintSetState.Name            = "PrintSetState";
            PrintSetState.TargetStateName = "End";

            // PrintCode
            PrintCode.Name         = "PrintCode";
            PrintCode.ExecuteCode += new EventHandler(PrintCodeFunction);

            // PrintDelay
            PrintDelay.Name            = "PrintDelay";
            PrintDelay.TimeoutDuration = TimeSpan.Parse("00:00:02");

            // ProofReadIfElse
            ProofReadIfElse.Activities.Add(ProofReadElseBranch);
            ProofReadIfElse.Activities.Add(ProofReadElseBranchActivity2);
            ProofReadIfElse.Description = "Quality is OK?";
            ProofReadIfElse.Name        = "ProofReadIfElse";

            // ProofReadDelay
            ProofReadDelay.Name            = "ProofReadDelay";
            ProofReadDelay.TimeoutDuration = TimeSpan.Parse("00:00:01");

            // CreateInitCode
            CreateInitCode.Name         = "CreateInitCode";
            CreateInitCode.ExecuteCode += new EventHandler(CreateInitCodeFunction);

            // DocumentSetState
            DocumentSetState.Name            = "DocumentSetState";
            DocumentSetState.TargetStateName = "ProofRead";

            // CodeDocument
            CodeDocument.Name         = "CodeDocument";
            CodeDocument.ExecuteCode += new EventHandler(CodeDocumentFunction);

            // CreateDelay
            CreateDelay.Name            = "CreateDelay";
            CreateDelay.TimeoutDuration = TimeSpan.Parse("00:00:01");

            // PrintFinalization
            PrintFinalization.Activities.Add(PrintFinalizationCode);
            PrintFinalization.Name = "PrintFinalization";

            // PrintEventDriven
            PrintEventDriven.Activities.Add(PrintDelay);
            PrintEventDriven.Activities.Add(PrintCode);
            PrintEventDriven.Activities.Add(PrintSetState);
            PrintEventDriven.Name = "PrintEventDriven";

            // ProofReadEventDriven
            ProofReadEventDriven.Activities.Add(ProofReadDelay);
            ProofReadEventDriven.Activities.Add(ProofReadIfElse);
            ProofReadEventDriven.Name = "ProofReadEventDriven";

            // CreateInitialization
            CreateInitialization.Activities.Add(CreateInitCode);
            CreateInitialization.Name = "CreateInitialization";

            // CreateDriven
            CreateDriven.Activities.Add(CreateDelay);
            CreateDriven.Activities.Add(CodeDocument);
            CreateDriven.Activities.Add(DocumentSetState);
            CreateDriven.Name = "CreateDriven";

            // End
            End.Name = "End";

            // Print
            Print.Activities.Add(PrintEventDriven);
            Print.Activities.Add(PrintFinalization);
            Print.Name = "Print";

            // ProofRead
            ProofRead.Activities.Add(ProofReadEventDriven);
            ProofRead.Name = "ProofRead";

            // Create
            Create.Activities.Add(CreateDriven);
            Create.Activities.Add(CreateInitialization);
            Create.Name = "Create";

            // DocumentCreation
            Activities.Add(Create);
            Activities.Add(ProofRead);
            Activities.Add(Print);
            Activities.Add(End);
            CompletedStateName = "End";
            InitialStateName   = "Create";
            Name = "DocumentCreation";
            CanModifyActivities = false;
        }