public override void ExecuteInternal(ValueTransitContext ctx) { ReturnValue = Expression.Evaluate(ctx); string valueType = ReturnValue?.GetType().Name.Truncate(30); ctx.TraceLine($"<- ({ valueType }){ReturnValue?.ToString().Truncate(30)}"); }
public override void ExecuteInternal(ValueTransitContext ctx) { foreach (var childTransition in Commands) { TransitChild(childTransition, ctx); if (ctx.Flow != TransitionFlow.Continue) { ctx.TraceLine($"Breaking {this.GetType().Name}"); break; } } }
public override void ExecuteInternal(ValueTransitContext ctx) { var target = Target.GetObjectByKeyOrCreate(ctx.Source.Key); //target can be empty when using TransitMode = OnlyExitedObjects if (target == null) { ctx.Flow = TransitionFlow.SkipObject; return; } ctx.Target = target; TraceColor = ConsoleColor.Magenta; ctx.TraceLine($"PIPELINE '{ctx.DataPipeline.Name}' OBJECT, Row {ctx.Source.RowNumber}, Key [{ctx.Source.Key}], IsNew: {target.IsNew}"); }
public override void ExecuteInternal(ValueTransitContext ctx) { foreach (var childTransition in Commands) { ctx.Execute(childTransition); if (ctx.Flow == TransitionFlow.SkipValue) { //if ReplaceUnit returned SkipValue then need to stop ONLY replacing sequence (hack, need to refactor to do //it in more convenient way ctx.Flow = TransitionFlow.Continue; break; } if (ctx.Flow != TransitionFlow.Continue) { ctx.TraceLine($"Breaking {this.GetType().Name}"); break; } } }
public override void ExecuteInternal(ValueTransitContext ctx) { ctx.TraceLine(Message.Evaluate(ctx)); }