コード例 #1
0
 public static FluentBuilder <TContext> Sequence <TContext>(
     this FluentBuilder <TContext> builder,
     string name)
 {
     return(builder.Push(new SequenceNode {
         Name = name
     }));
 }
コード例 #2
0
 public static FluentBuilder <TContext> AlwaysSucceed <TContext>(
     this FluentBuilder <TContext> builder,
     string name)
 {
     return(builder.Push(new SucceederNode {
         Name = name
     }));
 }
コード例 #3
0
 public static FluentBuilder <TContext> UntilFailed <TContext>(
     this FluentBuilder <TContext> builder,
     string name)
 {
     return(builder.Push(new UntilFailedNode {
         Name = name
     }));
 }
コード例 #4
0
 public static FluentBuilder <TContext> Invert <TContext>(
     this FluentBuilder <TContext> builder,
     string name)
 {
     return(builder.Push(new InverterNode {
         Name = name
     }));
 }
コード例 #5
0
 public static FluentBuilder <TContext> AutoReset <TContext>(
     this FluentBuilder <TContext> builder,
     string name)
 {
     return(builder.Push(new AutoResetNode {
         Name = name
     }));
 }
コード例 #6
0
 public static FluentBuilder <TContext> PrioritySelector <TContext>(
     this FluentBuilder <TContext> builder,
     string name)
 {
     return(builder.Push(new PrioritySelectorNode {
         Name = name
     }));
 }
コード例 #7
0
 public static FluentBuilder <TContext> Wait <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     int waitTimeInMilliseconds)
 {
     return(builder.Push(new WaitNode(waitTimeInMilliseconds)
     {
         Name = name
     }));
 }
コード例 #8
0
 public static FluentBuilder <TContext> Do <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     Func <TContext, BehaviourStatus> action)
 {
     return(builder.Push(new ActionNode <TContext>(action)
     {
         Name = name
     }));
 }
コード例 #9
0
 public static FluentBuilder <TContext> TimeLimit <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     int timeLimitInMilliseconds)
 {
     return(builder.Push(new TimeLimitNode(timeLimitInMilliseconds)
     {
         Name = name
     }));
 }
コード例 #10
0
 public static FluentBuilder <TContext> SimpleParallel <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     Composites.SimpleParallelPolicy policy = Composites.SimpleParallelPolicy.BothMustSucceed)
 {
     return(builder.Push(new SimpleParallelNode(policy)
     {
         Name = name
     }));
 }
コード例 #11
0
 public static FluentBuilder <TContext> LimitCallRate <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     int intervalInMilliseconds)
 {
     return(builder.Push(new RateLimiterNode(intervalInMilliseconds)
     {
         Name = name
     }));
 }
コード例 #12
0
 public static FluentBuilder <TContext> Condition <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     Func <TContext, bool> condition)
 {
     return(builder.Push(new ConditionNode <TContext>(condition)
     {
         Name = name
     }));
 }
コード例 #13
0
 public static FluentBuilder <TContext> Cooldown <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     int cooldownTimeInMilliseconds)
 {
     return(builder.Push(new CooldownNode(cooldownTimeInMilliseconds)
     {
         Name = name
     }));
 }
コード例 #14
0
 public static FluentBuilder <TContext> Repeat <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     int repeatCount)
 {
     return(builder.Push(new RepeatNode(repeatCount)
     {
         Name = name
     }));
 }
コード例 #15
0
 public static FluentBuilder <TContext> RandomSelector <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     IRandomProvider randomProvider = null)
 {
     return(builder.Push(new RandomSelectorNode(randomProvider)
     {
         Name = name
     }));
 }
コード例 #16
0
 public static FluentBuilder <TContext> Subtree <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     IBehaviour <TContext> subBehaviour)
 {
     return(builder.Push(new SubTreeNode <TContext>(subBehaviour)
     {
         Name = name
     }));
 }
コード例 #17
0
 public static FluentBuilder <TContext> Random <TContext>(
     this FluentBuilder <TContext> builder,
     string name,
     double threshold,
     IRandomProvider randomProvider = null)
 {
     return(builder.Push(new RandomNode(threshold, randomProvider)
     {
         Name = name
     }));
 }