com.objectwave.persist.mapping
Class MapInformation

java.lang.Object
  |
  +--com.objectwave.persist.AttributeTypeColumn
        |
        +--com.objectwave.persist.mapping.MapInformation
All Implemented Interfaces:
java.lang.Comparable

public class MapInformation
extends AttributeTypeColumn

Mapping information is unique for every class. We create one instance of this class for every persistent class we define. This class breaks down the Vector of the class description into it's individual parts for efficiency reasons.

Version:
$Id: MapInformation.java,v 2.1 2001/08/10 20:30:32 dave_hoag Exp $
Author:
Dave Hoag

Nested Class Summary
static class MapInformation.Test
           
 
Field Summary
static java.lang.Object aFakeField
          Description of the Field
 
Fields inherited from class com.objectwave.persist.AttributeTypeColumn
ATTRIBUTE, COLLECTION, FOREIGN, INSTANCE, joinFields, PLACEHOLDER, PRIMARYATT, TYPEATT
 
Constructor Summary
MapInformation(java.util.Vector v)
          Break down the vector into its mapping elements.
 
Method Summary
 AttributeTypeColumn[] getAttributeDescriptions()
           
 java.util.Vector getClassDescription()
           
 AttributeTypeColumn[] getCollectionDescriptions()
           
protected  AttributeTypeColumn[] getDescriptions(Type type, AttributeTypeColumn[] currentValues)
          Utility method to create the caches of our AttributeTypeColumns.
 AttributeTypeColumn[] getForeignKeyDescriptions()
           
 AttributeTypeColumn[] getInstanceLinkDescriptions()
           
 AttributeTypeColumn getPrimaryAttributeDescription()
           
 AttributeTypeColumn[] getPrimaryKeyDescriptions()
           
 
Methods inherited from class com.objectwave.persist.AttributeTypeColumn
addJoinField, compareTo, equals, getAttributeRelation, getCollectionAdapter, getCollectionRelation, getColumnName, getConstraint, getField, getForeignRelation, getInstanceRelation, getInstanceRelation, getJoinFields, getJoinOn, getPersistentType, getRelatedType, getType, getTypeAttributeRelation, getValue, getValue, setAsPrimary, setCollectionAdpater, setColumnName, setConstraint, setField, setJoinOn, setRelatedType, setType, setValue, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

aFakeField

public static java.lang.Object aFakeField
Description of the Field

Constructor Detail

MapInformation

public MapInformation(java.util.Vector v)
Break down the vector into its mapping elements.

Parameters:
v - java.util.Vector A description of how a class maps to a database table.
Method Detail

getPrimaryKeyDescriptions

public final AttributeTypeColumn[] getPrimaryKeyDescriptions()
Returns:
AttributeTypeColumn [] Field mapping for primary key links. The primary keys are sorted in their natural order.

getInstanceLinkDescriptions

public final AttributeTypeColumn[] getInstanceLinkDescriptions()
Returns:
AttributeTypeColumn [] Field mapping for instance links.

getForeignKeyDescriptions

public final AttributeTypeColumn[] getForeignKeyDescriptions()
Returns:
AttributeTypeColumn [] Field mapping for foreign key links.

getAttributeDescriptions

public final AttributeTypeColumn[] getAttributeDescriptions()
Returns:
AttributeTypeColumn [] Field mapping for attributes. Usually columns in a DB Table.

getCollectionDescriptions

public final AttributeTypeColumn[] getCollectionDescriptions()
Returns:
AttributeTypeColumn [] Field mapping for collection links.

getPrimaryAttributeDescription

public final AttributeTypeColumn getPrimaryAttributeDescription()
Returns:
AttributeTypeColumn The one and only map entry that represents a PrimaryKeyField.

getClassDescription

public final java.util.Vector getClassDescription()
Returns:
The ClassDescription value

getDescriptions

protected final AttributeTypeColumn[] getDescriptions(Type type,
                                                      AttributeTypeColumn[] currentValues)
Utility method to create the caches of our AttributeTypeColumns. We frequently only need one column type or another, so we cache these column break outs in variables. This method does the breaking out.

Parameters:
type - Description of Parameter
currentValues - Description of Parameter
Returns:
The Descriptions value