Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/MixedLockManagerRefreshPermutationTest.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/MixedLockManagerRefreshPermutationTest.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/MixedLockManagerRefreshPermutationTest.java (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/MixedLockManagerRefreshPermutationTest.java Fri Mar 27 20:58:10 2009 @@ -62,22 +62,22 @@ commonRefreshTest( "testRefresh(Read,Commit/PessimisticRead,Commit)", LockModeType.READ, Act.CommitTx, 2, null, // thread 2 tmo - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(Read,Commit/PessimisticRead,Rollback)", LockModeType.READ, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.RollbackTx, 2, null); } public void testRefreshReadPessimisticWrite() { commonRefreshTest( "testRefresh(Read,Commit/PessimisticWrite,Commit)", LockModeType.READ, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(Read,Commit/PessimisticWrite,Rollback)", LockModeType.READ, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.RollbackTx, 2, null); } public void testRefreshReadPessimisticForceInc() { @@ -119,22 +119,22 @@ commonRefreshTest( "testRefresh(Write,Commit/PessimisticRead,Commit)", LockModeType.WRITE, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(Write,Commit/PessimisticRead,Rollback)", LockModeType.WRITE, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.RollbackTx, 2, null); } public void testRefreshWritePessimisticWrite() { commonRefreshTest( "testRefresh(Write,Commit/PessimisticWrite,Commit)", LockModeType.WRITE, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(Write,Commit/PessimisticWrite,Rollback)", LockModeType.WRITE, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.RollbackTx, 2, null); } public void testRefreshWritePessimisticForceInc() { @@ -152,56 +152,56 @@ public void testRefreshPessimisticReadRead() { commonRefreshTest( "testRefresh(PessimisticRead,Commit/Read,Commit)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, LockModeType.READ, Act.CommitTx, 2, ExpectingOptimisticLockExClass); commonRefreshTest( "testRefresh(PessimisticRead,Commit/Read,Rollback)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, LockModeType.READ, Act.RollbackTx, 2, null); } public void testRefreshPessimisticReadWrite() { commonRefreshTest( "testRefresh(PessimisticRead,Commit/Write,Commit)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, LockModeType.WRITE, Act.CommitTx, 2, ExpectingOptimisticLockExClass); commonRefreshTest( "testRefresh(PessimisticRead,Commit/Write,Rollback)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, LockModeType.WRITE, Act.RollbackTx, 2, null); } public void testRefreshPessimisticReadPessimisticRead() { commonRefreshTest( "testRefresh(PessimisticRead,Commit/PessimisticRead,Commit)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(PessimisticRead,Commit/PessimisticRead,Rollback)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.RollbackTx, 2, null); } public void testRefreshPessimisticReadPessimisticWrite() { commonRefreshTest( "testRefresh(PessimisticRead,Commit/PessimisticWrite,Commit)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(PessimisticRead,Commit/PessimisticWrite,Rollback)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.RollbackTx, 2, null); } public void testRefreshPessimisticReadPessimisticForceInc() { commonRefreshTest( "testRefresh(PessimisticRead,Commit/PessimisticForceInc,Commit)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 3, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 3, null, LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.CommitTx, 3, null); commonRefreshTest( "testRefresh(PessimisticRead,Commit/PessimisticForceInc,Rollback)", - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null, LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.RollbackTx, 2, null); } @@ -209,60 +209,60 @@ public void testRefreshPessimsiticWriteRead() { commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/Read,Commit)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, LockModeType.READ, Act.CommitTx, 2, ExpectingOptimisticLockExClass); commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/Read,Rollback)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, LockModeType.READ, Act.RollbackTx, 2, null); } public void testRefreshPessimsiticWriteWrite() { commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/Write,Commit)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, LockModeType.WRITE, Act.CommitTx, 2, ExpectingOptimisticLockExClass); commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/Write,Rollback)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, LockModeType.WRITE, Act.RollbackTx, 2, null); } public void testRefreshPessimsiticWritePessimisticRead() { commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/PessimisticRead,Commit)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/PessimisticRead,Rollback)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_READ, Act.RollbackTx, 2, null); } public void testRefreshPessimsiticWritePessimisticWrite() { commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/PessimisticWrite,Commit)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/PessimisticWrite,Rollback)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.RollbackTx, 2, null); } public void testRefreshPessimsiticWritePessimisticForceInc() { commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/PessimisticForceInc,Commit)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 3, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 3, null, LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.CommitTx, 3, null); commonRefreshTest( "testRefresh(PessimsiticWrite,Commit/PessimisticForceInc,Rollback)", - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null, + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null, LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.RollbackTx, 2, null); } - /* ======== Thread 1 : Pessimsitic Force Increment Lock ============*/ + /* ======== Thread 1 : Pessimistic Force Increment Lock ============*/ public void testRefreshPessimsiticForceIncRead() { commonRefreshTest( "testRefresh(PessimsiticForceInc,Commit/Read,Commit)", @@ -290,22 +290,22 @@ commonRefreshTest( "testRefresh(PessimsiticForceInc,Commit/PessimisticRead,Commit)", LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(PessimsiticForceInc,Commit/PessimisticRead,Rollback)", LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_READ*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_READ, Act.RollbackTx, 2, null); } public void testRefreshPessimsiticForceIncPessimisticWrite() { commonRefreshTest( "testRefresh(PessimsiticForceInc,Commit/PessimisticWrite,Commit)", LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.CommitTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.CommitTx, 2, null); commonRefreshTest( "testRefresh(PessimsiticForceInc,Commit/PessimisticWrite,Rollback)", LockModeType.PESSIMISTIC_FORCE_INCREMENT, Act.CommitTx, 2, null, - LockModeType.PESSIMISTIC/*_WRITE*/, Act.RollbackTx, 2, null); + LockModeType.PESSIMISTIC_WRITE, Act.RollbackTx, 2, null); } public void testRefreshPessimsiticForceIncPessimisticForceInc() {
Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/SequencedActionsTest.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/SequencedActionsTest.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/SequencedActionsTest.java (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/lockmgr/SequencedActionsTest.java Fri Mar 27 20:58:10 2009 @@ -485,7 +485,7 @@ employee = employees.get(id); log.trace("Employee (before) :" + employee); LockEmployee detEmployee = ((OpenJPAEntityManager) em - .getDelegate()).detach(employee); + .getDelegate()).detachCopy(employee); employees.put((Integer)args[2], detEmployee); log.trace("Employee (after) :" + detEmployee); break; Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/managedinterface/TestManagedInterfaces.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/managedinterface/TestManagedInterfaces.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/managedinterface/TestManagedInterfaces.java (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/managedinterface/TestManagedInterfaces.java Fri Mar 27 20:58:10 2009 @@ -441,7 +441,7 @@ em = emf.createEntityManager(); ManagedIface pcx = em.find(ManagedIface.class, oid); - pc = em.detach(pcx); + pc = em.detachCopy(pcx); em.close(); assertTrue(em.isDetached(pc)); Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestValueStrategies.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestValueStrategies.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestValueStrategies.java (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestValueStrategies.java Fri Mar 27 20:58:10 2009 @@ -301,8 +301,8 @@ endTx(pm); assertEquals(2, pc.getVersion()); assertEquals(2, pc2.getVersion()); - ValueStrategyPC detached = (ValueStrategyPC) pm.detach(pc); - ValueStrategyPC detached2 = (ValueStrategyPC) pm.detach(pc2); + ValueStrategyPC detached = (ValueStrategyPC) pm.detachCopy(pc); + ValueStrategyPC detached2 = (ValueStrategyPC) pm.detachCopy(pc2); endEm(pm); // clean attach Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/relations/TestLRS.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/relations/TestLRS.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/relations/TestLRS.java (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/relations/TestLRS.java Fri Mar 27 20:58:10 2009 @@ -81,7 +81,7 @@ OpenJPAEntityManager em = emf.createEntityManager(); LRSEntity lrs = em.find(LRSEntity.class, id); assertLRS(lrs, "lrs"); - lrs = em.detach(lrs); + lrs = em.detachCopy(lrs); assertEquals("lrs", lrs.getName()); assertNull(lrs.getLRSList()); em.close(); Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/embed/embed-orm.xml URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/embed/embed-orm.xml?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/embed/embed-orm.xml (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/embed/embed-orm.xml Fri Mar 27 20:58:10 2009 @@ -82,10 +82,10 @@ <attributes> <id name="id"></id> <element-collection name="images" - target-entity="java.lang.String"> - <column name="IMAGE_FILENAME" /> + target-class="java.lang.String"> <map-key-class class="java.lang.String" /> <map-key-column name="IMAGE_NAME" /> + <column name="IMAGE_FILENAME" /> <collection-table name="IMAGE_XML" /> </element-collection> </attributes> Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm-2.xml URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm-2.xml?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm-2.xml (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm-2.xml Fri Mar 27 20:58:10 2009 @@ -41,24 +41,21 @@ <generated-value/> </id> <one-to-many name="one2Melems"> - <order-column name="one2MOrder" base="10000" - contiguous="false" nullable="false" /> + <order-column name="one2MOrder" nullable="false" /> <cascade> <cascade-all/> </cascade> </one-to-many> <many-to-many name="m2melems"> - <order-column name="m2morder" base="-50" - contiguous="false" nullable="false" /> + <order-column name="m2morder" nullable="false" /> <cascade> <cascade-all/> </cascade> </many-to-many> <element-collection name="collelems"> - <order-column base="10" contiguous="false" - nullable="false" /> + <order-column nullable="false" /> </element-collection> </attributes> Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm.xml URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm.xml?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm.xml (original) +++ openjpa/trunk/openjpa-persistence-jdbc/src/test/resources/org/apache/openjpa/persistence/jdbc/order/order-orm.xml Fri Mar 27 20:58:10 2009 @@ -38,23 +38,21 @@ <generated-value/> </id> <one-to-many name="one2Melems"> - <order-column name="one2MOrder" base="10000" - contiguous="false" /> + <order-column name="one2MOrder" /> <cascade> <cascade-all/> </cascade> </one-to-many> <many-to-many name="m2melems"> - <order-column name="m2morder" base="-50" - contiguous="false" /> + <order-column name="m2morder" /> <cascade> <cascade-all/> </cascade> </many-to-many> <element-collection name="collelems"> - <order-column base="10" contiguous="false" /> + <order-column /> </element-collection> </attributes> Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataParser.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataParser.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataParser.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataParser.java Fri Mar 27 20:58:10 2009 @@ -1623,7 +1623,7 @@ vmd.setCascadePersist(ValueMetaData.CASCADE_IMMEDIATE); if (cascade == CascadeType.ALL || cascade == CascadeType.MERGE) vmd.setCascadeAttach(ValueMetaData.CASCADE_IMMEDIATE); - if (cascade == CascadeType.ALL || cascade == CascadeType.CLEAR) + if (cascade == CascadeType.ALL || cascade == CascadeType.DETACH) vmd.setCascadeDetach(ValueMetaData.CASCADE_IMMEDIATE); if (cascade == CascadeType.ALL || cascade == CascadeType.REFRESH) vmd.setCascadeRefresh(ValueMetaData.CASCADE_IMMEDIATE); Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataSerializer.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataSerializer.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataSerializer.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationPersistenceMetaDataSerializer.java Fri Mar 27 20:58:10 2009 @@ -1013,7 +1013,7 @@ cascades.add(CascadeType.REFRESH); } if (vmd.getCascadeDetach() == ValueMetaData.CASCADE_IMMEDIATE) { - cascades.add(CascadeType.CLEAR); + cascades.add(CascadeType.DETACH); } if (cascades.size() == 5) // ALL { Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java Fri Mar 27 20:58:10 2009 @@ -30,7 +30,8 @@ import javax.persistence.Cache; import javax.persistence.EntityManagerFactory; -import javax.persistence.QueryBuilder; +import javax.persistence.criteria.QueryBuilder; +import javax.persistence.metamodel.Metamodel; import org.apache.openjpa.conf.OpenJPAConfiguration; import org.apache.openjpa.enhance.Reflection; @@ -353,7 +354,8 @@ } public QueryBuilder getQueryBuilder() { - return null; + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); } public OpenJPAQueryBuilder getDynamicQueryBuilder() { @@ -363,4 +365,9 @@ public Set<String> getSupportedProperties() { return _factory.getSupportedProperties(); } + + public Metamodel getMetamodel() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } } Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java Fri Mar 27 20:58:10 2009 @@ -41,10 +41,12 @@ import javax.persistence.FlushModeType; import javax.persistence.LockModeType; import javax.persistence.Query; -import javax.persistence.QueryBuilder; -import javax.persistence.QueryDefinition; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.QueryBuilder; +import javax.persistence.metamodel.Metamodel; import org.apache.commons.lang.StringUtils; +import org.apache.openjpa.conf.Compatibility; import org.apache.openjpa.conf.OpenJPAConfiguration; import org.apache.openjpa.ee.ManagedRuntime; import org.apache.openjpa.enhance.PCEnhancer; @@ -799,9 +801,23 @@ } @SuppressWarnings("unchecked") - public <T> T detach(T entity) { + public <T> T detachCopy(T entity) { assertNotCloseInvoked(); - return (T) _broker.detach(entity, this); + Compatibility compat = this.getConfiguration(). + getCompatibilityInstance(); + boolean copyOnDetach = compat.getCopyOnDetach(); + boolean cascadeWithDetach = compat.getCascadeWithDetach(); + // Set compatibility options to get 1.x detach behavior + compat.setCopyOnDetach(true); + compat.setCascadeWithDetach(true); + try { + T t = (T)_broker.detach(entity, this); + return t; + } finally { + // Reset compatibility options + compat.setCopyOnDetach(copyOnDetach); + compat.setCascadeWithDetach(cascadeWithDetach); + } } public Object[] detachAll(Object... entities) { @@ -1477,13 +1493,14 @@ } } - public void clear(Object entity) { + public void detach(Object entity) { assertNotCloseInvoked(); _broker.detach(entity, this); } - public Query createQuery(QueryDefinition qdef) { - return null; + public Query createQuery(CriteriaQuery criteriaQuery) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); } public OpenJPAQuery createDynamicQuery( @@ -1668,4 +1685,25 @@ _broker.popFetchConfiguration(); } } + + + public Metamodel getMetamodel() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public void refresh(Object arg0, Map<String, Object> arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public void setProperty(String arg0, Object arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public <T> T find(Class<T> arg0, Object arg1, Map<String, Object> arg2) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } } Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/MixedLockLevelsHelper.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/MixedLockLevelsHelper.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/MixedLockLevelsHelper.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/MixedLockLevelsHelper.java Fri Mar 27 20:58:10 2009 @@ -41,9 +41,9 @@ if (mode == LockModeType.WRITE || mode == LockModeType.OPTIMISTIC_FORCE_INCREMENT) return MixedLockLevels.LOCK_WRITE; - // TODO: if (mode == LockModeType.PESSIMISTIC_READ) - // TODO: return LockLevels.LOCK_PESSIMISTIC_READ; - if (mode == LockModeType.PESSIMISTIC) + if (mode == LockModeType.PESSIMISTIC_READ) + return MixedLockLevels.LOCK_PESSIMISTIC_READ; + if (mode == LockModeType.PESSIMISTIC_WRITE) return MixedLockLevels.LOCK_PESSIMISTIC_WRITE; return MixedLockLevels.LOCK_PESSIMISTIC_FORCE_INCREMENT; } @@ -59,11 +59,9 @@ if (level < MixedLockLevels.LOCK_PESSIMISTIC_READ) return LockModeType.WRITE; if (level < MixedLockLevels.LOCK_PESSIMISTIC_WRITE) - return LockModeType.PESSIMISTIC; - // TODO: return LockModeType.PESSIMISTIC_READ; + return LockModeType.PESSIMISTIC_READ; if (level < MixedLockLevels.LOCK_PESSIMISTIC_FORCE_INCREMENT) - return LockModeType.PESSIMISTIC; - // TODO: return LockModeType.PESSIMISTIC_WRITE; + return LockModeType.PESSIMISTIC_WRITE; return LockModeType.PESSIMISTIC_FORCE_INCREMENT; } } Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManager.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManager.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManager.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManager.java Fri Mar 27 20:58:10 2009 @@ -534,12 +534,22 @@ public void evictAll(Extent extent); /** - * Detach the specified object from the entity manager. + * Detach the specified object from the entity manager, detaching based on + * the AutoDetach value specified and returning a copy of the detached + * entity. * * @param pc the instance to detach * @return the detached instance + * + * @since 2.0.0 + * + * Note: This method provides the same contract as the detach method with + * signature: public <T> T detach(T pc) available in the 1.x release of + * OpenJPA. The JPA 2.0 specification defined a method with an incompatible + * signature and different semantics. The specification defined method + * trumped the existing method. */ - public <T> T detach(T pc); + public <T> T detachCopy(T pc); /** * Detach the specified objects from the entity manager. Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java Fri Mar 27 20:58:10 2009 @@ -24,6 +24,7 @@ import java.util.Map; import javax.persistence.EntityManager; import javax.persistence.spi.ClassTransformer; +import javax.persistence.spi.LoadState; import javax.persistence.spi.PersistenceProvider; import javax.persistence.spi.PersistenceUnitInfo; @@ -210,4 +211,19 @@ return _trans.transform(cl, name, previousVersion, pd, bytes); } } + + public LoadState isLoaded(Object arg0) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public LoadState isLoadedWithReference(Object arg0, String arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public LoadState isLoadedWithoutReference(Object arg0, String arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } } Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceUnitInfoImpl.java Fri Mar 27 20:58:10 2009 @@ -33,6 +33,9 @@ import java.util.Map; import java.util.Properties; import java.util.Set; + +import javax.persistence.Caching; +import javax.persistence.ValidationMode; import javax.persistence.spi.ClassTransformer; import javax.persistence.spi.PersistenceUnitInfo; import javax.persistence.spi.PersistenceUnitTransactionType; @@ -500,4 +503,19 @@ return _loader; } } + + public String PersistenceXMLSchemaVersion() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public Caching getCaching() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public ValidationMode getValidationMode() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } } Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java Fri Mar 27 20:58:10 2009 @@ -39,7 +39,10 @@ import javax.persistence.LockModeType; import javax.persistence.NoResultException; import javax.persistence.NonUniqueResultException; +import javax.persistence.Parameter; import javax.persistence.Query; +import javax.persistence.Result; +import javax.persistence.ResultItem; import javax.persistence.TemporalType; import org.apache.openjpa.conf.OpenJPAConfiguration; @@ -710,4 +713,54 @@ throw new IllegalStateException(_loc.get("assert-query-language", getLanguage()).toString()); } + + public <T> Parameter<T> getParameter(String arg0, Class<T> arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public <T> Parameter<T> getParameter(int arg0, Class<T> arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public <T> T getParameterValue(Parameter<T> arg0) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public Set<Parameter<?>> getParameters() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public <T> ResultItem<T> getResultItem(String arg0, Class<T> arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public <T> ResultItem<T> getResultItem(int arg0, Class<T> arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public List<ResultItem<?>> getResultItems() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public List<Result> getTypedResultList() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public Result getTypedSingleResult() { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } + + public <T> Query setParameter(Parameter<T> arg0, T arg1) { + throw new UnsupportedOperationException( + "JPA 2.0 - Method not yet implemented"); + } } Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java?rev=759348&r1=759347&r2=759348&view=diff ============================================================================== --- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java (original) +++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/XMLPersistenceMetaDataParser.java Fri Mar 27 20:58:10 2009 @@ -1159,7 +1159,7 @@ case MERGE: vmd.setCascadeAttach(ValueMetaData.CASCADE_IMMEDIATE); break; - case CLEAR: + case DETACH: vmd.setCascadeDetach(ValueMetaData.CASCADE_IMMEDIATE); break; case REMOVE: @@ -1469,7 +1469,7 @@ protected void parseElementCollection(FieldMetaData fmd, Attributes attrs) throws SAXException { - String val = attrs.getValue("target-entity"); + String val = attrs.getValue("target-class"); if (val != null) fmd.getElement().setDeclaredType(classForName(val));
