org.galagosearch.tupleflow.execution
Class Job

java.lang.Object
  extended by org.galagosearch.tupleflow.execution.Job
All Implemented Interfaces:
java.io.Serializable

public class Job
extends java.lang.Object
implements java.io.Serializable

A Job object specifies a TupleFlow execution: the objects used, their parameters, and how they communicate. A Job can be specified in XML (and parsed with JobConstructor), or in code.

Author:
trevor
See Also:
Serialized Form

Nested Class Summary
static class Job.StagePoint
           
 
Field Summary
 java.util.ArrayList<Connection> connections
           
 java.util.HashMap<java.lang.String,ConnectionEndPoint> exports
           
 java.util.HashMap<java.lang.String,java.lang.String> properties
           
 java.util.TreeMap<java.lang.String,Stage> stages
           
 
Constructor Summary
Job()
           
 
Method Summary
 void add(Stage s)
          Adds a stage to the current job.
 void add(java.lang.String jobName, Job group)
          Sometimes its convenient to specify a group of stages as its own job, with connections that flow between stages specified in the job.
 void connect(Job.StagePoint source, Job.StagePoint destination, ConnectionAssignmentType assignment)
           
 void connect(Job.StagePoint source, Job.StagePoint destination, ConnectionAssignmentType assignment, java.lang.String[] hashType, int hashCount)
           
 void connect(java.lang.String sourceName, java.lang.String destinationName, ConnectionAssignmentType assignment)
          Connects outputs from stage sourceName to inputs from stage destinationName.
 java.lang.String toDotString()
          Returns this job as a graph in the DOT language.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

stages

public java.util.TreeMap<java.lang.String,Stage> stages

connections

public java.util.ArrayList<Connection> connections

exports

public java.util.HashMap<java.lang.String,ConnectionEndPoint> exports

properties

public java.util.HashMap<java.lang.String,java.lang.String> properties
Constructor Detail

Job

public Job()
Method Detail

add

public void add(java.lang.String jobName,
                Job group)
Sometimes its convenient to specify a group of stages as its own job, with connections that flow between stages specified in the job. The add method allows you to add another job to this job. To avoid name conflicts, all stages in the job are renamed from stageName to jobName.stageName.


add

public void add(Stage s)
Adds a stage to the current job.


connect

public void connect(java.lang.String sourceName,
                    java.lang.String destinationName,
                    ConnectionAssignmentType assignment)
Connects outputs from stage sourceName to inputs from stage destinationName. Connect can make connections between any stage with the name sourceName, or that starts with sourceName (same goes for destinationName), which makes this particularly useful for making connections between sub-jobs.


connect

public void connect(Job.StagePoint source,
                    Job.StagePoint destination,
                    ConnectionAssignmentType assignment)

connect

public void connect(Job.StagePoint source,
                    Job.StagePoint destination,
                    ConnectionAssignmentType assignment,
                    java.lang.String[] hashType,
                    int hashCount)

toDotString

public java.lang.String toDotString()
Returns this job as a graph in the DOT language. This DOT text can be used with GraphViz (http://www.graphviz.org) to display a picture of the job.


toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2009. All Rights Reserved.