org.castor.cpa.persistence.sql.engine.info
Class TableLink

java.lang.Object
  extended by org.castor.cpa.persistence.sql.engine.info.TableLink

public final class TableLink
extends Object

Class representing relations between tables. There are 3 possible types of tableLinks: SIMPLE: Used for 1:1 relations. No join will be added to the query. Just the startColumns will be added to the query. MANY_KEY: Used to express 1:m relations. Join will be added to the query. MANY_TABLE: Used to express n:m relations. Join will be added to the query.

Version:
$Revision: 8469 $ $Date: 2006-04-25 15:08:23 -0600 (Tue, 25 Apr 2006) $
Author:
Dennis Butterstein, Ralf Joachim

Field Summary
static int MANY_TO_MANY
          Constant defining many table relation (n:m).
static int REFERED_BY
          Constant defining many key relation (1:m).
static int REFERS_TO
          Constant defining simple table-link (1:1).
 
Constructor Summary
protected TableLink(TableInfo targetTable, int relationType, String tableAlias, List<ColumnInfo> startColumns, int fieldIndex)
          Constructor.
 
Method Summary
 void addTargetCol(ColumnInfo col)
          Method adding a single targetCol.
 void addTargetCols(List<ColumnInfo> cols)
          Method adding a list of targetCols.
 int getFieldIndex()
          Method returning fieldIndex currently set.
 List<String> getManyKey()
          Method returning many key.
 int getRelationType()
          Method returning relation type currently set.
 List<ColumnInfo> getStartCols()
          Method returning a list of start columns.
 String getTableAlias()
          Method returning the table alias to be used for a potential join.
 List<ColumnInfo> getTargetCols()
          Method returning a list of target columns.
 TableInfo getTargetTable()
          Method returning the right table of the join.
 void setManyKey(List<String> manyKey)
          Method given setting many key.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

REFERS_TO

public static final int REFERS_TO
Constant defining simple table-link (1:1).

See Also:
Constant Field Values

REFERED_BY

public static final int REFERED_BY
Constant defining many key relation (1:m).

See Also:
Constant Field Values

MANY_TO_MANY

public static final int MANY_TO_MANY
Constant defining many table relation (n:m).

See Also:
Constant Field Values
Constructor Detail

TableLink

protected TableLink(TableInfo targetTable,
                    int relationType,
                    String tableAlias,
                    List<ColumnInfo> startColumns,
                    int fieldIndex)
Constructor.

Parameters:
targetTable - The right table of the join.
relationType - The type of the relation.
tableAlias - Alias of the table.
startColumns - Columns of the left table needed for joins.
fieldIndex - Index of the startColumns.
Method Detail

getStartCols

public List<ColumnInfo> getStartCols()
Method returning a list of start columns.

Returns:
List of start columns.

addTargetCol

public void addTargetCol(ColumnInfo col)
Method adding a single targetCol.

Parameters:
col - Column to be added as a target column.

addTargetCols

public void addTargetCols(List<ColumnInfo> cols)
Method adding a list of targetCols.

Parameters:
cols - List of columns to be added as target columns.

getTargetCols

public List<ColumnInfo> getTargetCols()
Method returning a list of target columns.

Returns:
List of target columns of the join.

getTargetTable

public TableInfo getTargetTable()
Method returning the right table of the join.

Returns:
TargetTable of the join.

getTableAlias

public String getTableAlias()
Method returning the table alias to be used for a potential join.

Returns:
The tableAlias to be used for a join.

getRelationType

public int getRelationType()
Method returning relation type currently set.

Returns:
Relation type currently set.

setManyKey

public void setManyKey(List<String> manyKey)
Method given setting many key.

Parameters:
manyKey - The many key to be set.

getManyKey

public List<String> getManyKey()
Method returning many key.

Returns:
Many key currently set.

getFieldIndex

public int getFieldIndex()
Method returning fieldIndex currently set.

Returns:
FieldIndex currently set.


Copyright © 2011. All Rights Reserved.