Package org.apache.openjpa.enhance
Class PCRegistry
java.lang.Object
org.apache.openjpa.enhance.PCRegistry
Tracks registered persistence-capable classes.
- Since:
- 0.4.0
- Author:
- Abe White
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceListener for persistent class registration events. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidRegister aPCRegistry.RegisterClassListener.static voidcopyKeyFieldsFromObjectId(Class<?> pcClass, FieldConsumer fm, Object oid) Copy fields to an outside source from the key fields in the identity object.static voidcopyKeyFieldsToObjectId(Class<?> pcClass, FieldSupplier fm, Object oid) Copy fields from an outside source to the key fields in the identity object.static voidDe-Register all metadata associated with the given ClassLoader.static String[]getFieldNames(Class<?> pcClass) Get the field names for aPersistenceCapableclass.static Class<?>[]getFieldTypes(Class<?> pcClass) Get the field types for aPersistenceCapableclass.static Class<?>Return the persistence-capable type fortype.static Class<?>getPersistentSuperclass(Class<?> pcClass) Return the persistent superclass for aPersistenceCapableclass, or null if none.static Collection<Class<?>>Returns a collection of class objects of the registered persistence-capable classes.static StringgetTypeAlias(Class<?> pcClass) Return the alias for the given type.static booleanisRegistered(Class<?> cls) Returnstrueif the given class is already registered.static PersistenceCapablenewInstance(Class<?> pcClass, StateManager sm, boolean clear) Create a new instance of the class and assign its state manager.static PersistenceCapablenewInstance(Class<?> pcClass, StateManager sm, Object oid, boolean clear) Create a new instance of the class and assign its state manager and oid.static ObjectnewObjectId(Class<?> pcClass) Create a new identity object for the givenPersistenceCapableclass.static ObjectnewObjectId(Class<?> pcClass, String str) Create a new identity object for the givenPersistenceCapableclass, using theStringform of the constructor.static voidregister(Class<?> pcClass, String[] fieldNames, Class<?>[] fieldTypes, byte[] fieldFlags, Class<?> sup, String alias, PersistenceCapable pc) Register metadata by class.static booleanRemoves aPCRegistry.RegisterClassListener.
-
Constructor Details
-
PCRegistry
public PCRegistry()
-
-
Method Details
-
addRegisterClassListener
Register aPCRegistry.RegisterClassListener. -
removeRegisterClassListener
Removes aPCRegistry.RegisterClassListener. -
getFieldNames
Get the field names for aPersistenceCapableclass. -
getFieldTypes
Get the field types for aPersistenceCapableclass. -
getPersistentSuperclass
Return the persistent superclass for aPersistenceCapableclass, or null if none. The superclass may or may not implementPersistenceCapable, depending on the access type of the class. -
newInstance
Create a new instance of the class and assign its state manager. The new instance has its flags set toLOAD_REQUIRED. -
newInstance
public static PersistenceCapable newInstance(Class<?> pcClass, StateManager sm, Object oid, boolean clear) Create a new instance of the class and assign its state manager and oid. The new instance has its flags set toLOAD_REQUIRED. -
getPCType
Return the persistence-capable type fortype. This might be a generated subclass oftype.- Since:
- 1.1.0
-
newObjectId
Create a new identity object for the givenPersistenceCapableclass. -
newObjectId
Create a new identity object for the givenPersistenceCapableclass, using theStringform of the constructor. -
getTypeAlias
Return the alias for the given type. -
copyKeyFieldsToObjectId
Copy fields from an outside source to the key fields in the identity object. -
copyKeyFieldsFromObjectId
Copy fields to an outside source from the key fields in the identity object. -
register
public static void register(Class<?> pcClass, String[] fieldNames, Class<?>[] fieldTypes, byte[] fieldFlags, Class<?> sup, String alias, PersistenceCapable pc) Register metadata by class.- Parameters:
fieldTypes- managed field typesfieldFlags- managed field flagssup- the most immediate persistent superclasspcClass- thePersistenceCapableclassfieldNames- managed field namesalias- the class aliaspc- an instance of the class, if not abstract
-
deRegister
De-Register all metadata associated with the given ClassLoader. Allows ClassLoaders to be garbage collected.- Parameters:
cl- the ClassLoader
-
getRegisteredTypes
Returns a collection of class objects of the registered persistence-capable classes. -
isRegistered
Returnstrueif the given class is already registered.
-