c# - Sequential branching / branched sequential pipeline -
i need help pipeline of rhino etl framework.
required kind of operation chaining which,
allows branching, operates sequential (row row), returns original input row pipeline entered branch. - b / | \ - - c - \ | / - d[]1. register / partial.register
requirement b.) covered usual register(...) , partial.register(...) initialisation, design homecoming converted row pipeline
register(new exampleproduce<classa>()); register(partial .register(new exampleconvertto<classb>()) .register(new exampleoperatewith<classb>())); // wrong row: b register(partial .register(new exampleconvertto<classc>()) .register(new exampleoperatewith<classc>())); // wrong row: c register(partial .register(new exampleconvertto<ilist<classd>>()) .register(new exampleoperatewith<ilist<classd>>())); // other row context, multiple rows of type d register(new exampleoperatewith<classa>()); 2. branching operation
requirement a.) covered utilize of branchingoperation, every branch processes rows before pipeline switches , never returns original pipeline.
register(new exampleproduce<classa>()); // runs every branch rows before switching next 1 register(new branchingoperation() .add(partial.register(new exampleconvertto<classb>()) .register(new exampleoperatewith<classb>())) .add(partial.register(new exampleconvertto<classc>()) .register(new exampleoperatewith<classc>())) .add(partial.register(new exampleconvertto<ilist<classd>>()) .register(new exampleoperatewith<ilist<classd>>()))); // never reaches register(new deploy<classa>()); 3. caching rows
dirty (and not working in scenario) possibility resolve issue: saving current row in column before "branch" , restoring after. depend, every operation in branch not alter column in original row stored, @ to the lowest degree in lastly branch of illustration impossible.
register(new exampleproduce<classa>()); register(new storetorow<classa>()); register(partial .register(new exampleconvertto<classb>()) .register(new exampleoperatewith<classb>())); register(new restorefromrow<classa>()); register(new storetorow<classa>()); register(partial .register(new exampleconvertto<classc>()) .register(new exampleoperatewith<classc>())); register(new restorefromrow<classa>()); register(new storetorow<classa>()); register(partial .register(new exampleconvertto<ilist<classd>>()) .register(new exampleoperatewith<ilist<classd>>())); register(new restorefromrow<classa>()); // other "row context", multiple rows of type d register(new exampleoperatewith<classa>()); is there implementation of branchingoperation (like sequentialbranchingoperation...?) meet these requirements? or other thought how resolve issue?
c# .net rhino-etl
No comments:
Post a Comment