class MergeJoinMeta extends BaseTransformMeta implements ITransformMeta<MergeJoin, MergeJoinData> {

  public Object clone() {
    MergeJoinMeta retval = (MergeJoinMeta) super.clone();
    int nrKeys1 = keyFields1.length;
    int nrKeys2 = keyFields2.length;
    retval.allocate( nrKeys1, nrKeys2 );
    System.arraycopy( keyFields1, 0, retval.keyFields1, 0, nrKeys1 );
    System.arraycopy( keyFields2, 0, retval.keyFields2, 0, nrKeys2 );

    ITransformIOMeta transformIOMeta = new TransformIOMeta( true, true, false, false, false, false );
    List<IStream> infoStreams = getTransformIOMeta().getInfoStreams();

    for ( IStream infoStream : infoStreams ) {
      transformIOMeta.addStream( new Stream( infoStream ) );
    }
    retval.setTransformIOMeta( transformIOMeta );

    return retval;
  }

  public  MergeJoinMeta();

}