Author: mprudhom
Date: Mon Jan 29 16:54:19 2007
New Revision: 501255
URL: http://svn.apache.org/viewvc?view=rev&rev=501255
Log:
If we don't know the access type for a class when parsing, first check for a
superclass and default to that class' access type.
Modified:
incubator/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java
Modified:
incubator/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java
URL:
http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java?view=diff&rev=501255&r1=501254&r2=501255
==============================================================================
---
incubator/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java
(original)
+++
incubator/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java
Mon Jan 29 16:54:19 2007
@@ -742,9 +742,17 @@
return false;
}
+ // if we don't know the access type, check for a superclass
+ int defaultAccess = _access;
+ if (defaultAccess == ClassMetaData.ACCESS_UNKNOWN) {
+ ClassMetaData sup = repos.getCachedMetaData(_cls.getSuperclass());
+ if (sup != null)
+ defaultAccess = sup.getAccessType();
+ }
+
if (meta == null) {
// add metadata for this type
- int access = toAccessType(attrs.getValue("access"), _access);
+ int access = toAccessType(attrs.getValue("access"), defaultAccess);
meta = repos.addMetaData(_cls, access);
meta.setEnvClassLoader(_envLoader);
meta.setSourceMode(MODE_NONE);