X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=test%2Fenterprise%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Ftest%2Ftransactions%2FSimpleTransactionManager.java;h=3ba4e8147c760e19d76a410e25f4ec1d3f1f0224;hb=ee7fa42171c628c71bf072131b4b67b79316129c;hp=ee8eb77dc08fb3d8a25ad5efb9bb154a86372750;hpb=099827f9fe35da8a3be1010a222e90db94f0b5c4;p=utils diff --git a/test/enterprise/src/main/java/org/wamblee/test/transactions/SimpleTransactionManager.java b/test/enterprise/src/main/java/org/wamblee/test/transactions/SimpleTransactionManager.java index ee8eb77d..3ba4e814 100644 --- a/test/enterprise/src/main/java/org/wamblee/test/transactions/SimpleTransactionManager.java +++ b/test/enterprise/src/main/java/org/wamblee/test/transactions/SimpleTransactionManager.java @@ -20,9 +20,43 @@ import java.util.List; import javax.transaction.UserTransaction; +import org.wamblee.general.ThreadSpecificProxyFactory; +import org.wamblee.test.persistence.JpaBuilder; + /** - * Simple transaction manager provides a simple mechanism to manage transaction + * + *
+ * Simple transaction manager provides a simple mechanism to manage transactions * in test code through the {@link UserTransaction} object. + * To construct the transaction manager use: + *
+ *+ * SimpleTransactionManager manager = + * new SimpleTransactionManager(new DefaultUserTransactionFactory()); + *+ * + *
+ * Next, add resources to manage using {@link #addResource(TransactionResource)}: + *
+ * manager.addResource(jpaTester.getJpaBuilder()); + *+ *
+ * As you can see from the above, {@link JpaBuilder} is a resource that can be used + * so this mechanism can be used with JPA testing. + *
+ * + *
+ * The next step is to manage transactions using the standard UserTransaction
+ * APIs:
+ *
+ * UserTransaction transaction = manager.getTransaction(); + * transaction.begin(); + * + * ... do work... + * + * transaction.commit(); + ** * @author Erik Brakkee * @@ -30,7 +64,7 @@ import javax.transaction.UserTransaction; public class SimpleTransactionManager { private UserTransactionFactory factory; - private ThreadLocal