TupleJoin join = inv.getInterface(TupleJoin.class);
TupleMetadata outputMetadata =
join.getMetadata(
(TupleMetadata)tuples1.getMetadataWrapper().getMetadata(),
(TupleMetadata)tuples2.getMetadataWrapper().getMetadata());
Tuple tuple;
// Store data1 input stream
List<Tuple> data1 = new LinkedList<Tuple>();
while ((tuple = (Tuple)tuples1.nextValue()) != null)
{
data1.add(tuple);
}
mOutput.write(ControlBlock.LIST_BEGIN);
mOutput.write(outputMetadata);
Tuple tuple2;
while ((tuple2 = (Tuple)tuples2.nextValue()) != null)
{
for (Tuple tuple1 : data1)
{
List<Tuple> result = join.process(tuple1, tuple2);