SolarMetric Kodo JDO 3.1.6 generated on August 25 2004

kodo.jdbc.meta
Class ColumnClassIndicator

java.lang.Object
  |
  +--kodo.jdbc.meta.Indicator
        |
        +--kodo.jdbc.meta.ClassIndicator
              |
              +--kodo.jdbc.meta.ColumnClassIndicator
All Implemented Interfaces:
Mapping
Direct Known Subclasses:
InValueClassIndicator

public abstract class ColumnClassIndicator
extends ClassIndicator

Abstract base class for class indicators that use a column to hold class information.


Constructor Summary
ColumnClassIndicator()
           
 
Method Summary
 void addMappingInfoAttributes(Collection attrs)
          Add all mapping attributes names used by this mapping to the given collection.
 void fromMappingInfo(MappingInfo info, boolean adapt)
          The default implementation will raise warnings for any mapping attributes that are declared but not in the list of the valid attributes for this mapping.
 Class getClass(JDBCStoreManager store, Result res)
          Return the class for the current result row.
protected abstract  Class getClass(Object indicator, ClassLoader loader)
          Return the class for the given column value.
protected abstract  Object getClassIndicator(ClassMapping mapping)
          Return the value the column should take.
 Column getColumn()
          Return the column used to hold class info.
protected abstract  int getDataStoreTypeCode()
          Return the FieldMapping type code for the type of data stored by this indicator.
protected  int getJDBCType()
          Return the JDBC type of the column for this indicator.
 void insert(KodoStateManager sm, RowManager rm)
          Set values for the mapping into the proper rows.
 boolean map()
          Map a new instance of this mapping type.
 void refSchemaComponents()
          Increment the reference count of all used schema components.
 boolean select(Select sel)
          Select the virtual row columns of this mapping.
 void setColumn(Column col)
          Set the column used to hold class info.
 void toMappingInfo(MappingInfo info)
          Serialize this mapping to a simple MappingInfo instance for transfer to XML or some other format.
 
Methods inherited from class kodo.jdbc.meta.ClassIndicator
addClassConditions, getClassLoader, getDefaults, loadSubclasses, newInstance, setSubclassesLoaded, subclassesLoaded, toString
 
Methods inherited from class kodo.jdbc.meta.Indicator
delete, delete, getDBDictionary, getMappingRepository, getOwnerMapping, getTable, insert, isCustomDelete, isCustomInsert, isCustomUpdate, reverseMap, setOwnerMapping, update, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface kodo.jdbc.meta.Mapping
getMappingType
 

Constructor Detail

ColumnClassIndicator

public ColumnClassIndicator()
Method Detail

getColumn

public Column getColumn()
Return the column used to hold class info.

setColumn

public void setColumn(Column col)
Set the column used to hold class info.

getDataStoreTypeCode

protected abstract int getDataStoreTypeCode()
Return the FieldMapping type code for the type of data stored by this indicator.

getJDBCType

protected int getJDBCType()
Return the JDBC type of the column for this indicator. Defaults to the preferred type for getDataStoreTypeCode().

getClassIndicator

protected abstract Object getClassIndicator(ClassMapping mapping)
Return the value the column should take.

getClass

protected abstract Class getClass(Object indicator,
                                  ClassLoader loader)
                           throws ClassNotFoundException
Return the class for the given column value.

toMappingInfo

public void toMappingInfo(MappingInfo info)
Description copied from interface: Mapping
Serialize this mapping to a simple MappingInfo instance for transfer to XML or some other format.

fromMappingInfo

public void fromMappingInfo(MappingInfo info,
                            boolean adapt)
Description copied from class: Indicator
The default implementation will raise warnings for any mapping attributes that are declared but not in the list of the valid attributes for this mapping.
Overrides:
fromMappingInfo in class Indicator
Following copied from class: kodo.jdbc.meta.Indicator
See Also:
Indicator.addMappingInfoAttributes(java.util.Collection)

addMappingInfoAttributes

public void addMappingInfoAttributes(Collection attrs)
Description copied from interface: Mapping
Add all mapping attributes names used by this mapping to the given collection. For foreign key attributes, add the prefix.
Overrides:
addMappingInfoAttributes in class Indicator

map

public boolean map()
Description copied from interface: Mapping
Map a new instance of this mapping type. If the underlying metadata cannot be mapped using this type, return false.

refSchemaComponents

public void refSchemaComponents()
Description copied from interface: Mapping
Increment the reference count of all used schema components.
Overrides:
refSchemaComponents in class Indicator

insert

public void insert(KodoStateManager sm,
                   RowManager rm)
            throws SQLException
Description copied from interface: Mapping
Set values for the mapping into the proper rows. For class mappings, this method will be called only after the corresponding method has been called for all fields of this mapping.
Overrides:
insert in class Indicator

select

public boolean select(Select sel)
Description copied from class: Indicator
Select the virtual row columns of this mapping. Returns false by default.
Overrides:
select in class Indicator
Following copied from class: kodo.jdbc.meta.Indicator
Returns:
true if anything was selected; false otherwise

getClass

public Class getClass(JDBCStoreManager store,
                      Result res)
               throws SQLException,
                      ClassNotFoundException
Description copied from class: ClassIndicator
Return the class for the current result row.
Overrides:
getClass in class ClassIndicator

SolarMetric Kodo JDO 3.1.6 generated on August 25 2004

Copyright 2001,2002 SolarMetric, Inc. All Rights Reserved.