aspoev.manager.schema
Class ClassVersioningManager

java.lang.Object
  extended byaspoev.manager.schema.SchemaManager
      extended byaspoev.manager.schema.ClassVersioningManager
Direct Known Subclasses:
SchemaVersioningManager

public class ClassVersioningManager
extends SchemaManager


Field Summary
protected  java.util.HashMap typeMap
           
 
Fields inherited from class aspoev.manager.schema.SchemaManager
defaultSchema, reassignedTypes, SCHEMA_EXTENT, substitutibleTypes
 
Constructor Summary
ClassVersioningManager()
           
 
Method Summary
 void addType(TypeReferenceElement newType)
          A leaf node.
 TypeReferenceElement bindType(TypeReferenceElement type)
          This method recieves mostly types with version , and expects the implementation to bind a concrete version.
 boolean compareTypes(TypeReferenceElement one, TypeReferenceElement two)
          This method encapsulates the algorithm for type equality.
 void deprecateType(TypeReferenceElement removed)
           
 TypeReferenceElement getActiveType(TypeReferenceElement type)
           
 
Methods inherited from class aspoev.manager.schema.SchemaManager
alteredFieldReferenced, alteredMethodReferenced, assignableFrom, declareSubstitutable, fieldExposed, fieldOverridden, getActiveVersion, getEquivalentTypes, getReassignedType, getSchemaExtent, getSubstitutableTypes, getTypeExtent, isSubstitutibleFor, methodExposed, methodOverridden, print, reclassifyType, removedFieldReferenced, removedMethodReferenced, removeType, renamedMemberReferenced, renamedTypeReferenced, setSchemaExtent, transitionFrom, typeMismatch, unknownField, unknownMethod
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

typeMap

protected java.util.HashMap typeMap
Constructor Detail

ClassVersioningManager

public ClassVersioningManager()
Method Detail

getActiveType

public TypeReferenceElement getActiveType(TypeReferenceElement type)

addType

public void addType(TypeReferenceElement newType)
A leaf node.

Overrides:
addType in class SchemaManager

bindType

public TypeReferenceElement bindType(TypeReferenceElement type)
Description copied from class: SchemaManager
This method recieves mostly types with version , and expects the implementation to bind a concrete version. For most managers, this just involves returning the 'preferred,' or 'active' version of the type, however, since some implementations (ClassVersioning) do not have an 'active' version of types, this method forces them to pick one and go with it. Default implementation returns the 'active' version.

Overrides:
bindType in class SchemaManager

compareTypes

public boolean compareTypes(TypeReferenceElement one,
                            TypeReferenceElement two)
Description copied from class: SchemaManager
This method encapsulates the algorithm for type equality. Returns 'true' if two argument types are equal, false otherwise. The default implementation compares the namespaces, names, and versions of the types and returns true if all three are equal.

Overrides:
compareTypes in class SchemaManager

deprecateType

public void deprecateType(TypeReferenceElement removed)