cascading.flow.planner.rule.partitioner

## Class UniquePathRulePartitioner

- java.lang.Object
- - cascading.flow.planner.rule.RulePartitioner
  - - cascading.flow.planner.rule.partitioner.ExpressionRulePartitioner
    - - cascading.flow.planner.rule.partitioner.UniquePathRulePartitioner

All Implemented Interfaces:
  Rule

Direct Known Subclasses:
  SplitJoinBoundariesNodeRePartitioner

    public class UniquePathRulePartitioner
    extends ExpressionRulePartitioner

Class UniquePathRulePartitioner relies on a `RuleExpression` to identify sub-graphs as initial partitions, then will partition the resulting graph into a unique sub-graph for each unique path between the head and tail of the graph.

This partitioner currently requires the matched sub-graph (per the RuleExpression) to have a single head and single tail. All paths will between the matched head and tail.

Any remaining elements from the original graph will be included in the final path sub-graph.

### Nested Class Summary

### Nested classes/interfaces inherited from class cascading.flow.planner.rule.RulePartitioner

`RulePartitioner.PartitionSource`

### Field Summary

### Fields inherited from class cascading.flow.planner.rule.RulePartitioner

`graphPartitioner, logLevel, partitionSource, phase`

### Constructor Summary

Constructors
`protected` `UniquePathRulePartitioner()`
`protected` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, GraphPartitioner graphPartitioner)`
`` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, RuleExpression ruleExpression)`
`` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, RuleExpression ruleExpression, ElementAnnotation... annotations)`
`` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, RuleExpression ruleExpression, java.lang.Enum... annotationExcludes)`
`` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, RulePartitioner.PartitionSource partitionSource, RuleExpression ruleExpression)`
`` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, RulePartitioner.PartitionSource partitionSource, RuleExpression ruleExpression, ElementAnnotation... annotations)`
`` `UniquePathRulePartitioner(LogLevel logLevel, PlanPhase phase, RulePartitioner.PartitionSource partitionSource, RuleExpression ruleExpression, java.lang.Enum... annotationExcludes)`
`protected` `UniquePathRulePartitioner(PlanPhase phase)`
`protected` `UniquePathRulePartitioner(PlanPhase phase, GraphPartitioner graphPartitioner)`
`` `UniquePathRulePartitioner(PlanPhase phase, RuleExpression ruleExpression)`
`` `UniquePathRulePartitioner(PlanPhase phase, RuleExpression ruleExpression, ElementAnnotation... annotations)`
`` `UniquePathRulePartitioner(PlanPhase phase, RuleExpression ruleExpression, java.lang.Enum... annotationExcludes)`
`` `UniquePathRulePartitioner(PlanPhase phase, RulePartitioner.PartitionSource partitionSource, RuleExpression ruleExpression)`
`` `UniquePathRulePartitioner(PlanPhase phase, RulePartitioner.PartitionSource partitionSource, RuleExpression ruleExpression, ElementAnnotation... annotations)`
`` `UniquePathRulePartitioner(PlanPhase phase, RulePartitioner.PartitionSource partitionSource, RuleExpression ruleExpression, java.lang.Enum... annotationExcludes)`

### Method Summary

Methods
`protected ExpressionGraphPartitioner` `createExpressionGraphPartitioner(ExpressionGraph contractionGraph, ExpressionGraph expressionGraph, ElementAnnotation[] annotations)`

### Methods inherited from class cascading.flow.planner.rule.partitioner.ExpressionRulePartitioner

`addAnnotation, addAnnotationExclude, getAnnotationExcludes, setAnnotationExcludes, setAnnotations, setPhase, setRuleExpression`

### Methods inherited from class cascading.flow.planner.rule.RulePartitioner

`getGraphPartitioner, getPartitionSource, getRuleName, getRulePhase, partition, partition, performPartition, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(PlanPhase phase,
                             RuleExpression ruleExpression)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(PlanPhase phase,
                             RuleExpression ruleExpression,
                             ElementAnnotation... annotations)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(PlanPhase phase,
                             RuleExpression ruleExpression,
                             java.lang.Enum... annotationExcludes)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(PlanPhase phase,
                             RulePartitioner.PartitionSource partitionSource,
                             RuleExpression ruleExpression)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(PlanPhase phase,
                             RulePartitioner.PartitionSource partitionSource,
                             RuleExpression ruleExpression,
                             ElementAnnotation... annotations)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(PlanPhase phase,
                             RulePartitioner.PartitionSource partitionSource,
                             RuleExpression ruleExpression,
                             java.lang.Enum... annotationExcludes)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             RuleExpression ruleExpression)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             RuleExpression ruleExpression,
                             ElementAnnotation... annotations)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             RuleExpression ruleExpression,
                             java.lang.Enum... annotationExcludes)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             RulePartitioner.PartitionSource partitionSource,
                             RuleExpression ruleExpression)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             RulePartitioner.PartitionSource partitionSource,
                             RuleExpression ruleExpression,
                             ElementAnnotation... annotations)

#### UniquePathRulePartitioner

    public UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             RulePartitioner.PartitionSource partitionSource,
                             RuleExpression ruleExpression,
                             java.lang.Enum... annotationExcludes)

#### UniquePathRulePartitioner

    protected UniquePathRulePartitioner(PlanPhase phase,
                             GraphPartitioner graphPartitioner)

#### UniquePathRulePartitioner

    protected UniquePathRulePartitioner(LogLevel logLevel,
                             PlanPhase phase,
                             GraphPartitioner graphPartitioner)

#### UniquePathRulePartitioner

    protected UniquePathRulePartitioner(PlanPhase phase)

#### UniquePathRulePartitioner

    protected UniquePathRulePartitioner()

### Method Detail

#### createExpressionGraphPartitioner

    protected ExpressionGraphPartitioner createExpressionGraphPartitioner(ExpressionGraph contractionGraph,
                                                              ExpressionGraph expressionGraph,
                                                              ElementAnnotation[] annotations)

Overrides:
  `createExpressionGraphPartitioner` in class `ExpressionRulePartitioner`