You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by dj...@apache.org on 2010/08/07 02:21:11 UTC
svn commit: r983149 - in /openejb/branches/openejb-3.0.x: ./
container/openejb-core/src/main/java/org/apache/openejb/core/mdb/InboundRecovery.java
container/openejb-core/src/main/java/org/apache/openejb/core/mdb/MdbContainer.java
Author: djencks
Date: Sat Aug 7 00:21:10 2010
New Revision: 983149
URL: http://svn.apache.org/viewvc?rev=983149&view=rev
Log:
OPENEJB-1320 xa recovery on inbound resource adapters
Added:
openejb/branches/openejb-3.0.x/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/InboundRecovery.java
- copied unchanged from r982436, openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/InboundRecovery.java
Modified:
openejb/branches/openejb-3.0.x/ (props changed)
openejb/branches/openejb-3.0.x/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/MdbContainer.java
Propchange: openejb/branches/openejb-3.0.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sat Aug 7 00:21:10 2010
@@ -1 +1 @@
-/openejb/trunk/openejb3:692706,720223,752633,808626
+/openejb/trunk/openejb3:692706,720223,752633,808626,982436
Modified: openejb/branches/openejb-3.0.x/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/MdbContainer.java
URL: http://svn.apache.org/viewvc/openejb/branches/openejb-3.0.x/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/MdbContainer.java?rev=983149&r1=983148&r2=983149&view=diff
==============================================================================
--- openejb/branches/openejb-3.0.x/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/MdbContainer.java (original)
+++ openejb/branches/openejb-3.0.x/container/openejb-core/src/main/java/org/apache/openejb/core/mdb/MdbContainer.java Sat Aug 7 00:21:10 2010
@@ -33,10 +33,12 @@ import org.apache.openejb.core.intercept
import org.apache.openejb.core.transaction.TransactionContainer;
import org.apache.openejb.core.transaction.TransactionContext;
import org.apache.openejb.core.transaction.TransactionPolicy;
+import org.apache.openejb.loader.SystemInstance;
import org.apache.openejb.spi.SecurityService;
import org.apache.openejb.util.LogCategory;
import org.apache.openejb.util.Logger;
+import org.apache.openejb.util.Options;
import org.apache.xbean.recipe.ObjectRecipe;
import org.apache.xbean.recipe.Option;
@@ -70,6 +72,7 @@ public class MdbContainer implements Rpc
private final boolean txRecovery;
private final ConcurrentMap<Object, CoreDeploymentInfo> deployments = new ConcurrentHashMap<Object, CoreDeploymentInfo>();
+ private final InboundRecovery inboundRecovery;
public MdbContainer(Object containerID, TransactionManager transactionManager, SecurityService securityService, ResourceAdapter resourceAdapter, Class messageListenerInterface, Class activationSpecClass, int instanceLimit, boolean txRecovery) {
this.containerID = containerID;
@@ -80,6 +83,7 @@ public class MdbContainer implements Rpc
this.activationSpecClass = activationSpecClass;
this.instanceLimit = instanceLimit;
this.txRecovery = txRecovery;
+ inboundRecovery = SystemInstance.get().getComponent(InboundRecovery.class);
}
public DeploymentInfo [] deployments() {
@@ -122,6 +126,10 @@ public class MdbContainer implements Rpc
// create the activation spec
ActivationSpec activationSpec = createActivationSpec(deploymentInfo);
+ if (inboundRecovery != null) {
+ inboundRecovery.recover(resourceAdapter, activationSpec, containerID.toString());
+ }
+
// create the message endpoint
MdbInstanceFactory instanceFactory = new MdbInstanceFactory(deploymentInfo, transactionManager, securityService, instanceLimit);
EndpointFactory endpointFactory = new EndpointFactory(activationSpec, this, deploymentInfo, instanceFactory, txRecovery);