/Rhino.Etl.Tests/Branches/FibonacciBranchingProcess.cs

http://github.com/ayende/rhino-etl · C# · 34 lines · 27 code · 7 blank · 0 comment · 1 complexity · 4a789d52b3cac8c9ddef91845b8a9b56 MD5 · raw file

  1. using Rhino.Etl.Core;
  2. using Rhino.Etl.Core.Operations;
  3. using Rhino.Etl.Core.Pipelines;
  4. using Rhino.Etl.Tests.Fibonacci;
  5. using Rhino.Etl.Tests.Fibonacci.Bulk;
  6. namespace Rhino.Etl.Tests.Branches
  7. {
  8. public class FibonacciBranchingProcess : EtlProcess
  9. {
  10. private readonly int numberOfFibonacciIterations;
  11. private readonly int numberOfChildOperations;
  12. public FibonacciBranchingProcess(int numberOfFibonacciIterations, int numberOfChildOperations)
  13. {
  14. this.numberOfFibonacciIterations = numberOfFibonacciIterations;
  15. this.numberOfChildOperations = numberOfChildOperations;
  16. }
  17. protected override void Initialize()
  18. {
  19. PipelineExecuter = new SingleThreadedPipelineExecuter();
  20. Register(new FibonacciOperation(numberOfFibonacciIterations));
  21. var split = new BranchingOperation();
  22. for (int i = 0; i < numberOfChildOperations; i++)
  23. split.Add(new FibonacciBulkInsert());
  24. Register(split);
  25. }
  26. }
  27. }