mirror of https://github.com/apache/openjpa.git
changed ordering to avoid super / subclass clashing
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@439550 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
4f4b1b29fe
commit
fc9b67f556
|
@ -1514,17 +1514,6 @@ public class ClassMetaData
|
|||
log.trace(_loc.get((embed) ? "resolve-embed-meta" : "resolve-meta",
|
||||
this + "@" + System.identityHashCode(this)));
|
||||
|
||||
if (_type.isInterface()) {
|
||||
if (!embed && _interface != Boolean.TRUE)
|
||||
throw new MetaDataException(_loc.get("interface", _type));
|
||||
|
||||
if (runtime) {
|
||||
_impl = _repos.getImplGenerator().createImpl(this);
|
||||
if (!embed)
|
||||
_repos.setInterfaceImpl(this, _impl);
|
||||
}
|
||||
}
|
||||
|
||||
if (runtime && !_type.isInterface() &&
|
||||
!PersistenceCapable.class.isAssignableFrom(_type))
|
||||
throw new MetaDataException(_loc.get("not-enhanced", _type));
|
||||
|
@ -1600,6 +1589,16 @@ public class ClassMetaData
|
|||
for (Iterator itr = _fgMap.values().iterator(); itr.hasNext();)
|
||||
((FetchGroup) itr.next()).resolve();
|
||||
|
||||
if (!embed && _type.isInterface()) {
|
||||
if (_interface != Boolean.TRUE)
|
||||
throw new MetaDataException(_loc.get("interface", _type));
|
||||
|
||||
if (runtime) {
|
||||
_impl = _repos.getImplGenerator().createImpl(this);
|
||||
_repos.setInterfaceImpl(this, _impl);
|
||||
}
|
||||
}
|
||||
|
||||
// if this is runtime, create a pc instance and scan it for comparators
|
||||
if (runtime && !Modifier.isAbstract(_type.getModifiers())) {
|
||||
ProxySetupStateManager sm = new ProxySetupStateManager();
|
||||
|
|
Loading…
Reference in New Issue