Class Vertical

  • All Implemented Interfaces:
    Clusterer

    public class Vertical
    extends Abstract
    The vertical cluster, that extends the Default clusterer and topologically sorts the partition before clustering the jobs into aggregated jobs.
    Version:
    $Revision$
    Author:
    Karan Vahi
    • Field Detail

      • DESCRIPTION

        public static final java.lang.String DESCRIPTION
        A short description about the partitioner.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Vertical

        public Vertical()
        The default constructor.
    • Method Detail

      • description

        public java.lang.String description()
        Returns a textual description of the transfer implementation.
        Returns:
        a short textual description
      • order

        public java.util.List order​(Partition p)
                             throws ClustererException
        Returns the nodes in the partition as a List in the topologically sorted order.
        Specified by:
        order in class Abstract
        Parameters:
        p - the partition whose nodes have to be ordered.
        Returns:
        an ordered List of String objects that are the ID's of the nodes.
        Throws:
        ClustererException - in case of error.
      • determineInputOutputFiles

        public void determineInputOutputFiles​(AggregatedJob job,
                                              java.util.List<Job> orderedJobs)
        Determine the input and output files of the job on the basis of the order of the constituent jobs in the AggregatedJob. The input and output files are determined on the basis of topologically sorted order of the constituent jobs.
        Specified by:
        determineInputOutputFiles in class Abstract
        Parameters:
        job - the AggregatedJob
        orderedJobs - the List of Jobs that is ordered as determined by the clustererr
        Throws:
        ClustererException - in case of error.
      • getLogicalNameForJobs

        protected java.lang.String getLogicalNameForJobs​(java.util.List<Job> jobs)
        Returns null as for label based clustering we dont want the transformation name to be considered for constructing the name of the clustered jobs
        Overrides:
        getLogicalNameForJobs in class Abstract
        Parameters:
        jobs - List of jobs
        Returns:
        name
      • constructClusteredJobID

        protected java.lang.String constructClusteredJobID​(Partition partition)
        Returns the ID for the clustered job corresponding to a partition.
        Overrides:
        constructClusteredJobID in class Abstract
        Parameters:
        partition - the partition.
        Returns:
        the ID of the clustered job