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",
|
log.trace(_loc.get((embed) ? "resolve-embed-meta" : "resolve-meta",
|
||||||
this + "@" + System.identityHashCode(this)));
|
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() &&
|
if (runtime && !_type.isInterface() &&
|
||||||
!PersistenceCapable.class.isAssignableFrom(_type))
|
!PersistenceCapable.class.isAssignableFrom(_type))
|
||||||
throw new MetaDataException(_loc.get("not-enhanced", _type));
|
throw new MetaDataException(_loc.get("not-enhanced", _type));
|
||||||
|
@ -1600,6 +1589,16 @@ public class ClassMetaData
|
||||||
for (Iterator itr = _fgMap.values().iterator(); itr.hasNext();)
|
for (Iterator itr = _fgMap.values().iterator(); itr.hasNext();)
|
||||||
((FetchGroup) itr.next()).resolve();
|
((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 this is runtime, create a pc instance and scan it for comparators
|
||||||
if (runtime && !Modifier.isAbstract(_type.getModifiers())) {
|
if (runtime && !Modifier.isAbstract(_type.getModifiers())) {
|
||||||
ProxySetupStateManager sm = new ProxySetupStateManager();
|
ProxySetupStateManager sm = new ProxySetupStateManager();
|
||||||
|
|
Loading…
Reference in New Issue