org.jrdf.query.relation.operation.mem.common
Class RelationProcessorImpl

java.lang.Object
  extended by org.jrdf.query.relation.operation.mem.common.RelationProcessorImpl
All Implemented Interfaces:
RelationProcessor

public final class RelationProcessorImpl
extends Object
implements RelationProcessor

Common tuple processing code - gets headings and then processes tuples using the tuple engine.


Constructor Summary
RelationProcessorImpl(RelationFactory relationFactory, TupleComparator tupleComparator)
           
 
Method Summary
 Relation convertToConstants(Relation resultRelation)
          Converts a relation with no heading and no tuples to false (TABLE_DUM) and a relation with no heading but some tuples to true (TABLE_DEE).
 Relation processRelations(Set<Relation> relations, TupleEngine tupleEngine)
          A set of relations that are to be processed by the tuple engine.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RelationProcessorImpl

public RelationProcessorImpl(RelationFactory relationFactory,
                             TupleComparator tupleComparator)
Method Detail

processRelations

public Relation processRelations(Set<Relation> relations,
                                 TupleEngine tupleEngine)
Description copied from interface: RelationProcessor
A set of relations that are to be processed by the tuple engine. First headings are processed and then the bodies of the relations.

Specified by:
processRelations in interface RelationProcessor
Parameters:
relations - the relations to be processed by the tuple engine.
tupleEngine - the engine.
Returns:
the result of calling the tuple engine with all relations given as input.

convertToConstants

public Relation convertToConstants(Relation resultRelation)
Description copied from interface: RelationProcessor
Converts a relation with no heading and no tuples to false (TABLE_DUM) and a relation with no heading but some tuples to true (TABLE_DEE).

Specified by:
convertToConstants in interface RelationProcessor
Parameters:
resultRelation - the relation to convert.
Returns:
either TABLE_DUM (false), TABLE_DEE (true) or the same relation.