public Object clone(){
  TableDefinition clone=(TableDefinition)super.clone();
  if (fields != null) {
    clone.setFields(new ArrayList<FieldDefinition>(fields.size()));
    for (    FieldDefinition fieldDef : getFields()) {
      clone.addField((FieldDefinition)fieldDef.clone());
    }
  }
  if (foreignKeyMap != null) {
    clone.setForeignKeyMap(new HashMap(this.foreignKeyMap));
  }
  if (uniqueKeys != null) {
    clone.setUniqueKeys(new ArrayList(this.uniqueKeys));
  }
  return clone;
}

public Object clone ( ) { TableDefinition clone = ( TableDefinition ) super . clone ( ) ; if ( fields != null ) { clone . setFields ( new ArrayList < FieldDefinition > ( fields . size ( ) ) ) ; for ( FieldDefinition fieldDef : getFields ( ) ) { clone . addField ( ( FieldDefinition ) fieldDef . clone ( ) ) ; } } if ( foreignKeyMap != null ) { clone . setForeignKeyMap ( new HashMap ( this . foreignKeyMap ) ) ; } if ( uniqueKeys != null ) { clone . setUniqueKeys ( new ArrayList ( this . uniqueKeys ) ) ; } return clone ; }
public : performs a deep copy of this table definition .
