Skip to content

Commit 34789fc

Browse files
committed
Helper methods
1 parent 60c21aa commit 34789fc

26 files changed

+79
-42
lines changed

README.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public class HelloWorld : StepBody
2626
public override ExecutionResult Run(IStepExecutionContext context)
2727
{
2828
Console.WriteLine("Hello world");
29-
return OutcomeResult(null);
29+
return ExecutionResult.Next();
3030
}
3131
}
3232
```
@@ -59,12 +59,12 @@ public class HelloWorldWorkflow : IWorkflow
5959
.StartWith(context =>
6060
{
6161
Console.WriteLine("Hello world");
62-
return new ExecutionResult(null);
62+
return ExecutionResult.Next();
6363
})
6464
.Then(context =>
6565
{
6666
Console.WriteLine("Goodbye world");
67-
return new ExecutionResult(null);
67+
return ExecutionResult.Next();
6868
})
6969
}
7070
...
@@ -83,9 +83,9 @@ public class SleepStep : StepBody
8383
public override ExecutionResult Run(IStepExecutionContext context)
8484
{
8585
if (context.PersistenceData == null)
86-
return SleepResult(new Object(), Timespan.FromHours(12));
86+
return ExecutionResult.Sleep(Timespan.FromHours(12), new Object());
8787
else
88-
return OutcomeResult(null);
88+
return ExecutionResult.Next();
8989
}
9090
}
9191
```
@@ -109,7 +109,7 @@ public class AddNumbers : StepBody
109109
public override ExecutionResult Run(IStepExecutionContext context)
110110
{
111111
Output = (Input1 + Input2);
112-
return OutcomeResult(null);
112+
return ExecutionResult.Next();
113113
}
114114
}
115115

@@ -175,7 +175,7 @@ public class EventSampleWorkflow : IWorkflow<MyDataClass>
175175
.StartWith(context =>
176176
{
177177
Console.WriteLine("workflow started");
178-
return new ExecutionResult(null);
178+
return ExecutionResult.Next();
179179
})
180180
.WaitFor("MyEvent", "0")
181181
.Output(data => data.Value, step => step.EventData)

src/WorkflowCore/Models/ExecutionResult.cs

+37
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,42 @@ public ExecutionResult(object outcome)
2525
OutcomeValue = outcome;
2626
}
2727

28+
public static ExecutionResult Outcome(object value)
29+
{
30+
return new ExecutionResult()
31+
{
32+
Proceed = true,
33+
OutcomeValue = value
34+
};
35+
}
36+
37+
public static ExecutionResult Next()
38+
{
39+
return new ExecutionResult()
40+
{
41+
Proceed = true,
42+
OutcomeValue = null
43+
};
44+
}
45+
46+
public static ExecutionResult Persist(object value)
47+
{
48+
return new ExecutionResult()
49+
{
50+
Proceed = false,
51+
OutcomeValue = value
52+
};
53+
}
54+
55+
public static ExecutionResult Sleep(TimeSpan duration, object value)
56+
{
57+
return new ExecutionResult()
58+
{
59+
Proceed = false,
60+
SleepFor = duration,
61+
OutcomeValue = value
62+
};
63+
}
64+
2865
}
2966
}

src/samples/WorkflowCore.Sample01/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public class HelloWorld : StepBody
2323
public override ExecutionResult Run(IStepExecutionContext context)
2424
{
2525
Console.WriteLine("Hello world");
26-
return OutcomeResult(null);
26+
return ExecutionResult.Next();
2727
}
2828
}
2929
```

src/samples/WorkflowCore.Sample01/Steps/GoodbyeWorld.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class GoodbyeWorld : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Goodbye world");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample01/Steps/HelloWorld.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class HelloWorld : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Hello world");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample02/Steps/CustomMessage.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class CustomMessage : StepBody
1515
public override ExecutionResult Run(IStepExecutionContext context)
1616
{
1717
Console.WriteLine(Message);
18-
return OutcomeResult(null);
18+
return ExecutionResult.Next();
1919
}
2020
}
2121
}

src/samples/WorkflowCore.Sample02/Steps/GoodbyeWorld.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class GoodbyeWorld : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Goodbye world");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample02/Steps/HelloWorld.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class HelloWorld : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Hello world");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample02/Steps/RandomOutput.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public override ExecutionResult Run(IStepExecutionContext context)
1414
Random rnd = new Random();
1515
int value = rnd.Next(2);
1616
Console.WriteLine("Generated random value {0}", value);
17-
return OutcomeResult(value);
17+
return ExecutionResult.Outcome(value);
1818
}
1919
}
2020
}

src/samples/WorkflowCore.Sample03/PassingDataWorkflow.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public void Build(IWorkflowBuilder<MyDataClass> builder)
1616
.StartWith(context =>
1717
{
1818
Console.WriteLine("Starting workflow...");
19-
return new ExecutionResult(null);
19+
return ExecutionResult.Next();
2020
})
2121
.Then<AddNumbers>()
2222
.Input(step => step.Input1, data => data.Value1)
@@ -28,7 +28,7 @@ public void Build(IWorkflowBuilder<MyDataClass> builder)
2828
.Then(context =>
2929
{
3030
Console.WriteLine("Workflow comeplete");
31-
return new ExecutionResult(null);
31+
return ExecutionResult.Next();
3232
});
3333
}
3434

src/samples/WorkflowCore.Sample03/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public class AddNumbers : StepBody
2323
public override ExecutionResult Run(IStepExecutionContext context)
2424
{
2525
Output = (Input1 + Input2);
26-
return OutcomeResult(null);
26+
return ExecutionResult.Next();
2727
}
2828
}
2929
```
@@ -39,7 +39,7 @@ public class PassingDataWorkflow : IWorkflow<MyDataClass>
3939
.StartWith(context =>
4040
{
4141
Console.WriteLine("Starting workflow...");
42-
return new ExecutionResult(null);
42+
return ExecutionResult.Next();
4343
})
4444
.Then<AddNumbers>()
4545
.Input(step => step.Input1, data => data.Value1)
@@ -51,7 +51,7 @@ public class PassingDataWorkflow : IWorkflow<MyDataClass>
5151
.Then(context =>
5252
{
5353
Console.WriteLine("Workflow comeplete");
54-
return new ExecutionResult(null);
54+
return ExecutionResult.Next();
5555
});
5656
}
5757
...

src/samples/WorkflowCore.Sample03/Steps/AddNumbers.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class AddNumbers : StepBody
1919
public override ExecutionResult Run(IStepExecutionContext context)
2020
{
2121
Output = (Input1 + Input2);
22-
return OutcomeResult(null);
22+
return ExecutionResult.Next();
2323
}
2424
}
2525
}

src/samples/WorkflowCore.Sample03/Steps/CustomMessage.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class CustomMessage : StepBody
1515
public override ExecutionResult Run(IStepExecutionContext context)
1616
{
1717
Console.WriteLine(Message);
18-
return OutcomeResult(null);
18+
return ExecutionResult.Next();
1919
}
2020
}
2121
}

src/samples/WorkflowCore.Sample03/Steps/GoodbyeWorld.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class GoodbyeWorld : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Goodbye world");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample03/Steps/HelloWorld.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class HelloWorld : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Hello world");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample04/EventSampleWorkflow.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public int Version
2929
public void Build(IWorkflowBuilder<MyDataClass> builder)
3030
{
3131
builder
32-
.StartWith(context => new ExecutionResult(null))
32+
.StartWith(context => ExecutionResult.Next())
3333
.WaitFor("MyEvent", "0")
3434
.Output(data => data.StrValue, step => step.EventData)
3535
.Then<CustomMessage>()
@@ -38,7 +38,7 @@ public void Build(IWorkflowBuilder<MyDataClass> builder)
3838
.Then(context =>
3939
{
4040
Console.WriteLine("workflow complete");
41-
return new ExecutionResult(null);
41+
return ExecutionResult.Next();
4242
});
4343
}
4444
}

src/samples/WorkflowCore.Sample04/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@ public class EventSampleWorkflow : IWorkflow<MyDataClass>
99
public void Build(IWorkflowBuilder<MyDataClass> builder)
1010
{
1111
builder
12-
.StartWith(context => new ExecutionResult(null))
12+
.StartWith(context => ExecutionResult.Next())
1313
.WaitFor("MyEvent", "0")
1414
.Output(data => data.StrValue, step => step.EventData)
1515
.Then<CustomMessage>()
1616
.Input(step => step.Message, data => "The data from the event is " + data.StrValue)
1717
.Then(context =>
1818
{
1919
Console.WriteLine("workflow complete");
20-
return new ExecutionResult(null);
20+
return ExecutionResult.Next();
2121
});
2222
}
2323
}

src/samples/WorkflowCore.Sample04/Steps/CustomMessage.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class CustomMessage : StepBody
1515
public override ExecutionResult Run(IStepExecutionContext context)
1616
{
1717
Console.WriteLine(Message);
18-
return OutcomeResult(null);
18+
return ExecutionResult.Next();
1919
}
2020
}
2121
}

src/samples/WorkflowCore.Sample05/DeferSampleWorkflow.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@ public void Build(IWorkflowBuilder<object> builder)
3131
builder
3232
.StartWith(context =>
3333
{
34-
Console.WriteLine("Workflow started");
35-
return new ExecutionResult(null);
34+
Console.WriteLine("Workflow started");
35+
return ExecutionResult.Next();
3636
})
3737
.Then<SleepStep>()
3838
.Input(step => step.Period, data => TimeSpan.FromSeconds(20))
3939
.Then(context =>
4040
{
4141
Console.WriteLine("workflow complete");
42-
return new ExecutionResult(null);
42+
return ExecutionResult.Next();
4343
});
4444
}
4545
}

src/samples/WorkflowCore.Sample05/README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ public class SleepStep : StepBody
1111
public override ExecutionResult Run(IStepExecutionContext context)
1212
{
1313
if (context.PersistenceData == null)
14-
return SleepResult(new Object(), Period);
14+
return ExecutionResult.Sleep(Period, new object());
1515
else
16-
return OutcomeResult(null);
16+
return ExecutionResult.Next();
1717
}
1818
}
1919
```
@@ -27,14 +27,14 @@ public class DeferSampleWorkflow : IWorkflow
2727
.StartWith(context =>
2828
{
2929
Console.WriteLine("Workflow started");
30-
return new ExecutionResult(null);
30+
return ExecutionResult.Next();
3131
})
3232
.Then<SleepStep>()
3333
.Input(step => step.Period, data => TimeSpan.FromSeconds(20))
3434
.Then(context =>
3535
{
3636
Console.WriteLine("workflow complete");
37-
return new ExecutionResult(null);
37+
return ExecutionResult.Next();
3838
});
3939
}
4040
...

src/samples/WorkflowCore.Sample05/Steps/SleepStep.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ public class SleepStep : StepBody
1515
public override ExecutionResult Run(IStepExecutionContext context)
1616
{
1717
if (context.PersistenceData == null)
18-
return SleepResult(new Object(), Period);
18+
return ExecutionResult.Sleep(Period, new object());
1919
else
20-
return OutcomeResult(null);
20+
return ExecutionResult.Next();
2121
}
2222
}
2323
}

src/samples/WorkflowCore.Sample06/Steps/RandomOutput.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public override ExecutionResult Run(IStepExecutionContext context)
1414
Random rnd = new Random();
1515
int value = rnd.Next(2);
1616
Console.WriteLine("Generated random value {0}", value);
17-
return OutcomeResult(value);
17+
return ExecutionResult.Outcome(value);
1818
}
1919
}
2020
}

src/samples/WorkflowCore.Sample06/Steps/TaskA.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class TaskA : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Doing Task A");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample06/Steps/TaskB.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class TaskB : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Doing Task B");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample06/Steps/TaskC.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class TaskC : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Doing Task C");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

src/samples/WorkflowCore.Sample06/Steps/TaskD.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class TaskD : StepBody
1212
public override ExecutionResult Run(IStepExecutionContext context)
1313
{
1414
Console.WriteLine("Doing Task D");
15-
return OutcomeResult(null);
15+
return ExecutionResult.Next();
1616
}
1717
}
1818
}

0 commit comments

Comments
 (0)