Dilation of sub-flow operators in a data flow

Information

  • Patent Application
  • 20070214176
  • Publication Number
    20070214176
  • Date Filed
    March 10, 2006
    18 years ago
  • Date Published
    September 13, 2007
    17 years ago
Abstract
A method for dilating a sub-flow operator in a data flow is provided. The data flow is traversed to locate sub-flow operators. The data flow bound to a sub-flow operator is retrieved. The sub-flow operators are then injected into the data flow.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:



FIG. 1 is a pictorial representation of a network of data processing systems in which exemplary aspects of the present invention may be implemented;



FIG. 2 is a block diagram of a data processing system in which exemplary aspects of the present invention may be implemented;



FIG. 3 is a block diagram showing typical software architecture for a server-client system in accordance with a preferred embodiment of the present invention;



FIG. 4 is a block diagram of a rudimentary flow;



FIG. 5 is a block diagram depicting a sub-flow, in accordance with an exemplary embodiment of the present invention;



FIG. 6 is a block diagram depicting a flow having a sub-flow, in accordance with an exemplary embodiment of the present invention;



FIG. 7 is a block diagram depicting a flow having a sub-flow, expanded, in accordance with an exemplary embodiment of the present invention;



FIG. 8 is a block diagram depicting a flow having a sub-flow, expanded, and integrated, in accordance with an exemplary embodiment of the present invention; and



FIG. 9 is a flowchart depicting the operation of expanding sub-flows in a flow, in accordance with an exemplary embodiment of the present invention.


Claims
  • 1. A computer program product comprising a computer usable medium including computer usable program code for dilating a sub-flow operator in a data flow, the computer program product comprising: computer usable program code for traversing the data flow to locate sub-flow operators;computer usable program code for retrieving the data flow bound to a sub-flow operator; andcomputer usable program code for injecting the sub-flow operators into the data flow.
  • 2. The computer program product of claim 1, wherein the computer usable program code for traversing the data flow to locate sub-flow operators comprises: computer usable program code for reading an operator; andcomputer usable program code for determining if the operator is a sub-flow operator.
  • 3. The computer program product of claim 2, further comprising: computer usable program code for repeating the reading and determining steps until all operators in the data flow are read.
  • 4. The computer program product of claim 1, further comprising: computer usable program code, responsive to a determination that at least one sub-flow operator was encountered, for repeating the traversing, retrieving, and injecting steps.
  • 5. The computer program product of claim 1, wherein the computer usable program code for injecting the sub-flow operators into the data flow comprises: computer usable program code for copying each operator in the sub-flow operator;computer usable program code for renaming each operator in the sub-flow operator, to form renamed operators; andcomputer usable program code for inserting the renamed operators into the data flow from the sub-flow.
  • 6. The computer program product of claim 1, further comprising: computer usable program code for bridging ports of the sub-flow operator to ports of operators in the data flow.
  • 7. The computer program product of claim 6, further comprising: computer usable program code for sending the data flow for code generation.
  • 8. The computer program product of claim 1, wherein the data flow bound to a sub-flow operator comprises a saved sub-flow.
  • 9. The computer program product of claim 8, wherein the saved sub-flow comprises: computer usable program code for connecting a plurality of operators;computer usable program code for defining mapping between the plurality of operators; andcomputer usable program code for saving the plurality of operators to form a saved sub-flow.
  • 10. The computer program product of claim 9, further comprising: computer usable program code for creating an input port; andcomputer usable program code for creating an output port.
  • 11. The computer program product of claim 9, further comprising: computer usable program code for dragging and dropping an operator from a palette onto a canvas, wherein the palette and the canvas are part of a graphical user interface.
  • 12. The computer program product of claim 11, wherein the saved sub-flow is represented by a graphical icon in the palette.
  • 13. The computer program product of claim 9, wherein a sub-flow context is bound when code is generated.
  • 14. The computer program product of claim 1, wherein the saved sub-flow comprises at least one sub-flow operator.
  • 15. A computer implemented method for dilating a sub-flow operator in a data flow, the computer implemented method comprising: traversing the data flow to locate sub-flow operators;retrieving the data flow bound to a sub-flow operator; andinjecting the sub-flow operators into the data flow.
  • 16. The computer implemented method of claim 15, wherein traversing the data flow to locate sub-flow operators comprises: reading an operator;determining if the operator is a sub-flow operator; andrepeating the reading and determining steps until all the operators in the data flow are read.
  • 17. The computer implemented method of claim 15, further comprising: in response to a determination that at least one sub-flow operator was encountered, repeating the traversing, retrieving, and injecting steps.
  • 18. The computer implemented method of claim 15, wherein injecting the sub-flow operators into the data flow comprises: copying each operator in the sub-flow operator;renaming each operator in the sub-flow operator, to form renamed operators; andinserting the renamed operators into the data flow from the sub-flow.
  • 19. The computer implemented method of claim 15, further comprising: bridging ports of the sub-flow operator to ports of operators in the data flow; andsending the data flow for code generation.
  • 20. A data processing system for dilating a sub-flow operator in a data flow, the data processing system comprising: a storage device, wherein the storage device stores computer usable program code; anda processor, wherein the processor executes the computer usable program code to traverse the data flow to locate sub-flow operators; retrieve the data flow bound to a sub-flow operator; and inject the sub-flow operators into the data flow.