org.datanucleus.store.rdbms.schema
Class RDBMSTableInfo

java.lang.Object
  extended by org.datanucleus.store.rdbms.schema.RDBMSTableInfo
All Implemented Interfaces:
org.datanucleus.store.schema.ListStoreSchemaData, org.datanucleus.store.schema.StoreSchemaData

public class RDBMSTableInfo
extends java.lang.Object
implements org.datanucleus.store.schema.ListStoreSchemaData

Representation of table column information in the datastore. Columns are stored as List-based, but also in a lookup Map keyed by the column name. Supports the properties :-


Constructor Summary
RDBMSTableInfo()
           
RDBMSTableInfo(java.sql.ResultSet rs)
          Constructor to create a table info definition for the current row of the passed ResultSet.
RDBMSTableInfo(java.lang.String catalog, java.lang.String schema, java.lang.String table)
          Constructor taking just the catalog, schema and table name directly.
 
Method Summary
 void addChild(org.datanucleus.store.schema.StoreSchemaData child)
          Method to add another column to the table schema.
 void addProperty(java.lang.String name, java.lang.Object value)
          Method to add a property for the table.
 void clearChildren()
          Method to remove all children.
 boolean equals(java.lang.Object obj)
          Indicates whether some object is "equal to" this one.
 org.datanucleus.store.schema.StoreSchemaData getChild(int position)
          Accessor for the column at the position.
 org.datanucleus.store.schema.StoreSchemaData getChild(java.lang.String key)
          Accessor for the column with a particular name.
 java.util.List getChildren()
          Accessor for the columns
 int getNumberOfChildren()
          Accessor for the number of columns in the schema for this table.
 org.datanucleus.store.schema.StoreSchemaData getParent()
           
 java.lang.Object getProperty(java.lang.String name)
          Accessor for a property of the table.
 int hashCode()
          Returns a hash code value for this object.
 void setParent(org.datanucleus.store.schema.StoreSchemaData parent)
           
 java.lang.String toString()
          Returns the string representation of this object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RDBMSTableInfo

public RDBMSTableInfo()

RDBMSTableInfo

public RDBMSTableInfo(java.lang.String catalog,
                      java.lang.String schema,
                      java.lang.String table)
Constructor taking just the catalog, schema and table name directly.

Parameters:
catalog - Catalog containing the table
schema - Schema containing the table
table - The table name

RDBMSTableInfo

public RDBMSTableInfo(java.sql.ResultSet rs)
Constructor to create a table info definition for the current row of the passed ResultSet.

Parameters:
rs - ResultSet (from DatabaseMetaData.getTables() for example).
Throws:
org.datanucleus.exceptions.NucleusDataStoreException - Thrown if an error occurs getting the information
Method Detail

addChild

public void addChild(org.datanucleus.store.schema.StoreSchemaData child)
Method to add another column to the table schema.

Specified by:
addChild in interface org.datanucleus.store.schema.ListStoreSchemaData
Parameters:
child - Column

clearChildren

public void clearChildren()
Method to remove all children.

Specified by:
clearChildren in interface org.datanucleus.store.schema.ListStoreSchemaData

getChild

public org.datanucleus.store.schema.StoreSchemaData getChild(int position)
Accessor for the column at the position.

Specified by:
getChild in interface org.datanucleus.store.schema.ListStoreSchemaData
Parameters:
position - Index of the column
Returns:
Column at the position

getChild

public org.datanucleus.store.schema.StoreSchemaData getChild(java.lang.String key)
Accessor for the column with a particular name.

Parameters:
key - Name of the column
Returns:
Column information

getChildren

public java.util.List getChildren()
Accessor for the columns

Specified by:
getChildren in interface org.datanucleus.store.schema.ListStoreSchemaData
Returns:
Column schema information

getNumberOfChildren

public int getNumberOfChildren()
Accessor for the number of columns in the schema for this table.

Specified by:
getNumberOfChildren in interface org.datanucleus.store.schema.ListStoreSchemaData
Returns:
Number of cols

addProperty

public void addProperty(java.lang.String name,
                        java.lang.Object value)
Method to add a property for the table.

Specified by:
addProperty in interface org.datanucleus.store.schema.StoreSchemaData
Parameters:
name - Name of property
value - Its value

getProperty

public java.lang.Object getProperty(java.lang.String name)
Accessor for a property of the table.

Specified by:
getProperty in interface org.datanucleus.store.schema.StoreSchemaData
Parameters:
name - Name of the property
Returns:
Its value, or null if not defined

getParent

public org.datanucleus.store.schema.StoreSchemaData getParent()
Specified by:
getParent in interface org.datanucleus.store.schema.ListStoreSchemaData

setParent

public void setParent(org.datanucleus.store.schema.StoreSchemaData parent)
Specified by:
setParent in interface org.datanucleus.store.schema.ListStoreSchemaData

equals

public final boolean equals(java.lang.Object obj)
Indicates whether some object is "equal to" this one. Two RDBMSTableInfo are considered equal if their catalog, schema, table are all equal.

Overrides:
equals in class java.lang.Object
Parameters:
obj - the reference object with which to compare
Returns:
true if this object is equal to the obj argument; false otherwise.

hashCode

public final int hashCode()
Returns a hash code value for this object.

Overrides:
hashCode in class java.lang.Object
Returns:
hash code

toString

public java.lang.String toString()
Returns the string representation of this object.

Overrides:
toString in class java.lang.Object
Returns:
string representation of this object.


Copyright © 2009. All Rights Reserved.