openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From p..@apache.org
Subject svn commit: r567838 [1/4] - in /openjpa/trunk: openjpa-kernel/src/main/java/org/apache/openjpa/datacache/ openjpa-kernel/src/main/java/org/apache/openjpa/event/ openjpa-kernel/src/main/java/org/apache/openjpa/kernel/ openjpa-persistence-jdbc/src/main/j...
Date Mon, 20 Aug 2007 21:33:13 GMT
Author: pcl
Date: Mon Aug 20 14:32:54 2007
New Revision: 567838

URL: http://svn.apache.org/viewvc?rev=567838&view=rev
Log:
OPENJPA-317. Changed OpenJPA published API pre-1.0. Reduced the scope of the dependencies in OpenJPAEntityManager and the other published interfaces; converted JDK1.4-style symbolic constant usage to new enums; changed some method names for clarity and consistency; removed old javax.resource dependencies; updated @published and @nojavadoc tags. The published interfaces should now only reference other published interfaces in method signatures, and it should be possible to build javadoc for just the published interfaces.

Removed getDelegate() calls from the published interfaces, as they expose internals. They are still available on the impl classes themselves, or the SPI ifaces when available.

Added covariant return types to JDBCFetchPlan.

Changed BrokerFactoryListener interface to not encode event types in the listener signature.

Moved some methods from OpenJPAPersistence to JPAFacadeHelper.

We will need to grow these published interfaces to provide access to some things in the internal interfaces. However, these interfaces will remain stable moving forward within the constraints of the OpenJPA deprecation policies.

Added:
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JoinSyntaxType.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/LRSSizeType.java
      - copied, changed from r565999, openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestJDBCEnumToKernelConstantMappings.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AutoClearType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AutoDetachType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/CallbackType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/ConnectionRetainType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/DetachStateType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPAFacadeHelper.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManagerFactorySPI.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManagerSPI.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityTransaction.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAQuerySPI.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryOperationType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/RestoreStateType.java
    openjpa/trunk/openjpa-persistence/src/test/
    openjpa/trunk/openjpa-persistence/src/test/java/
    openjpa/trunk/openjpa-persistence/src/test/java/org/
    openjpa/trunk/openjpa-persistence/src/test/java/org/apache/
    openjpa/trunk/openjpa-persistence/src/test/java/org/apache/openjpa/
    openjpa/trunk/openjpa-persistence/src/test/java/org/apache/openjpa/persistence/
    openjpa/trunk/openjpa-persistence/src/test/java/org/apache/openjpa/persistence/TestEnumToKernelConstantMappings.java
Modified:
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheStoreManager.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/QueryCacheStoreQuery.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEvent.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEventManager.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryListener.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/RemoteCommitEventManager.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/Broker.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/BrokerImpl.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingBroker.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java
    openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StoreContext.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ClassCriteria.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Columns.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ContainerTable.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DataStoreIdColumn.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DiscriminatorStrategy.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchMode.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementClassCriteria.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementForeignKey.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementIndex.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumn.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumns.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementNonpolymorphic.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EmbeddedMapping.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKey.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKeyAction.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Index.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/IsolationLevel.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlan.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlanImpl.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverride.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverrides.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Nonpolymorphic.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/NonpolymorphicType.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/OrderColumn.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Strategy.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/SubclassFetchMode.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Unique.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumn.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumns.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionStrategy.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumn.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumns.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTable.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTables.java
    openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XTable.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestAutoDetachProperty.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestDynamicConfiguration.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/enhance/AbstractUnenhancedClassTest.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/event/TestSJVMRemoteCommitProvider.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/jdbc/meta/TestMappingToolAutoDelete.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/jdbc/meta/TestMappingToolTemporal.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/kernel/TestBrokerFactoryEventManager.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/kernel/TestBrokerFactoryListenerRegistry.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/kernel/TestQueryCompilationCache.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestArrayFieldsInDataCache.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesAndVersionColumn.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestDataCacheOptimisticLockRecovery.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/detachment/TestDetachmentOneMany.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/discriminator/TestDiscriminatorTypes.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/fields/TestPersistentMapTableConfiguration.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestIsolationLevelOverride.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestOptimizeForClause.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestSelectForUpdateOverride.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/simple/TestTableNamesDefaultToEntityNames.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/test/PersistenceTestCase.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/test/SingleEMFTestCase.java
    openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/xmlmapping/query/TestXMLCustomerOrder.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/AnnotationBuilder.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/DataCache.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/DataStoreId.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Dependent.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/DetachedState.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/ElementDependent.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/ElementType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerFactoryImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/EntityManagerImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Extent.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/ExtentImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/ExternalValues.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Externalizer.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Factory.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/FetchAttribute.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/FetchGroup.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/FetchGroups.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/FetchPlan.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/FetchPlanImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Generator.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/GeneratorImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/InverseLogical.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/KeyDependent.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/KeyType.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LRS.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LoadFetchGroup.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManager.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAEntityManagerFactory.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAPersistence.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OpenJPAQuery.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceExceptions.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProviderImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Persistent.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistentCollection.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistentMap.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryResultCache.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryResultCacheImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/ReadOnly.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/StoreCache.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/StoreCacheImpl.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/Type.java
    openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/UpdateAction.java

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheStoreManager.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheStoreManager.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheStoreManager.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/DataCacheStoreManager.java Mon Aug 20 14:32:54 2007
@@ -231,7 +231,7 @@
         // if we were in largeTransaction mode, then we have recorded
         // the classes of updated/deleted objects and these now need to be
         // evicted
-        if (_ctx.isLargeTransaction()) {
+        if (_ctx.isTrackChangesByType()) {
             evictTypes(_ctx.getDeletedTypes());
             evictTypes(_ctx.getUpdatedTypes());
         }
@@ -551,7 +551,7 @@
         }
 
         // if large transaction mode don't record individual changes
-        if (_ctx.isLargeTransaction())
+        if (_ctx.isTrackChangesByType())
             return exceps;
 
         OpenJPAStateManager sm;

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/QueryCacheStoreQuery.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/QueryCacheStoreQuery.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/QueryCacheStoreQuery.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/QueryCacheStoreQuery.java Mon Aug 20 14:32:54 2007
@@ -109,7 +109,7 @@
         if (qk == null)
             return null;
         FetchConfiguration fetch = getContext().getFetchConfiguration();
-        if (!fetch.getQueryCache())
+        if (!fetch.getEnlistInQueryCache())
             return null;
         if (fetch.getReadLockLevel() > LockLevels.LOCK_NONE)
             return null;

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEvent.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEvent.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEvent.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEvent.java Mon Aug 20 14:32:54 2007
@@ -30,7 +30,11 @@
 public class BrokerFactoryEvent
     extends EventObject {
 
-    public final static int BROKER_FACTORY_CREATED = 0;
+    /**
+     * Fired after a {@link BrokerFactory} has been fully created.
+     * This happens after the factory has been made read-only.
+     */
+    public static final int BROKER_FACTORY_CREATED = 0;
 
     private int eventType;
 

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEventManager.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEventManager.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEventManager.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryEventManager.java Mon Aug 20 14:32:54 2007
@@ -44,7 +44,7 @@
     protected void fireEvent(Object event, Object listener) {
         try {
             BrokerFactoryEvent e = (BrokerFactoryEvent) event;
-            ((BrokerFactoryListener) listener).afterBrokerFactoryCreate(e);
+            ((BrokerFactoryListener) listener).eventFired(e);
         } catch (Exception e) {
             _conf.getLog(OpenJPAConfiguration.LOG_RUNTIME).warn(
                 _loc.get("broker-factory-listener-exception"), e);

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryListener.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryListener.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryListener.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/BrokerFactoryListener.java Mon Aug 20 14:32:54 2007
@@ -31,5 +31,5 @@
      * Invoked after a {@link BrokerFactory} has been fully created.
      * This happens after the factory has been made read-only.
      */
-    public void afterBrokerFactoryCreate(BrokerFactoryEvent event);
+    public void eventFired(BrokerFactoryEvent event);
 }

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/RemoteCommitEventManager.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/RemoteCommitEventManager.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/RemoteCommitEventManager.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/event/RemoteCommitEventManager.java Mon Aug 20 14:32:54 2007
@@ -168,7 +168,7 @@
         Collection updates = null;
         Collection deletes = null;
 
-        if (broker.isLargeTransaction()) {
+        if (broker.isTrackChangesByType()) {
             payload = RemoteCommitEvent.PAYLOAD_EXTENTS;
             addClassNames = toClassNames(event.getPersistedTypes());
             updates = toClassNames(event.getUpdatedTypes());

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/Broker.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/Broker.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/Broker.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/Broker.java Mon Aug 20 14:32:54 2007
@@ -19,8 +19,6 @@
 package org.apache.openjpa.kernel;
 
 import java.util.Collection;
-import javax.resource.cci.Connection;
-import javax.resource.cci.LocalTransaction;
 import javax.transaction.Synchronization;
 
 import org.apache.openjpa.ee.ManagedRuntime;
@@ -41,8 +39,7 @@
  * @author Abe White
  */
 public interface Broker
-    extends Synchronization, Connection, LocalTransaction,
-    javax.resource.spi.LocalTransaction, Closeable, StoreContext,
+    extends Synchronization, Closeable, StoreContext,
     ConnectionRetainModes, DetachState, LockLevels,
     RestoreState, AutoClear, AutoDetach, CallbackModes {
 

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/BrokerImpl.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/BrokerImpl.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/BrokerImpl.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/BrokerImpl.java Mon Aug 20 14:32:54 2007
@@ -33,16 +33,6 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-import javax.resource.NotSupportedException;
-import javax.resource.ResourceException;
-import javax.resource.cci.Connection;
-import javax.resource.cci.ConnectionMetaData;
-import javax.resource.cci.Interaction;
-import javax.resource.cci.InteractionSpec;
-import javax.resource.cci.LocalTransaction;
-import javax.resource.cci.Record;
-import javax.resource.cci.ResourceWarning;
-import javax.resource.cci.ResultSetInfo;
 import javax.transaction.Status;
 import javax.transaction.Synchronization;
 
@@ -160,7 +150,6 @@
     private ManagedRuntime _runtime = null;
     private LockManager _lm = null;
     private InverseManager _im = null;
-    private JCAHelper _jca = null;
     private ReentrantLock _lock = null;
     private OpCallbacks _call = null;
     private RuntimeExceptionTranslator _extrans = null;
@@ -231,7 +220,8 @@
     private int _lifeCallbackMode = 0;
 
     private boolean _initializeWasInvoked = false;
-    
+    private static final Object[] EMPTY_OBJECTS = new Object[0];
+
     /**
      * Set the persistence manager's authentication. This is the first
      * method called after construction.
@@ -261,7 +251,6 @@
         _initializeWasInvoked = true;
         _loader = (ClassLoader) AccessController.doPrivileged(
             J2DoPrivHelper.getContextClassLoaderAction());
-        _jca = new JCAHelper();
         _conf = factory.getConfiguration();
         _compat = _conf.getCompatibilityInstance();
         _factory = factory;
@@ -324,30 +313,6 @@
         return new ReferenceHashMap(ReferenceMap.HARD, ReferenceMap.SOFT);
     }
 
-    //////////////////////////////////////////
-    // Implementation of Connection interface
-    //////////////////////////////////////////
-
-    public ConnectionMetaData getMetaData()
-        throws ResourceException {
-        return _jca;
-    }
-
-    public Interaction createInteraction()
-        throws ResourceException {
-        return _jca;
-    }
-
-    public LocalTransaction getLocalTransaction()
-        throws ResourceException {
-        return this;
-    }
-
-    public ResultSetInfo getResultSetInfo()
-        throws ResourceException {
-        return _jca;
-    }
-
     //////////////////////////////////
     // Implementation of StoreContext
     //////////////////////////////////
@@ -585,11 +550,11 @@
         _populateDataCache = cache;
     }
 
-    public boolean isLargeTransaction() {
+    public boolean isTrackChangesByType() {
         return _largeTransaction;
     }
 
-    public void setLargeTransaction(boolean largeTransaction) {
+    public void setTrackChangesByType(boolean largeTransaction) {
         assertOpen();
         _largeTransaction = largeTransaction;
     }
@@ -3116,7 +3081,7 @@
         if (objs == null)
             return null;
         if (objs.isEmpty())
-            return new Object[0];
+            return EMPTY_OBJECTS;
         if (call == null)
             call = _call;
 
@@ -3203,7 +3168,7 @@
         if (objs == null)
             return null;
         if (objs.isEmpty())
-            return new Object[0];
+            return EMPTY_OBJECTS;
 
         beginOperation(true);
         try {
@@ -4896,108 +4861,6 @@
                     throw new UnsupportedException();
                 }
             };
-        }
-    }
-
-    /**
-     * Helper class to implement JCA interfaces. This is placed in a
-     * separate class so that its methods do not interfere with the
-     * persistence manager APIs.
-     */
-    private class JCAHelper
-        implements Interaction, ResultSetInfo, ConnectionMetaData {
-        ///////////////////////////////////////////
-        // Implementation of Interaction interface
-        ///////////////////////////////////////////
-
-        public void clearWarnings() {
-        }
-
-        public Record execute(InteractionSpec spec, Record input)
-            throws ResourceException {
-            throw new NotSupportedException("execute");
-        }
-
-        public boolean execute(InteractionSpec spec, Record input,
-            Record output)
-            throws ResourceException {
-            throw new NotSupportedException("execute");
-        }
-
-        public Connection getConnection() {
-            return BrokerImpl.this;
-        }
-
-        public ResourceWarning getWarnings() {
-            return null;
-        }
-
-        public void close() {
-        }
-
-        /////////////////////////////////////////////
-        // Implementation of ResultSetInfo interface
-        /////////////////////////////////////////////
-
-        public boolean deletesAreDetected(int type) {
-            return true;
-        }
-
-        public boolean insertsAreDetected(int type) {
-            return true;
-        }
-
-        public boolean othersDeletesAreVisible(int type) {
-            return true;
-        }
-
-        public boolean othersInsertsAreVisible(int type) {
-            return true;
-        }
-
-        public boolean othersUpdatesAreVisible(int type) {
-            return true;
-        }
-
-        public boolean ownDeletesAreVisible(int type) {
-            return true;
-        }
-
-        public boolean ownInsertsAreVisible(int type) {
-            return true;
-        }
-
-        public boolean ownUpdatesAreVisible(int type) {
-            return true;
-        }
-
-        public boolean supportsResultSetType(int type) {
-            return true;
-        }
-
-        public boolean supportsResultTypeConcurrency(int type,
-            int concurrency) {
-            return true;
-        }
-
-        public boolean updatesAreDetected(int type) {
-            return true;
-        }
-
-        ///////////////////////////////////////////////////
-        // Implementation of ConnectionMetaData interface
-        ///////////////////////////////////////////////////
-
-        public String getEISProductName() {
-            return _conf.getConnectionDriverName();
-        }
-
-        public String getEISProductVersion() {
-            return "";
-        }
-
-        public String getUserName() {
-            return _user;
         }
     }
 }

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingBroker.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingBroker.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingBroker.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingBroker.java Mon Aug 20 14:32:54 2007
@@ -21,11 +21,6 @@
 import java.util.BitSet;
 import java.util.Collection;
 import java.util.Iterator;
-import javax.resource.ResourceException;
-import javax.resource.cci.ConnectionMetaData;
-import javax.resource.cci.Interaction;
-import javax.resource.cci.LocalTransaction;
-import javax.resource.cci.ResultSetInfo;
 
 import org.apache.openjpa.conf.OpenJPAConfiguration;
 import org.apache.openjpa.ee.ManagedRuntime;
@@ -749,17 +744,17 @@
         }
     }
 
-    public boolean isLargeTransaction() {
+    public boolean isTrackChangesByType() {
         try {
-            return _broker.isLargeTransaction();
+            return _broker.isTrackChangesByType();
         } catch (RuntimeException re) {
             throw translate(re);
         }
     }
 
-    public void setLargeTransaction(boolean largeTransaction) {
+    public void setTrackChangesByType(boolean largeTransaction) {
         try {
-            _broker.setLargeTransaction(largeTransaction);
+            _broker.setTrackChangesByType(largeTransaction);
         } catch (RuntimeException re) {
             throw translate(re);
         }
@@ -1353,42 +1348,6 @@
     public void afterCompletion(int status) {
         try {
             _broker.afterCompletion(status);
-        } catch (RuntimeException re) {
-            throw translate(re);
-        }
-    }
-
-    //////////////////////////////////////////
-    // Implementation of Connection interface
-    //////////////////////////////////////////
-
-    public ConnectionMetaData getMetaData()
-        throws ResourceException {
-        try {
-            return _broker.getMetaData();
-        } catch (RuntimeException re) {
-            throw translate(re);
-        }
-    }
-
-    public Interaction createInteraction()
-        throws ResourceException {
-        try {
-            return _broker.createInteraction();
-        } catch (RuntimeException re) {
-            throw translate(re);
-        }
-    }
-
-    public LocalTransaction getLocalTransaction()
-        throws ResourceException {
-        return this;
-    }
-
-    public ResultSetInfo getResultSetInfo()
-        throws ResourceException {
-        try {
-            return _broker.getResultSetInfo();
         } catch (RuntimeException re) {
             throw translate(re);
         }

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java Mon Aug 20 14:32:54 2007
@@ -183,17 +183,17 @@
         }
     }
 
-    public boolean getQueryCache() {
+    public boolean getEnlistInQueryCache() {
         try {
-            return _fetch.getQueryCache();
+            return _fetch.getEnlistInQueryCache();
         } catch (RuntimeException re) {
             throw translate(re);
         }
     }
 
-    public FetchConfiguration setQueryCache(boolean cache) {
+    public FetchConfiguration setEnlistInQueryCache(boolean cache) {
         try {
-            _fetch.setQueryCache(cache);
+            _fetch.setEnlistInQueryCache(cache);
             return this;
         } catch (RuntimeException re) {
             throw translate(re);

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java Mon Aug 20 14:32:54 2007
@@ -129,14 +129,14 @@
      * returns <code>false</code>, query caching will not be used
      * even if the datacache plugin is installed.
      */
-    public boolean getQueryCache();
+    public boolean getEnlistInQueryCache();
 
     /**
      * Control whether or not query caching is enabled. This has no effect
      * if the datacache plugin is not installed, or if the query cache size
      * is set to zero.
      */
-    public FetchConfiguration setQueryCache(boolean cache);
+    public FetchConfiguration setEnlistInQueryCache(boolean cache);
 
     /**
      * The query automatic flush configuration.

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java Mon Aug 20 14:32:54 2007
@@ -150,7 +150,7 @@
     public void copy(FetchConfiguration fetch) {
         setFetchBatchSize(fetch.getFetchBatchSize());
         setMaxFetchDepth(fetch.getMaxFetchDepth());
-        setQueryCache(fetch.getQueryCache());
+        setEnlistInQueryCache(fetch.getEnlistInQueryCache());
         setFlushBeforeQueries(fetch.getFlushBeforeQueries());
         setLockTimeout(fetch.getLockTimeout());
         clearFetchGroups();
@@ -191,11 +191,11 @@
         return this;
     }
 
-    public boolean getQueryCache() {
+    public boolean getEnlistInQueryCache() {
         return _state.queryCache;
     }
 
-    public FetchConfiguration setQueryCache(boolean cache) {
+    public FetchConfiguration setEnlistInQueryCache(boolean cache) {
         _state.queryCache = cache;
         return this;
     }

Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StoreContext.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StoreContext.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StoreContext.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/StoreContext.java Mon Aug 20 14:32:54 2007
@@ -120,7 +120,7 @@
      * @param oids the oids of the objects to return
      * @return the objects that were looked up, in the same order as the oids
      * parameter
-     * @see #find(Object,boolean,call)
+     * @see #find(Object,boolean,FindCallbacks)
      */
     public Object[] findAll(Collection oids, boolean validate,
         FindCallbacks call);
@@ -373,25 +373,28 @@
 
     /**
      * Whether memory usage is reduced during this transaction at the expense
-     * of possibly more aggressive data cache evictions.
+     * of tracking changes at the type level instead of the instance level,
+     * resulting in more aggressive cache invalidation.
      *
-     * @since 0.3.4
+     * @since 1.0.0
      */
-    public boolean isLargeTransaction();
+    public boolean isTrackChangesByType();
 
     /**
      * If a large number of objects will be created, modified, or deleted
      * during this transaction setting this option to true will reduce memory
-     * usage if you perform periodic flushes. Upon transaction commit the
-     * data cache will have to more aggressively flush objects. The store cache
-     * will have to flush instances of objects for each class of object
-     * modified during the transaction. A side benefit of large transaction
-     * mode is that smaller update messages can be used for
+     * usage if you perform periodic flushes by tracking changes at the type
+     * level instead of the instance level, resulting in more aggressive cache
+     * invalidation. Upon transaction commit the data cache will have to
+     * more aggressively flush objects. The store cache will have to flush
+     * instances of objects for each class of object modified during the
+     * transaction. A side benefit of large transaction mode is that smaller
+     * update messages can be used for
      * {@link org.apache.openjpa.event.RemoteCommitEvent}s. Defaults to false.
      *
-     * @since 0.3.4
+     * @since 1.0.0
      */
-    public void setLargeTransaction(boolean largeTransaction);
+    public void setTrackChangesByType(boolean largeTransaction);
 
     /**
      * Whether this context is using managed transactions.

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ClassCriteria.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ClassCriteria.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ClassCriteria.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ClassCriteria.java Mon Aug 20 14:32:54 2007
@@ -30,6 +30,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Columns.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Columns.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Columns.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Columns.java Mon Aug 20 14:32:54 2007
@@ -30,6 +30,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ContainerTable.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ContainerTable.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ContainerTable.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ContainerTable.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DataStoreIdColumn.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DataStoreIdColumn.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DataStoreIdColumn.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DataStoreIdColumn.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DiscriminatorStrategy.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DiscriminatorStrategy.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DiscriminatorStrategy.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/DiscriminatorStrategy.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchMode.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchMode.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchMode.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchMode.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java Mon Aug 20 14:32:54 2007
@@ -18,14 +18,43 @@
  */
 package org.apache.openjpa.persistence.jdbc;
 
+import org.apache.openjpa.jdbc.kernel.EagerFetchModes;
+
 /**
  * Type of fetching to employ.
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 public enum EagerFetchType {
+    NONE(EagerFetchModes.EAGER_NONE),
+    JOIN(EagerFetchModes.EAGER_JOIN),
+    PARALLEL(EagerFetchModes.EAGER_PARALLEL);
+
+    private final int eagerFetchConstant;
+
+    private EagerFetchType(int value) {
+        eagerFetchConstant = value;
+    }
+
+    int toKernelConstant() {
+        return eagerFetchConstant;
+    }
+
+    static EagerFetchType fromKernelConstant(int kernelConstant) {
+        switch (kernelConstant) {
+            case EagerFetchModes.EAGER_NONE:
+                return NONE;
+
+            case EagerFetchModes.EAGER_JOIN:
+                return JOIN;
+
+            case EagerFetchModes.EAGER_PARALLEL:
+                return PARALLEL;
 
-    NONE,
-    JOIN,
-    PARALLEL };
+            default:
+                throw new IllegalArgumentException(kernelConstant + "");
+        }
+    }
+}

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementClassCriteria.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementClassCriteria.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementClassCriteria.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementClassCriteria.java Mon Aug 20 14:32:54 2007
@@ -30,6 +30,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementForeignKey.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementForeignKey.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementForeignKey.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementForeignKey.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementIndex.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementIndex.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementIndex.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementIndex.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumn.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumn.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumn.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumn.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumns.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumns.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumns.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementJoinColumns.java Mon Aug 20 14:32:54 2007
@@ -30,6 +30,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementNonpolymorphic.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementNonpolymorphic.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementNonpolymorphic.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ElementNonpolymorphic.java Mon Aug 20 14:32:54 2007
@@ -30,6 +30,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EmbeddedMapping.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EmbeddedMapping.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EmbeddedMapping.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EmbeddedMapping.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKey.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKey.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKey.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKey.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE, METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKeyAction.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKeyAction.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKeyAction.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/ForeignKeyAction.java Mon Aug 20 14:32:54 2007
@@ -23,10 +23,11 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 public enum ForeignKeyAction {
-
     RESTRICT,
     CASCADE,
     NULL,
-    DEFAULT };
+    DEFAULT
+};

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Index.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Index.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Index.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Index.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/IsolationLevel.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/IsolationLevel.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/IsolationLevel.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/IsolationLevel.java Mon Aug 20 14:32:54 2007
@@ -26,6 +26,7 @@
  * Isolation levels for use in {@link JDBCFetchPlan#setIsolation}.
  *
  * @since 0.9.7
+ * @published
  */
 public enum IsolationLevel {
     DEFAULT(-1),
@@ -41,11 +42,11 @@
         _connectionConstant = connectionConstant;
     }
 
-    protected int getConnectionConstant() {
+    public int getConnectionConstant() {
         return _connectionConstant;
     }
 
-    protected static IsolationLevel fromConnectionConstant(int constant) {
+    public static IsolationLevel fromConnectionConstant(int constant) {
         switch(constant) {
             case -1:
             case JDBCFetchConfiguration.DEFAULT:

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlan.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlan.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlan.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlan.java Mon Aug 20 14:32:54 2007
@@ -18,8 +18,9 @@
  */
 package org.apache.openjpa.persistence.jdbc;
 
-import org.apache.openjpa.jdbc.kernel.EagerFetchModes;
-import org.apache.openjpa.jdbc.kernel.LRSSizes;
+import java.util.Collection;
+import javax.persistence.LockModeType;
+
 import org.apache.openjpa.jdbc.sql.JoinSyntaxes;
 import org.apache.openjpa.persistence.FetchPlan;
 
@@ -32,35 +33,27 @@
  * @published
  */
 public interface JDBCFetchPlan
-    extends FetchPlan, EagerFetchModes, LRSSizes, JoinSyntaxes {
+    extends FetchPlan {
 
     /**
      * Eager fetch mode in loading relations.
-     * 
-     * @see EagerFetchModes
      */
-    public int getEagerFetchMode();
+    public EagerFetchType getEagerFetchMode();
 
     /**
      * Eager fetch mode in loading relations.
-     * 
-     * @see EagerFetchModes
      */
-    public JDBCFetchPlan setEagerFetchMode(int mode);
+    public JDBCFetchPlan setEagerFetchMode(EagerFetchType type);
 
     /**
      * Eager fetch mode in loading subclasses.
-     * 
-     * @see EagerFetchModes
      */
-    public int getSubclassFetchMode();
+    public EagerFetchType getSubclassFetchMode();
 
     /**
      * Eager fetch mode in loading subclasses.
-     * 
-     * @see EagerFetchModes
      */
-    public JDBCFetchPlan setSubclassFetchMode(int mode);
+    public JDBCFetchPlan setSubclassFetchMode(EagerFetchType type);
 
     /**
      * Type of JDBC result set to use for query results.
@@ -84,7 +77,7 @@
     public int getFetchDirection();
 
     /**
-     * Result set fetch direction.
+     * Result set fetch direction. // ##### what to do here?
      * 
      * @see java.sql.ResultSet
      */
@@ -92,31 +85,23 @@
 
     /**
      * How to determine the size of a large result set.
-     * 
-     * @see LRSSizes
      */
-    public int getLRSSize();
+    public LRSSizeType getLRSSize();
 
     /**
      * How to determine the size of a large result set.
-     * 
-     * @see LRSSizes
      */
-    public JDBCFetchPlan setLRSSize(int lrsSize);
+    public JDBCFetchPlan setLRSSize(LRSSizeType lrsSize);
 
     /**
      * SQL join syntax.
-     *
-     * @see JoinSyntaxes
      */
-    public int getJoinSyntax();
+    public JoinSyntaxType getJoinSyntax();
 
     /**
      * SQL join syntax.
-     *
-     * @see JoinSyntaxes
      */
-    public JDBCFetchPlan setJoinSyntax(int syntax);
+    public JDBCFetchPlan setJoinSyntax(JoinSyntaxType syntax);
 
     /**
      * The isolation level for queries issued to the database. This overrides
@@ -135,4 +120,35 @@
      * @since 0.9.7
      */
     public JDBCFetchPlan setIsolation(IsolationLevel level);
+
+
+    // covariant type support for return vals
+
+    public JDBCFetchPlan addFetchGroup(String group);
+    public JDBCFetchPlan addFetchGroups(Collection groups);
+    public JDBCFetchPlan addFetchGroups(String... groups);
+    public JDBCFetchPlan addField(Class cls, String field);
+    public JDBCFetchPlan addField(String field);
+    public JDBCFetchPlan addFields(Class cls, Collection fields);
+    public JDBCFetchPlan addFields(Class cls, String... fields);
+    public JDBCFetchPlan addFields(Collection fields);
+    public JDBCFetchPlan addFields(String... fields);
+    public JDBCFetchPlan clearFetchGroups();
+    public JDBCFetchPlan clearFields();
+    public JDBCFetchPlan removeFetchGroup(String group);
+    public JDBCFetchPlan removeFetchGroups(Collection groups);
+    public JDBCFetchPlan removeFetchGroups(String... groups);
+    public JDBCFetchPlan removeField(Class cls, String field);
+    public JDBCFetchPlan removeField(String field);
+    public JDBCFetchPlan removeFields(Class cls, Collection fields);
+    public JDBCFetchPlan removeFields(Class cls, String... fields);
+    public JDBCFetchPlan removeFields(String... fields);
+    public JDBCFetchPlan removeFields(Collection fields);
+    public JDBCFetchPlan resetFetchGroups();
+    public JDBCFetchPlan setEnlistInQueryResultCache(boolean cache);
+    public JDBCFetchPlan setFetchBatchSize(int fetchBatchSize);
+    public JDBCFetchPlan setLockTimeout(int timeout);
+    public JDBCFetchPlan setMaxFetchDepth(int depth);
+    public JDBCFetchPlan setReadLockMode(LockModeType mode);
+    public JDBCFetchPlan setWriteLockMode(LockModeType mode);
 }

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlanImpl.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlanImpl.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlanImpl.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JDBCFetchPlanImpl.java Mon Aug 20 14:32:54 2007
@@ -18,6 +18,9 @@
  */
 package org.apache.openjpa.persistence.jdbc;
 
+import java.util.Collection;
+import javax.persistence.LockModeType;
+
 import org.apache.openjpa.jdbc.kernel.DelegatingJDBCFetchConfiguration;
 import org.apache.openjpa.jdbc.kernel.JDBCFetchConfiguration;
 import org.apache.openjpa.kernel.DelegatingFetchConfiguration;
@@ -45,28 +48,28 @@
     }
 
     @Override
-    protected DelegatingFetchConfiguration newDelegatingFetchConfiguration
-        (FetchConfiguration fetch) {
+    protected DelegatingFetchConfiguration newDelegatingFetchConfiguration(
+        FetchConfiguration fetch) {
         _fetch = new DelegatingJDBCFetchConfiguration((JDBCFetchConfiguration)
             fetch, PersistenceExceptions.TRANSLATOR);
         return _fetch;
     }
 
-    public int getEagerFetchMode() {
-        return _fetch.getEagerFetchMode();
+    public EagerFetchType getEagerFetchMode() {
+        return EagerFetchType.fromKernelConstant(_fetch.getEagerFetchMode());
     }
 
-    public JDBCFetchPlanImpl setEagerFetchMode(int mode) {
-        _fetch.setEagerFetchMode(mode);
+    public JDBCFetchPlanImpl setEagerFetchMode(EagerFetchType type) {
+        _fetch.setEagerFetchMode(type.toKernelConstant());
         return this;
     }
 
-    public int getSubclassFetchMode() {
-        return _fetch.getSubclassFetchMode();
+    public EagerFetchType getSubclassFetchMode() {
+        return EagerFetchType.fromKernelConstant(_fetch.getSubclassFetchMode());
     }
 
-    public JDBCFetchPlanImpl setSubclassFetchMode(int mode) {
-        _fetch.setSubclassFetchMode(mode);
+    public JDBCFetchPlanImpl setSubclassFetchMode(EagerFetchType type) {
+        _fetch.setSubclassFetchMode(type.toKernelConstant());
         return this;
     }
 
@@ -88,21 +91,21 @@
         return this;
     }
 
-    public int getLRSSize() {
-        return _fetch.getLRSSize();
+    public LRSSizeType getLRSSize() {
+        return LRSSizeType.fromKernelConstant(_fetch.getLRSSize());
     }
 
-    public JDBCFetchPlanImpl setLRSSize(int lrsSize) {
-        _fetch.setLRSSize(lrsSize);
+    public JDBCFetchPlanImpl setLRSSize(LRSSizeType lrsSize) {
+        _fetch.setLRSSize(lrsSize.toKernelConstant());
         return this;
     }
 
-    public int getJoinSyntax() {
-        return _fetch.getJoinSyntax();
+    public JoinSyntaxType getJoinSyntax() {
+        return JoinSyntaxType.fromKernelConstant(_fetch.getJoinSyntax());
     }
 
-    public JDBCFetchPlanImpl setJoinSyntax(int syntax) {
-        _fetch.setJoinSyntax(syntax);
+    public JDBCFetchPlanImpl setJoinSyntax(JoinSyntaxType syntax) {
+        _fetch.setJoinSyntax(syntax.toKernelConstant());
         return this;
     }
 
@@ -113,5 +116,140 @@
     public JDBCFetchPlan setIsolation(IsolationLevel level) {
         _fetch.setIsolation(level.getConnectionConstant());
         return this;
+    }
+
+    @Override
+    public JDBCFetchPlan addFetchGroup(String group) {
+        return (JDBCFetchPlan) super.addFetchGroup(group);
+    }
+
+    @Override
+    public JDBCFetchPlan addFetchGroups(Collection groups) {
+        return (JDBCFetchPlan) super.addFetchGroups(groups);
+    }
+
+    @Override
+    public JDBCFetchPlan addFetchGroups(String... groups) {
+        return (JDBCFetchPlan) super.addFetchGroups(groups);
+    }
+
+    @Override
+    public JDBCFetchPlan addField(Class cls, String field) {
+        return (JDBCFetchPlan) super.addField(cls, field);
+    }
+
+    @Override
+    public JDBCFetchPlan addField(String field) {
+        return (JDBCFetchPlan) super.addField(field);
+    }
+
+    @Override
+    public JDBCFetchPlan addFields(Class cls, Collection fields) {
+        return (JDBCFetchPlan) super.addFields(cls, fields);
+    }
+
+    @Override
+    public JDBCFetchPlan addFields(Class cls, String... fields) {
+        return (JDBCFetchPlan) super.addFields(cls, fields);
+    }
+
+    @Override
+    public JDBCFetchPlan addFields(Collection fields) {
+        return (JDBCFetchPlan) super.addFields(fields);
+    }
+
+    @Override
+    public JDBCFetchPlan addFields(String... fields) {
+        return (JDBCFetchPlan) super.addFields(fields);
+    }
+
+    @Override
+    public JDBCFetchPlan clearFetchGroups() {
+        return (JDBCFetchPlan) super.clearFetchGroups();
+    }
+
+    @Override
+    public JDBCFetchPlan clearFields() {
+        return (JDBCFetchPlan) super.clearFields();
+    }
+
+    @Override
+    public JDBCFetchPlan removeFetchGroup(String group) {
+        return (JDBCFetchPlan) super.removeFetchGroup(group);
+    }
+
+    @Override
+    public JDBCFetchPlan removeFetchGroups(Collection groups) {
+        return (JDBCFetchPlan) super.removeFetchGroups(groups);
+    }
+
+    @Override
+    public JDBCFetchPlan removeFetchGroups(String... groups) {
+        return (JDBCFetchPlan) super.removeFetchGroups(groups);
+    }
+
+    @Override
+    public JDBCFetchPlan removeField(Class cls, String field) {
+        return (JDBCFetchPlan) super.removeField(cls, field);
+    }
+
+    @Override
+    public JDBCFetchPlan removeField(String field) {
+        return (JDBCFetchPlan) super.removeField(field);
+    }
+
+    @Override
+    public JDBCFetchPlan removeFields(Class cls, Collection fields) {
+        return (JDBCFetchPlan) super.removeFields(cls, fields);
+    }
+
+    @Override
+    public JDBCFetchPlan removeFields(Class cls, String... fields) {
+        return (JDBCFetchPlan) super.removeFields(cls, fields);
+    }
+
+    @Override
+    public JDBCFetchPlan removeFields(Collection fields) {
+        return (JDBCFetchPlan) super.removeFields(fields);
+    }
+
+    @Override
+    public JDBCFetchPlan removeFields(String... fields) {
+        return (JDBCFetchPlan) super.removeFields(fields);
+    }
+
+    @Override
+    public JDBCFetchPlan resetFetchGroups() {
+        return (JDBCFetchPlan) super.resetFetchGroups();
+    }
+
+    @Override
+    public JDBCFetchPlan setEnlistInQueryResultCache(boolean cache) {
+        return (JDBCFetchPlan) super.setEnlistInQueryResultCache(cache);
+    }
+
+    @Override
+    public JDBCFetchPlan setFetchBatchSize(int fetchBatchSize) {
+        return (JDBCFetchPlan) super.setFetchBatchSize(fetchBatchSize);
+    }
+
+    @Override
+    public JDBCFetchPlan setLockTimeout(int timeout) {
+        return (JDBCFetchPlan) super.setLockTimeout(timeout);
+    }
+
+    @Override
+    public JDBCFetchPlan setMaxFetchDepth(int depth) {
+        return (JDBCFetchPlan) super.setMaxFetchDepth(depth);
+    }
+
+    @Override
+    public JDBCFetchPlan setReadLockMode(LockModeType mode) {
+        return (JDBCFetchPlan) super.setReadLockMode(mode);
+    }
+
+    @Override
+    public JDBCFetchPlan setWriteLockMode(LockModeType mode) {
+        return (JDBCFetchPlan) super.setWriteLockMode(mode);
     }
 }

Added: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JoinSyntaxType.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JoinSyntaxType.java?rev=567838&view=auto
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JoinSyntaxType.java (added)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/JoinSyntaxType.java Mon Aug 20 14:32:54 2007
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package org.apache.openjpa.persistence.jdbc;
+
+import org.apache.openjpa.jdbc.sql.JoinSyntaxes;
+
+/**
+ * Type of join syntax to use.
+ *
+ * @since 1.0.0
+ * @published
+ */
+public enum JoinSyntaxType {
+    SQL92(JoinSyntaxes.SYNTAX_SQL92),
+    TRADITIONAL(JoinSyntaxes.SYNTAX_TRADITIONAL),
+    DATABASE(JoinSyntaxes.SYNTAX_DATABASE);
+
+    private final int joinSyntaxConstant;
+
+    private JoinSyntaxType(int value) {
+        joinSyntaxConstant = value;
+    }
+
+    int toKernelConstant() {
+        return joinSyntaxConstant;
+    }
+
+    static JoinSyntaxType fromKernelConstant(int kernelConstant) {
+        switch (kernelConstant) {
+            case JoinSyntaxes.SYNTAX_SQL92:
+                return SQL92;
+
+            case JoinSyntaxes.SYNTAX_TRADITIONAL:
+                return TRADITIONAL;
+
+            case JoinSyntaxes.SYNTAX_DATABASE:
+                return DATABASE;
+
+            default:
+                throw new IllegalArgumentException(kernelConstant + "");
+        }
+    }
+}
\ No newline at end of file

Copied: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/LRSSizeType.java (from r565999, openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java)
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/LRSSizeType.java?p2=openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/LRSSizeType.java&p1=openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java&r1=565999&r2=567838&rev=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/EagerFetchType.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/LRSSizeType.java Mon Aug 20 14:32:54 2007
@@ -18,14 +18,42 @@
  */
 package org.apache.openjpa.persistence.jdbc;
 
+import org.apache.openjpa.jdbc.kernel.LRSSizes;
+
 /**
- * Type of fetching to employ.
+ * Algorithm to use for computing the size of an LRS relation.
  *
- * @author Abe White
- * @since 0.4.0
+ * @since 1.0.0
+ * @published
  */
-public enum EagerFetchType {
+public enum LRSSizeType {
+    UNKNOWN(LRSSizes.SIZE_UNKNOWN),
+    LAST(LRSSizes.SIZE_LAST),
+    QUERY(LRSSizes.SIZE_QUERY);
+
+    private final int lrsConstant;
+
+    private LRSSizeType(int value) {
+        lrsConstant = value;
+    }
+
+    int toKernelConstant() {
+        return lrsConstant;
+    }
+
+    static LRSSizeType fromKernelConstant(int kernelConstant) {
+        switch (kernelConstant) {
+            case LRSSizes.SIZE_UNKNOWN:
+                return UNKNOWN;
+
+            case LRSSizes.SIZE_LAST:
+                return LAST;
+
+            case LRSSizes.SIZE_QUERY:
+                return QUERY;
 
-    NONE,
-    JOIN,
-    PARALLEL };
+            default:
+                throw new IllegalArgumentException(kernelConstant + "");
+        }
+    }
+}
\ No newline at end of file

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverride.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverride.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverride.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverride.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverrides.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverrides.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverrides.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/MappingOverrides.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Nonpolymorphic.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Nonpolymorphic.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Nonpolymorphic.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Nonpolymorphic.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/NonpolymorphicType.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/NonpolymorphicType.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/NonpolymorphicType.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/NonpolymorphicType.java Mon Aug 20 14:32:54 2007
@@ -23,9 +23,10 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 public enum NonpolymorphicType {
-
     EXACT,
     JOINABLE,
-    FALSE };
+    FALSE
+};

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/OrderColumn.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/OrderColumn.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/OrderColumn.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/OrderColumn.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Strategy.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Strategy.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Strategy.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Strategy.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE, METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/SubclassFetchMode.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/SubclassFetchMode.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/SubclassFetchMode.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/SubclassFetchMode.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Unique.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Unique.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Unique.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/Unique.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumn.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumn.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumn.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumn.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumns.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumns.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumns.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionColumns.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionStrategy.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionStrategy.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionStrategy.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/VersionStrategy.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumn.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumn.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumn.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumn.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumns.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumns.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumns.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XJoinColumns.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ METHOD, FIELD })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTable.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTable.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTable.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTable.java Mon Aug 20 14:32:54 2007
@@ -29,6 +29,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTables.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTables.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTables.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XSecondaryTables.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XTable.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XTable.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XTable.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/XTable.java Mon Aug 20 14:32:54 2007
@@ -28,6 +28,7 @@
  *
  * @author Abe White
  * @since 0.4.0
+ * @published
  */
 @Target({ TYPE })
 @Retention(RUNTIME)

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestAutoDetachProperty.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestAutoDetachProperty.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestAutoDetachProperty.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestAutoDetachProperty.java Mon Aug 20 14:32:54 2007
@@ -24,7 +24,6 @@
 
 import junit.framework.*;
 
-import org.apache.openjpa.kernel.AutoDetach;
 import org.apache.openjpa.persistence.*;
 
 public class TestAutoDetachProperty extends TestCase {
@@ -63,17 +62,20 @@
     }
 
     private boolean isAutoDetachingOnClose() {
-        int autoDetachFlags = OpenJPAPersistence.cast(em).getAutoDetach();
-        return (autoDetachFlags & AutoDetach.DETACH_CLOSE) > 0;
+        EnumSet<AutoDetachType> autoDetachFlags =
+            OpenJPAPersistence.cast(em).getAutoDetach();
+        return autoDetachFlags.contains(AutoDetachType.CLOSE);
     }
 
     private boolean isAutoDetachingOnCommit() {
-        int autoDetachFlags = OpenJPAPersistence.cast(em).getAutoDetach();
-        return (autoDetachFlags & AutoDetach.DETACH_COMMIT) > 0;
+        EnumSet<AutoDetachType> autoDetachFlags =
+            OpenJPAPersistence.cast(em).getAutoDetach();
+        return autoDetachFlags.contains(AutoDetachType.COMMIT);
     }
 
     private boolean isAutoDetachingOnNonTxRead() {
-        int autoDetachFlags = OpenJPAPersistence.cast(em).getAutoDetach();
-        return (autoDetachFlags & AutoDetach.DETACH_NONTXREAD) > 0;
+        EnumSet<AutoDetachType> autoDetachFlags =
+            OpenJPAPersistence.cast(em).getAutoDetach();
+        return autoDetachFlags.contains(AutoDetachType.NON_TRANSACTIONAL_READ);
     }
 }

Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestDynamicConfiguration.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestDynamicConfiguration.java?rev=567838&r1=567837&r2=567838&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestDynamicConfiguration.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/conf/TestDynamicConfiguration.java Mon Aug 20 14:32:54 2007
@@ -18,12 +18,10 @@
  */
 package org.apache.openjpa.conf;
 
-import javax.persistence.Persistence;
-import org.apache.openjpa.persistence.test.*;
-import org.apache.openjpa.conf.OpenJPAConfiguration;
 import org.apache.openjpa.lib.conf.Value;
 import org.apache.openjpa.persistence.OpenJPAEntityManagerFactory;
-import org.apache.openjpa.persistence.OpenJPAPersistence;
+import org.apache.openjpa.persistence.OpenJPAEntityManagerFactorySPI;
+import org.apache.openjpa.persistence.test.SingleEMFTestCase;
 
 /**
  * Tests dynamic modification of configuration property.
@@ -32,13 +30,13 @@
  *
  */
 public class TestDynamicConfiguration extends SingleEMFTestCase {
-	
-	public void testConfigurationIsEqualByValueAndHashCode() {
-		OpenJPAEntityManagerFactory emf1 = createEMF();
+
+    public void testConfigurationIsEqualByValueAndHashCode() {
+		OpenJPAEntityManagerFactorySPI emf1 = createEMF();
 		assertNotNull(emf1);
 		OpenJPAConfiguration conf1 = emf1.getConfiguration();
 		
-		OpenJPAEntityManagerFactory emf2 = createEMF();
+		OpenJPAEntityManagerFactorySPI emf2 = createEMF();
 		assertNotNull(emf2);
 		OpenJPAConfiguration conf2 = emf2.getConfiguration();
 		
@@ -51,8 +49,6 @@
 	}
 	
 	public void testConfigurationIsReadOnlyAfterFirstConstruction() {
-		OpenJPAEntityManagerFactory emf = createEMF();
-		assertNotNull(emf);
 		OpenJPAConfiguration conf = emf.getConfiguration();
 		assertFalse(conf.isReadOnly());
 		emf.createEntityManager();
@@ -60,8 +56,6 @@
 	}
 	
 	public void testDynamicValuesCanNotBeChangedDirectly() {
-		OpenJPAEntityManagerFactory emf = createEMF();
-		assertNotNull(emf);
 		emf.createEntityManager();
 		OpenJPAConfiguration conf = emf.getConfiguration();
 		
@@ -80,8 +74,6 @@
 	}
 	
 	public void testDynamicValuesCanBeChanged() {
-		OpenJPAEntityManagerFactory emf = createEMF();
-		assertNotNull(emf);
 		OpenJPAConfiguration conf = emf.getConfiguration();
 		
 		Value[] dynamicValues = conf.getDynamicValues();
@@ -96,8 +88,6 @@
 	}
 
 	public void testDynamicValuesAreCorrectlySet() {
-		OpenJPAEntityManagerFactory emf = createEMF();
-		assertNotNull(emf);
 		OpenJPAConfiguration conf = emf.getConfiguration();
 		
 		Value[] dynamicValues = conf.getDynamicValues();
@@ -106,8 +96,6 @@
 	}
 	
 	public void testDynamicChangeDoesNotChangeHashCode() {
-		OpenJPAEntityManagerFactory emf = createEMF();
-		assertNotNull(emf);
 		OpenJPAConfiguration conf1 = emf.getConfiguration();
 		
 		int oldValue = conf1.getLockTimeout();



Mime
View raw message