code: private boolean canAddTableToFromClause(Table table, Map<Table, List<JoinCriteria>> destMap, List<Table> allTables) {
      	if ((table == null) || allTables.contains(table)) {
      		return false;
      	}
      	if ((destMap.get(table) != null) && (destMap.get(table).size() > 0)) {
      		List<JoinCriteria> list = destMap.get(table);    		
      		for (JoinCriteria jc : list) {
      			if (JoinType.isOuter(jc.getJoinType())) {
      				return false;
      			}
      		}
      	}    	
      	return true;
      }
docs: outer joins are written in Table class