Exemple #1
0
        public PipelineNeedsDataBuilder ForkDataFrom(IFlowPipeline flowPipeline, int forkAtStep = -1)
        {
            var stepsToTake = forkAtStep == -1 ?
                              flowPipeline.Steps.ToList() :
                              flowPipeline.Steps.Take(forkAtStep).ToList();

            if (stepsToTake.Last() is IReturnsObject)
            {
                throw new ArgumentException("Step being forked returns an Object not Data", nameof(forkAtStep));
            }

            return(new PipelineNeedsDataBuilder(stepsToTake));
        }
        public EcsRxPipelineNeedsObjectBuilder ForkObjectFrom(IFlowPipeline flowPipeline, int forkAtStep = -1)
        {
            var stepsToTake = forkAtStep == -1 ?
                              flowPipeline.Steps.ToList() :
                              flowPipeline.Steps.Take(forkAtStep).ToList();

            if (stepsToTake.Last() is IReturnsData)
            {
                throw new ArgumentException("Step being forked returns Data not an Object", nameof(forkAtStep));
            }

            return(new EcsRxPipelineNeedsObjectBuilder(_container, stepsToTake));
        }
 public static IWireTappablePipeline AsWireTappable(this IFlowPipeline pipeline)
 {
     return(new WireTappablePipeline(pipeline.Steps));
 }