From bd197313c85d3ee6336e7e7cbf7ff706247df9b4 Mon Sep 17 00:00:00 2001 From: Erik Brakkee Date: Mon, 5 Jul 2010 20:38:58 +0000 Subject: [PATCH] More javadoc. --- .../jndi/StubInitialContextFactory.java | 10 +++- .../support/persistence/DatabaseBuilder.java | 2 +- ....wamblee.support.persistence__database.jpg | Bin 0 -> 79931 bytes ...wamblee.support.persistence__jpatester.jpg | Bin 0 -> 32557 bytes .../support/persistence/package-info.java | 54 ++++++++++++++---- 5 files changed, 51 insertions(+), 15 deletions(-) create mode 100644 test/enterprise/src/main/java/org/wamblee/support/persistence/doc-files/Class_Diagram__org.wamblee.support.persistence__database.jpg create mode 100644 test/enterprise/src/main/java/org/wamblee/support/persistence/doc-files/Class_Diagram__org.wamblee.support.persistence__jpatester.jpg diff --git a/test/enterprise/src/main/java/org/wamblee/support/jndi/StubInitialContextFactory.java b/test/enterprise/src/main/java/org/wamblee/support/jndi/StubInitialContextFactory.java index d65968a2..158bd6d8 100644 --- a/test/enterprise/src/main/java/org/wamblee/support/jndi/StubInitialContextFactory.java +++ b/test/enterprise/src/main/java/org/wamblee/support/jndi/StubInitialContextFactory.java @@ -27,11 +27,17 @@ import javax.naming.spi.InitialContextFactory; * * See {@link #bind(String, Object)} to resp. register the initial context. * - * To bind objects in the JNDI tree simply use the standard JNDI api: + * To start mocking the JNDI tree, call {@link #register()}. + * + * To bind objects in the JNDI tree simply use the standard JNDI api: + *
  *   InitialContext context = new InitialContext();
  *   MyClass myObj = ...; 
  *   context.bind("a/b", myObj); 
- * 
+ * 
+ * + * When finished with a test case, call {@link #unregister()} to unregister the + * JNDI tree again. */ public class StubInitialContextFactory implements InitialContextFactory { diff --git a/test/enterprise/src/main/java/org/wamblee/support/persistence/DatabaseBuilder.java b/test/enterprise/src/main/java/org/wamblee/support/persistence/DatabaseBuilder.java index 6f495698..ae7cd28a 100644 --- a/test/enterprise/src/main/java/org/wamblee/support/persistence/DatabaseBuilder.java +++ b/test/enterprise/src/main/java/org/wamblee/support/persistence/DatabaseBuilder.java @@ -60,7 +60,7 @@ public class DatabaseBuilder { * Environmment variable by which capabilities of the requested database can * be defined */ - private static final String DB_CAPABILITIES_PROP = "TEST_DB_CAPABILITIES"; + public static final String DB_CAPABILITIES_PROP = "TEST_DB_CAPABILITIES"; private static ServiceLoader LOADER = ServiceLoader.load(DatabaseProvider.class); diff --git a/test/enterprise/src/main/java/org/wamblee/support/persistence/doc-files/Class_Diagram__org.wamblee.support.persistence__database.jpg b/test/enterprise/src/main/java/org/wamblee/support/persistence/doc-files/Class_Diagram__org.wamblee.support.persistence__database.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f8e6cedec6dedfe11d5cd3fa484ebe7367094e2c GIT binary patch literal 79931 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%0ApjZ2*d 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 literal 0 HcmV?d00001 diff --git a/test/enterprise/src/main/java/org/wamblee/support/persistence/doc-files/Class_Diagram__org.wamblee.support.persistence__jpatester.jpg b/test/enterprise/src/main/java/org/wamblee/support/persistence/doc-files/Class_Diagram__org.wamblee.support.persistence__jpatester.jpg new file mode 100644 index 0000000000000000000000000000000000000000..965e92b4347abe090f94c028cd4a66cd18dae925 GIT binary patch literal 32557 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 G{{H|4Rp0Xf literal 0 HcmV?d00001 diff --git a/test/enterprise/src/main/java/org/wamblee/support/persistence/package-info.java b/test/enterprise/src/main/java/org/wamblee/support/persistence/package-info.java index d38be579..1ea78e25 100644 --- a/test/enterprise/src/main/java/org/wamblee/support/persistence/package-info.java +++ b/test/enterprise/src/main/java/org/wamblee/support/persistence/package-info.java @@ -72,6 +72,12 @@ * This also requires a number of environment variables or system properties to be set, * see {@link ExternalDatabase}. * + *

+ * However, the most convenient way to set the capabilities is usually to set a system property or environment + * variable see the javadocs of {@link DatabaseBuilder}. and + * specifically {@link DatabaseBuilder#DB_CAPABILITIES_PROP} + *

+ * * * *

Executing code within a JDBC transaction

@@ -189,26 +195,50 @@ *

* *
- *

design overview

+ *

Design overview

*
* - *

Database transaparency

- * - *

Testing using JDBC and DBUnit

+ *

Database transparency

* + *
+ * database + *
+ *

+ * {@link DatabaseProvider} uses java.util.ServiceLoader to find all implementations + * of {@link DatabaseProvider} on the classpath. It then asks the database providers whether + * they support the required capabilities (by default inmemory), and the first provider that + * supports the capabilities is used to create the database. + *

+ *

+ * Note that the Database interface is not intended to always create a database. + * It will do so for {@link DerbyDatabase} (inmemory), but with {@link ExternalDatabase} + * it simply connects to an external database based on system properties or environment + * variables. + *

+ * *

JPA tester overview

* + *
+ * database + *
+ * + *

JPATester is responsible for:

+ *
    + *
  • Starting or connecting to a database, using {@link DatabaseBuilder}. + *
  • + *
  • Registering the acquired datasource in JNDI by first stubbing JNDI + * using {@link org.wamblee.support.jndi.StubInitialContextFactory}. + *
  • + *
  • Creating the {@link JPABuilder} that will do the JPA heavy lifting. + *
  • + *
  • Creating the {@link DatabaseUtils} for JDBC and DBUnit testing. + *
  • + *
* * */ package org.wamblee.support.persistence; -import static org.mockito.Mockito.*; - -import javax.persistence.EntityManager; - -import org.junit.Before; -import org.wamblee.support.persistence.JpaBuilder.JpaUnitOfWork; -import org.wamblee.support.persistence.TransactionProxyFactoryTestBase.Service; - -- 2.31.1