public <T extends DataObject>Joiner join(Class<T> clazz,String alias){
  if (!jClasses.isEmpty()) {
    throw new JoinerException("Illegal use of Joiner; starting a new join in the middle of a join chain");
  }
  JClass jc=new JClass(clazz,alias,jClasses.size());
  jClasses.add(jc);
  lastJClass=jc;
  aliasMap.put(alias,jc);
  return this;
}

public < T extends DataObject > Joiner join ( Class < T > clazz , String alias ) { if ( ! jClasses . isEmpty ( ) ) { throw new JoinerException ( "Illegal use of Joiner; starting a new join in the middle of a join chain" ) ; } JClass jc = new JClass ( clazz , alias , jClasses . size ( ) ) ; jClasses . add ( jc ) ; lastJClass = jc ; aliasMap . put ( alias , jc ) ; return this ; }
starts a new query not related to a previous class query .
