openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject svn commit: r442494 - /incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java
Date Tue, 12 Sep 2006 07:06:25 GMT
Author: skim
Date: Tue Sep 12 00:06:25 2006
New Revision: 442494

URL: http://svn.apache.org/viewvc?view=rev&rev=442494
Log:
Record interface superclasses

Modified:
    incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java

Modified: incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java?view=diff&rev=442494&r1=442493&r2=442494
==============================================================================
--- incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java
(original)
+++ incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java
Tue Sep 12 00:06:25 2006
@@ -888,6 +888,14 @@
         _ifaces.put(meta.getDescribedType(), impl);
         _metas.put(impl, meta);
         addDeclaredInterfaceImpl(meta, meta.getDescribedType());
+        ClassMetaData sup = meta.getPCSuperclassMetaData();
+        while (sup != null) {
+            // record superclass interface info while we can as well as we
+            // will only register concrete superclass in PCRegistry
+            sup.clearSubclassCache();
+            addToCollection(_subs, sup.getDescribedType(), impl, true);
+            sup = (ClassMetaData) sup.getPCSuperclassMetaData();
+        }
     }
     
     synchronized InterfaceImplGenerator getImplGenerator() {



Mime
View raw message