openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From curti...@apache.org
Subject svn commit: r1551447 - in /openjpa/branches/2.3.x: openjpa-kernel/src/main/java/org/apache/openjpa/enhance/ openjpa-kernel/src/main/resources/org/apache/openjpa/enhance/ openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/ ope...
Date Tue, 17 Dec 2013 02:33:29 GMT
Author: curtisr7
Date: Tue Dec 17 02:33:28 2013
New Revision: 1551447

URL: http://svn.apache.org/r1551447
Log:
OPENJPA-2233: Merge changes from trunk.

Added:
    openjpa/branches/2.3.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/TestEmbeddableEntityWithIDAnnotation.java
      - copied unchanged from r1551446, openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/TestEmbeddableEntityWithIDAnnotation.java
    openjpa/branches/2.3.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/common/apps/EmbeddableEntityWithIDAnnotation.java
      - copied unchanged from r1551446, openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/common/apps/EmbeddableEntityWithIDAnnotation.java
    openjpa/branches/2.3.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/common/apps/IDOwningClassTestEntity.java
      - copied unchanged from r1551446, openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/enhance/common/apps/IDOwningClassTestEntity.java
Modified:
    openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
    openjpa/branches/2.3.x/openjpa-kernel/src/main/resources/org/apache/openjpa/enhance/localizer.properties

Modified: openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
URL: http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java?rev=1551447&r1=1551446&r2=1551447&view=diff
==============================================================================
--- openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
(original)
+++ openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/enhance/PCEnhancer.java
Tue Dec 17 02:33:28 2013
@@ -1179,6 +1179,11 @@ public class PCEnhancer { 
             if (_meta.hasAbstractPKField() == true) { 
                 addGetIDOwningClass();
             }
+            
+            if (_meta.isEmbeddedOnly() && _meta.getIdentityType() == ClassMetaData.ID_APPLICATION)
{
+                _log.error(_loc.get("ID-field-in-embeddable-unsupported", _meta.toString()));
+            }
+            
             addNewObjectIdInstanceMethod(true);
             addNewObjectIdInstanceMethod(false);
         }
@@ -2747,13 +2752,12 @@ public class PCEnhancer { 
         // new <oid class> ();
         code.anew().setType(oidType);
         code.dup();
-        if (_meta.isOpenJPAIdentity() || (obj && usesClsString ==
-                    Boolean.TRUE)) {
-            if(_meta.isEmbeddedOnly() || _meta.hasAbstractPKField() == true ) {
+        if (_meta.isOpenJPAIdentity() || (obj && usesClsString == Boolean.TRUE))
{
+            if ((_meta.isEmbeddedOnly() && ! (_meta.getIdentityType() == ClassMetaData.ID_APPLICATION))
+                || _meta.hasAbstractPKField() == true ) {
                 code.aload().setThis();
-                code.invokevirtual().setMethod(PRE + "GetIDOwningClass",
-                    Class.class, null);
-            }else {
+                code.invokevirtual().setMethod(PRE + "GetIDOwningClass", Class.class, null);
+            } else {
                 code.classconstant().setClass(getType(_meta));
             }
         }

Modified: openjpa/branches/2.3.x/openjpa-kernel/src/main/resources/org/apache/openjpa/enhance/localizer.properties
URL: http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-kernel/src/main/resources/org/apache/openjpa/enhance/localizer.properties?rev=1551447&r1=1551446&r2=1551447&view=diff
==============================================================================
--- openjpa/branches/2.3.x/openjpa-kernel/src/main/resources/org/apache/openjpa/enhance/localizer.properties
(original)
+++ openjpa/branches/2.3.x/openjpa-kernel/src/main/resources/org/apache/openjpa/enhance/localizer.properties
Tue Dec 17 02:33:28 2013
@@ -220,3 +220,4 @@ set-method: Error while setting value {2
 down-level-enhanced-entity: The Entity "{0}" was enhanced at level "{1}", but the current
level of enhancement is \
 "{2}". 
 static-asm-exception: Encountered an unexpected exception while loading ASM.
+ID-field-in-embeddable-unsupported: The identity field defined in the {0} Embeddable is not
supported. 



Mime
View raw message