|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.cayenne.access.types.ExtendedTypeMap
public class ExtendedTypeMap
Stores ExtendedTypes, implementing an algorithm to determine the right type for a given
Java class. See getRegisteredType(String)
documentation for lookup algorithm
details.
Field Summary | |
---|---|
protected ExtendedType |
defaultType
|
protected Map<String,ExtendedType> |
typeMap
|
Constructor Summary | |
---|---|
ExtendedTypeMap()
Creates new ExtendedTypeMap, populating it with default JDBC-compatible types. |
Method Summary | |
---|---|
void |
addFactory(ExtendedTypeFactory factory)
Adds an ExtendedTypeFactory that will be consulted if no direct mapping for a given class exists. |
protected ExtendedType |
createType(String className)
Returns an ExtendedType for specific Java classes. |
ExtendedType |
getDefaultType()
Returns a default ExtendedType that is used to handle unmapped types. |
protected ExtendedType |
getDefaultType(String javaClassName)
Deprecated. since 3.0 - use createType(String) instead. |
Collection<ExtendedTypeFactory> |
getFactories()
Deprecated. since 3.0 unused |
ExtendedType |
getRegisteredType(Class<?> javaClass)
Returns a type registered for the class name. |
ExtendedType |
getRegisteredType(String javaClassName)
Returns a guaranteed non-null ExtendedType instance for a given Java class name. |
String[] |
getRegisteredTypeNames()
Returns array of Java class names supported by Cayenne for JDBC mapping. |
protected void |
initDefaultFactories()
Registers default factories for creating enum types and serializable types. |
protected void |
initDefaultTypes()
Registers default extended types. |
void |
registerType(ExtendedType type)
Adds a new type to the list of registered types. |
void |
removeFactory(ExtendedTypeFactory factory)
Removes a factory from the registered factories if it was previously added. |
void |
unregisterType(String javaClassName)
Removes registered ExtendedType object corresponding to javaClassName
parameter. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final Map<String,ExtendedType> typeMap
protected ExtendedType defaultType
Constructor Detail |
---|
public ExtendedTypeMap()
Method Detail |
---|
protected void initDefaultTypes()
protected void initDefaultFactories()
public Collection<ExtendedTypeFactory> getFactories()
public void addFactory(ExtendedTypeFactory factory)
Note that the order in which factories are added is important, as factories are consulted in turn when an ExtendedType is looked up, and lookup is stopped when any factory provides a non-null type.
public void removeFactory(ExtendedTypeFactory factory)
public void registerType(ExtendedType type)
type
argument, the old handler
is overridden by the new one.
public ExtendedType getDefaultType()
public ExtendedType getRegisteredType(String javaClassName)
ExtendedTypeFactory
instances registered by users. If a factory returns a
non-null type, it is returned to the user and the rest of the factories are
ignored.ExtendedTypeFactory
instances that can dynamically construct extended types for serializable objects
and JDK 1.5 enums.
public ExtendedType getRegisteredType(Class<?> javaClass)
public void unregisterType(String javaClassName)
javaClassName
parameter.
public String[] getRegisteredTypeNames()
protected ExtendedType getDefaultType(String javaClassName)
createType(String)
instead.
protected ExtendedType createType(String className)
ExtendedTypeFactory
factories to instantiate the
ExtendedType. All primitive classes must be converted to the corresponding Java
classes by the callers.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |