org.apache.openjpa.persistence
Class PersistenceMetaDataDefaults

java.lang.Object
  extended by org.apache.openjpa.meta.AbstractMetaDataDefaults
      extended by org.apache.openjpa.persistence.PersistenceMetaDataDefaults
All Implemented Interfaces:
CallbackModes, MetaDataDefaults

public class PersistenceMetaDataDefaults
extends AbstractMetaDataDefaults

JPA-based metadata defaults.

Author:
Patrick Linskey, Abe White, Pinaki Poddar

Field Summary
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.AnnotatedFilter annotatedFilter
           
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.AccessFilter fieldAccessFilter
           
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.MemberFilter fieldFilter
           
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.GetterFilter getterFilter
           
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.MemberFilter methodFilter
           
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.TransientFilter nonTransientFilter
           
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.AccessFilter propertyAccessFilter
          Set of Inclusion Filters based on member type, access type or transient annotations.
protected  org.apache.openjpa.persistence.PersistenceMetaDataDefaults.SetterFilter setterFilter
           
 
Fields inherited from interface org.apache.openjpa.event.CallbackModes
CALLBACK_FAIL_FAST, CALLBACK_IGNORE, CALLBACK_LOG, CALLBACK_RETHROW, CALLBACK_ROLLBACK
 
Constructor Summary
PersistenceMetaDataDefaults()
           
 
Method Summary
protected  java.util.List<java.lang.String> getFieldAccessNames(ClassMetaData meta)
           
 java.lang.reflect.Member getMemberByProperty(ClassMetaData meta, java.lang.String property, int access, boolean applyDefaultRule)
          Gets either the instance field or the getter method depending upon the access style of the given meta-data.
static PersistenceStrategy getPersistenceStrategy(FieldMetaData fmd, java.lang.reflect.Member member)
          Return the code for the strategy of the given member.
static PersistenceStrategy getPersistenceStrategy(FieldMetaData fmd, java.lang.reflect.Member member, boolean ignoreTransient)
          Return the code for the strategy of the given member.
 java.util.List<java.lang.reflect.Member> getPersistentMembers(ClassMetaData meta, boolean ignoreTransient)
          Gets the members that are backing members for attributes being persisted.
protected  java.util.List<java.lang.String> getPropertyAccessNames(ClassMetaData meta)
           
 boolean isAbstractMappingUniDirectional(OpenJPAConfiguration conf)
           
protected  boolean isDefaultPersistent(ClassMetaData meta, java.lang.reflect.Member member, java.lang.String name)
           
protected  boolean isDefaultPersistent(ClassMetaData meta, java.lang.reflect.Member member, java.lang.String name, boolean ignoreTransient)
           
 boolean isNonDefaultMappingAllowed(OpenJPAConfiguration conf)
           
 void populate(ClassMetaData meta, int access)
          Populates the given class metadata.
 void populate(ClassMetaData meta, int access, boolean ignoreTransient)
          Populates the given class metadata.
protected  void populate(FieldMetaData fmd)
           
 void setAbstractMappingUniDirectional(OpenJPAConfiguration conf)
           
 void setDefaultAccessType(java.lang.String type)
          Auto-configuration method for the default access type of base classes with ACCESS_UNKNOWN
 void setNonDefaultMappingAllowed(OpenJPAConfiguration conf)
           
 
Methods inherited from class org.apache.openjpa.meta.AbstractMetaDataDefaults
getBackingMember, getCallbackMode, getCallbacksBeforeListeners, getDefaultAccessType, getDefaultIdentityType, getFieldName, getIgnoreNonPersistent, getUnimplementedExceptionType, getUsePCRegistry, isBoolean, isBooleanGetter, isDataStoreObjectIdFieldUnwrapped, isDeclaredInterfacePersistent, isGetter, isNormalGetter, isReservedFieldName, isUserDefined, setCallbackMode, setCallbackMode, setDataStoreObjectIdFieldUnwrapped, setDeclaredInterfacePersistent, setDefaultAccessType, setDefaultIdentityType, setIgnoreNonPersistent, setUsePCRegistry, startsWith, toNames
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

propertyAccessFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.AccessFilter propertyAccessFilter
Set of Inclusion Filters based on member type, access type or transient annotations. Used to determine the persistent field/methods.


fieldAccessFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.AccessFilter fieldAccessFilter

fieldFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.MemberFilter fieldFilter

methodFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.MemberFilter methodFilter

nonTransientFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.TransientFilter nonTransientFilter

annotatedFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.AnnotatedFilter annotatedFilter

getterFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.GetterFilter getterFilter

setterFilter

protected org.apache.openjpa.persistence.PersistenceMetaDataDefaults.SetterFilter setterFilter
Constructor Detail

PersistenceMetaDataDefaults

public PersistenceMetaDataDefaults()
Method Detail

getPersistenceStrategy

public static PersistenceStrategy getPersistenceStrategy(FieldMetaData fmd,
                                                         java.lang.reflect.Member member)
Return the code for the strategy of the given member. Return null if no strategy.


getPersistenceStrategy

public static PersistenceStrategy getPersistenceStrategy(FieldMetaData fmd,
                                                         java.lang.reflect.Member member,
                                                         boolean ignoreTransient)
Return the code for the strategy of the given member. Return null if no strategy.


setDefaultAccessType

public void setDefaultAccessType(java.lang.String type)
Auto-configuration method for the default access type of base classes with ACCESS_UNKNOWN


populate

public void populate(ClassMetaData meta,
                     int access)
Populates the given class metadata. The access style determines which field and/or getter method will contribute as the persistent property of the given class. If the given access is unknown, then the access type is to be determined at first.

Specified by:
populate in interface MetaDataDefaults
Overrides:
populate in class AbstractMetaDataDefaults
See Also:
determineAccessType(ClassMetaData)

populate

public void populate(ClassMetaData meta,
                     int access,
                     boolean ignoreTransient)
Populates the given class metadata. The access style determines which field and/or getter method will contribute as the persistent property of the given class. If the given access is unknown, then the access type is to be determined at first.

Specified by:
populate in interface MetaDataDefaults
Overrides:
populate in class AbstractMetaDataDefaults
See Also:
determineAccessType(ClassMetaData)

populate

protected void populate(FieldMetaData fmd)
Overrides:
populate in class AbstractMetaDataDefaults

getPersistentMembers

public java.util.List<java.lang.reflect.Member> getPersistentMembers(ClassMetaData meta,
                                                                     boolean ignoreTransient)
Gets the members that are backing members for attributes being persisted. Unlike #getPersistentFields(ClassMetaData) and #getPersistentMethods(ClassMetaData) which returns possible candidates, the result of this method is definite. Side-effect of this method is if the given class metadata has no access type set, this method will set it.

Specified by:
getPersistentMembers in class AbstractMetaDataDefaults

getFieldAccessNames

protected java.util.List<java.lang.String> getFieldAccessNames(ClassMetaData meta)
Overrides:
getFieldAccessNames in class AbstractMetaDataDefaults

getPropertyAccessNames

protected java.util.List<java.lang.String> getPropertyAccessNames(ClassMetaData meta)
Overrides:
getPropertyAccessNames in class AbstractMetaDataDefaults

isDefaultPersistent

protected boolean isDefaultPersistent(ClassMetaData meta,
                                      java.lang.reflect.Member member,
                                      java.lang.String name)

isDefaultPersistent

protected boolean isDefaultPersistent(ClassMetaData meta,
                                      java.lang.reflect.Member member,
                                      java.lang.String name,
                                      boolean ignoreTransient)
Specified by:
isDefaultPersistent in class AbstractMetaDataDefaults

getMemberByProperty

public java.lang.reflect.Member getMemberByProperty(ClassMetaData meta,
                                                    java.lang.String property,
                                                    int access,
                                                    boolean applyDefaultRule)
Gets either the instance field or the getter method depending upon the access style of the given meta-data.


isAbstractMappingUniDirectional

public boolean isAbstractMappingUniDirectional(OpenJPAConfiguration conf)

setAbstractMappingUniDirectional

public void setAbstractMappingUniDirectional(OpenJPAConfiguration conf)

isNonDefaultMappingAllowed

public boolean isNonDefaultMappingAllowed(OpenJPAConfiguration conf)

setNonDefaultMappingAllowed

public void setNonDefaultMappingAllowed(OpenJPAConfiguration conf)


Copyright © 2006-2010 Apache Software Foundation. All Rights Reserved.