Package org.castor.cpa.util
Class JDOClassDescriptorResolverImpl
java.lang.Object
org.castor.cpa.util.JDOClassDescriptorResolverImpl
- All Implemented Interfaces:
JDOClassDescriptorResolver,ClassDescriptorResolver
JDO-specific
instance that provides
functionality to find or "resolve"
invalid reference
ClassDescriptorResolver
ClassDescriptors from a given
class (name).- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreates an instance of this class, with no classed manually added. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a givenClassinstance manually, so that it can be loaded from the file system.voidaddPackage(String packageName) Adds a given package name manually, so that class descriptors can be loaded from this package (from the file system).Returns an iterator over all the known descriptors in the original order they have been added.Returns theClassLoaderinstance as used internally.Note: This method will be removed soon (kv).voidregisterDescriptor(Class<?> type, ClassDescriptor classDescriptor) Registers aClassDescriptorwith the descriptor cache.Returns the ClassDescriptor for the given class using the following strategy.
Lookup the class descriptor cache CallClassResolutionByMappingLoadercommand CallClassResolutionByFilecommandReturns the ClassDescriptor for the given class.voidsetMappingLoader(MappingLoader mappingLoader) Sets the mapping loader for this ClassDescriptorResolver.
-
Field Details
-
_classes
List of manually added domainClasses. -
_packages
List of manually added package names.
-
-
Constructor Details
-
JDOClassDescriptorResolverImpl
public JDOClassDescriptorResolverImpl()Creates an instance of this class, with no classed manually added.
-
-
Method Details
-
resolve
Returns the ClassDescriptor for the given class.- Specified by:
resolvein interfaceJDOClassDescriptorResolver- Parameters:
type- the class name to find the ClassDescriptor for- Returns:
- the ClassDescriptor for the given class
- Throws:
ResolverException- Indicates that the givenClasscannot be resolved.
-
resolve
Returns the ClassDescriptor for the given class using the following strategy.
- Lookup the class descriptor cache
- Call
ClassResolutionByMappingLoadercommand - Call
ClassResolutionByFilecommand
- Specified by:
resolvein interfaceClassDescriptorResolver- Parameters:
type- the Class to find the ClassDescriptor for- Returns:
- the ClassDescriptor for the given class, null if not found
- Throws:
ResolverException- Indicates that the givenClasscannot be resolved.
-
registerDescriptor
Registers aClassDescriptorwith the descriptor cache.- Specified by:
registerDescriptorin interfaceJDOClassDescriptorResolver- Parameters:
type- Type of the class described by theClassDescriptorto register.classDescriptor- TheClassDescriptorto register with the cache.
-
getMappingLoader
Note: This method will be removed soon (kv).- Specified by:
getMappingLoaderin interfaceClassDescriptorResolver
-
setMappingLoader
Sets the mapping loader for this ClassDescriptorResolver. Note: This method will be removed soon (kv).- Specified by:
setMappingLoaderin interfaceClassDescriptorResolver
-
addClass
Adds a givenClassinstance manually, so that it can be loaded from the file system.- Specified by:
addClassin interfaceJDOClassDescriptorResolver- Parameters:
domainClass- A givenClassinstance.
-
addPackage
Adds a given package name manually, so that class descriptors can be loaded from this package (from the file system).- Specified by:
addPackagein interfaceJDOClassDescriptorResolver- Parameters:
packageName- A given package name.
-
descriptorIterator
Returns an iterator over all the known descriptors in the original order they have been added. Each element is of typeClassDescriptor.- Specified by:
descriptorIteratorin interfaceJDOClassDescriptorResolver- Returns:
- an
Iteratorover all the known JDO class descriptors.
-
getClassLoader
Returns theClassLoaderinstance as used internally.- Specified by:
getClassLoaderin interfaceJDOClassDescriptorResolver- Returns:
- The
ClassLoaderinstance used internally.
-