com.sun.jdo.api.persistence.enhancer.meta
Class JDOMetaDataModelImpl

java.lang.Object
  extended by com.sun.jdo.api.persistence.enhancer.util.Assertion
      extended by com.sun.jdo.api.persistence.enhancer.util.Support
          extended by com.sun.jdo.api.persistence.enhancer.meta.JDOMetaDataModelImpl
All Implemented Interfaces:
JDOMetaData

public class JDOMetaDataModelImpl
extends Support
implements JDOMetaData

Provides the JDO meta information based on a JDO meta model.


Field Summary
protected  Model model
           
protected  PrintWriter out
           
 
Fields inherited from class com.sun.jdo.api.persistence.enhancer.util.Support
timer
 
Fields inherited from interface com.sun.jdo.api.persistence.enhancer.meta.JDOMetaData
javaLangCloneablePath, JDOExternalPath, JDOFlagsFieldName, JDOFlagsFieldSig, JDOFlagsFieldType, JDOInstanceCallbacksName, JDOInstanceCallbacksPath, JDOInstanceCallbacksSig, JDOInstanceCallbacksType, JDOPath, JDOPersistenceCapableName, JDOPersistenceCapablePath, JDOPersistenceCapableSig, JDOPersistenceCapableType, JDOPersistenceManagerName, JDOPersistenceManagerPath, JDOPersistenceManagerSig, JDOPersistenceManagerType, JDOSecondClassObjectBaseName, JDOSecondClassObjectBasePath, JDOSecondClassObjectBaseSig, JDOSecondClassObjectBaseType, JDOStateManagerFieldName, JDOStateManagerFieldSig, JDOStateManagerFieldType, JDOStateManagerName, JDOStateManagerPath, JDOStateManagerSig, JDOStateManagerType
 
Constructor Summary
JDOMetaDataModelImpl(Model model)
          Creates an instance.
JDOMetaDataModelImpl(Model model, PrintWriter out)
           
 
Method Summary
 int getFieldNo(String classPath, String fieldName)
          Returns the unique field index of a declared, persistent field of a class.
 String[] getManagedFields(String classPath)
          Returns an array of field names of all declared persistent and transactional fields of a class.
 String getPersistenceCapableRootClass(String classPath)
          Returns the name of the persistence-capable root class of a class.
 String getSuperClass(String classPath)
          Returns the name of the superclass of a class.
 boolean isDefaultFetchGroupField(String classPath, String fieldName)
          Tests whether a field of a class is known to be part of the Default Fetch Group.
 boolean isMutableSecondClassObjectType(String classPath)
          Tests whether a type is known for Mutable Second Class Objects.
 boolean isPersistenceCapableClass(String classPath)
          Tests whether a class is known to be persistence-capable.
 boolean isPersistenceCapableRootClass(String classPath)
          Tests whether a class is known as a persistence-capable root class.
 boolean isPersistentField(String classPath, String fieldName)
          Tests whether a field of a class is known to be persistent.
 boolean isPrimaryKeyField(String classPath, String fieldName)
          Tests whether a field of a class is known to be Primary Key.
 boolean isSecondClassObjectType(String classPath)
          Tests whether a type is known for Second Class Objects.
 boolean isTransactionalField(String classPath, String fieldName)
          Tests whether a field of a class is known to be transactional.
 boolean isTransientClass(String classPath)
          Tests whether a class is known to be transient.
protected static String nameToPath(String className)
           
protected static String pathToName(String classPath)
           
 
Methods inherited from class com.sun.jdo.api.persistence.enhancer.util.Support
getI18N, getI18N, getI18N, getI18N, getI18N, getI18N
 
Methods inherited from class com.sun.jdo.api.persistence.enhancer.util.Assertion
affirm, affirm, affirm, affirm
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

out

protected final PrintWriter out

model

protected Model model
Constructor Detail

JDOMetaDataModelImpl

public JDOMetaDataModelImpl(Model model)
Creates an instance.


JDOMetaDataModelImpl

public JDOMetaDataModelImpl(Model model,
                            PrintWriter out)
                     throws JDOMetaDataUserException,
                            JDOMetaDataFatalError
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError
Method Detail

isTransientClass

public boolean isTransientClass(String classPath)
                         throws JDOMetaDataUserException,
                                JDOMetaDataFatalError
Tests whether a class is known to be transient.

Specified by:
isTransientClass in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
Returns:
true if this class is known to be transient; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isPersistenceCapableClass

public boolean isPersistenceCapableClass(String classPath)
                                  throws JDOMetaDataUserException,
                                         JDOMetaDataFatalError
Tests whether a class is known to be persistence-capable.

Specified by:
isPersistenceCapableClass in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
Returns:
true if this class is persistence-capable; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isPersistenceCapableRootClass

public boolean isPersistenceCapableRootClass(String classPath)
                                      throws JDOMetaDataUserException,
                                             JDOMetaDataFatalError
Tests whether a class is known as a persistence-capable root class.

Specified by:
isPersistenceCapableRootClass in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
Returns:
true if this class is persistence-capable and does not derive from another persistence-capable class; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

getPersistenceCapableRootClass

public String getPersistenceCapableRootClass(String classPath)
                                      throws JDOMetaDataUserException,
                                             JDOMetaDataFatalError
Returns the name of the persistence-capable root class of a class.

Specified by:
getPersistenceCapableRootClass in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
Returns:
the name of the least-derived persistence-capable class that is equal to or a super class of the argument class; if the argument class is not persistence-capable, null is returned.
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

getSuperClass

public String getSuperClass(String classPath)
                     throws JDOMetaDataUserException,
                            JDOMetaDataFatalError
Returns the name of the superclass of a class.

Specified by:
getSuperClass in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
Returns:
the name of the superclass.
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isSecondClassObjectType

public boolean isSecondClassObjectType(String classPath)
                                throws JDOMetaDataUserException,
                                       JDOMetaDataFatalError
Tests whether a type is known for Second Class Objects.

Specified by:
isSecondClassObjectType in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the type
Returns:
true if this type is known for second class objects; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isMutableSecondClassObjectType

public boolean isMutableSecondClassObjectType(String classPath)
                                       throws JDOMetaDataUserException,
                                              JDOMetaDataFatalError
Tests whether a type is known for Mutable Second Class Objects.

Specified by:
isMutableSecondClassObjectType in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the type
Returns:
true if this type is known for mutable second class objects; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isPersistentField

public boolean isPersistentField(String classPath,
                                 String fieldName)
                          throws JDOMetaDataUserException,
                                 JDOMetaDataFatalError
Tests whether a field of a class is known to be persistent.

Specified by:
isPersistentField in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
fieldName - the name of the field
Returns:
true if this field is known to be persistent; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isTransactionalField

public boolean isTransactionalField(String classPath,
                                    String fieldName)
                             throws JDOMetaDataUserException,
                                    JDOMetaDataFatalError
Tests whether a field of a class is known to be transactional.

Specified by:
isTransactionalField in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
fieldName - the name of the field
Returns:
true if this field is known to be transactional; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isPrimaryKeyField

public boolean isPrimaryKeyField(String classPath,
                                 String fieldName)
                          throws JDOMetaDataUserException,
                                 JDOMetaDataFatalError
Tests whether a field of a class is known to be Primary Key.

Specified by:
isPrimaryKeyField in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
fieldName - the name of the field
Returns:
true if this field is known to be primary key; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

isDefaultFetchGroupField

public boolean isDefaultFetchGroupField(String classPath,
                                        String fieldName)
                                 throws JDOMetaDataUserException,
                                        JDOMetaDataFatalError
Tests whether a field of a class is known to be part of the Default Fetch Group. Please note that for a relationship field, this method always returns false.

Specified by:
isDefaultFetchGroupField in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
fieldName - the name of the field
Returns:
true if this field is known to be part of the default fetch group; otherwise false
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

getFieldNo

public int getFieldNo(String classPath,
                      String fieldName)
               throws JDOMetaDataUserException,
                      JDOMetaDataFatalError
Returns the unique field index of a declared, persistent field of a class.

Specified by:
getFieldNo in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
fieldName - the name of the field
Returns:
the non-negative, unique field index
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

getManagedFields

public String[] getManagedFields(String classPath)
                          throws JDOMetaDataUserException,
                                 JDOMetaDataFatalError
Returns an array of field names of all declared persistent and transactional fields of a class.

Specified by:
getManagedFields in interface JDOMetaData
Parameters:
classPath - the JVM-qualified name of the class
Returns:
an array of all declared persistent and transactional fields of a class
Throws:
JDOMetaDataUserException
JDOMetaDataFatalError

pathToName

protected static String pathToName(String classPath)

nameToPath

protected static String nameToPath(String className)


Copyright © 2012. All Rights Reserved.