Package org.datanucleus.api.jdo
Class DataNucleusHelperJDO
- java.lang.Object
-
- org.datanucleus.api.jdo.DataNucleusHelperJDO
-
public class DataNucleusHelperJDO extends Object
Helper class for accessing DataNucleus internals from a JDO environment. This is a supplement to the JDO API class JDOHelper.
-
-
Constructor Summary
Constructors Constructor Description DataNucleusHelperJDO()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static String[]getClassesWithMetaData(javax.jdo.PersistenceManagerFactory pmf)Accessor for the names of the classes that have MetaData for this PMF.static org.datanucleus.identity.SingleFieldIdgetDataNucleusIdentityForSingleFieldIdentity(javax.jdo.identity.SingleFieldIdentity sfid)static Object[]getDetachedStateForObject(Object obj)Accessor for the jdoDetachedState field of a detached object.static String[]getDirtyFields(Object obj, javax.jdo.PersistenceManager pm)Accessor for the names of the dirty fields of the persistable object.static int[]getFieldsInFetchPlanForClass(javax.jdo.PersistenceManager pm, String className)Convenience accessor for the fields of a specified class that are currently in the FetchPlan.static String[]getLoadedFields(Object obj, javax.jdo.PersistenceManager pm)Accessor for the names of the loaded fields of the persistable object.static org.datanucleus.metadata.ClassMetaDatagetMetaDataForClass(javax.jdo.PersistenceManagerFactory pmf, Class cls)Accessor for the MetaData for the specified classstatic StringgetObjectIdClassForInputIdClass(String objectIdClass)static JDOQueryCachegetQueryResultCache(javax.jdo.PersistenceManagerFactory pmf)Convenience accessor for the query results cache.static javax.jdo.identity.SingleFieldIdentitygetSingleFieldIdentityForDataNucleusIdentity(org.datanucleus.identity.SingleFieldId dnid, Class targetClass)Method to convert a DataNucleus "identity" for a single-field application id type to the JDO provided SingleFieldIdentity type.static BooleanisFieldDirty(Object obj, String memberName, javax.jdo.PersistenceManager pm)Accessor for whether the specified member (field/property) of the passed persistable object is dirty.static BooleanisFieldLoaded(Object obj, String memberName, javax.jdo.PersistenceManager pm)Accessor for whether the specified member (field/property) of the passed persistable object is loaded.
-
-
-
Method Detail
-
getQueryResultCache
public static JDOQueryCache getQueryResultCache(javax.jdo.PersistenceManagerFactory pmf)
Convenience accessor for the query results cache.- Parameters:
pmf- The PMF- Returns:
- The Query results cache
-
getFieldsInFetchPlanForClass
public static int[] getFieldsInFetchPlanForClass(javax.jdo.PersistenceManager pm, String className)Convenience accessor for the fields of a specified class that are currently in the FetchPlan.- Parameters:
pm- Persistence ManagerclassName- Name of the class- Returns:
- The fields that are in the FetchPlan
-
getSingleFieldIdentityForDataNucleusIdentity
public static javax.jdo.identity.SingleFieldIdentity getSingleFieldIdentityForDataNucleusIdentity(org.datanucleus.identity.SingleFieldId dnid, Class targetClass)Method to convert a DataNucleus "identity" for a single-field application id type to the JDO provided SingleFieldIdentity type. TODO The targetClass "name" is part of the dnid, so could minimise the input args possibly- Parameters:
dnid- DataNucleus identitytargetClass- The target class- Returns:
- The JDO SingleFieldIdentity
-
getDataNucleusIdentityForSingleFieldIdentity
public static org.datanucleus.identity.SingleFieldId getDataNucleusIdentityForSingleFieldIdentity(javax.jdo.identity.SingleFieldIdentity sfid)
-
getObjectIdClassForInputIdClass
public static String getObjectIdClassForInputIdClass(String objectIdClass)
-
getMetaDataForClass
public static org.datanucleus.metadata.ClassMetaData getMetaDataForClass(javax.jdo.PersistenceManagerFactory pmf, Class cls)Accessor for the MetaData for the specified class- Parameters:
pmf- PersistenceManager factorycls- The class- Returns:
- The MetaData for the class
-
getClassesWithMetaData
public static String[] getClassesWithMetaData(javax.jdo.PersistenceManagerFactory pmf)
Accessor for the names of the classes that have MetaData for this PMF.- Parameters:
pmf- The PMF- Returns:
- The class names
-
getDetachedStateForObject
public static Object[] getDetachedStateForObject(Object obj)
Accessor for the jdoDetachedState field of a detached object. The returned array is made up of :- 0 - the identity of the object
- 1 - the version of the object (upon detach)
- 2 - loadedFields BitSet
- 3 - dirtyFields BitSet
- Parameters:
obj- The detached object- Returns:
- The detached state
-
getDirtyFields
public static String[] getDirtyFields(Object obj, javax.jdo.PersistenceManager pm)
Accessor for the names of the dirty fields of the persistable object.- Parameters:
obj- The persistable objectpm- The Persistence Manager (only required if the object is detached)- Returns:
- Names of the dirty fields
-
getLoadedFields
public static String[] getLoadedFields(Object obj, javax.jdo.PersistenceManager pm)
Accessor for the names of the loaded fields of the persistable object.- Parameters:
obj- Persistable objectpm- The Persistence Manager (only required if the object is detached)- Returns:
- Names of the loaded fields
-
isFieldLoaded
public static Boolean isFieldLoaded(Object obj, String memberName, javax.jdo.PersistenceManager pm)
Accessor for whether the specified member (field/property) of the passed persistable object is loaded.- Parameters:
obj- The persistable objectmemberName- Name of the field/propertypm- PersistenceManager (if the object is detached)- Returns:
- Whether the member is loaded
-
isFieldDirty
public static Boolean isFieldDirty(Object obj, String memberName, javax.jdo.PersistenceManager pm)
Accessor for whether the specified member (field/property) of the passed persistable object is dirty.- Parameters:
obj- The persistable objectmemberName- Name of the field/propertypm- PersistenceManager (if the object is detached)- Returns:
- Whether the member is dirty
-
-