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 2007/03/07 01:22:22 UTC
svn commit: r515390 - in /incubator/openejb/trunk/openejb2/modules:
openejb-builder/src/main/java/org/apache/openejb/deployment/
openejb-core/src/main/java/org/apache/openejb/mdb/
Author: djencks
Date: Tue Mar 6 16:22:21 2007
New Revision: 515390
URL: http://svn.apache.org/viewvc?view=rev&rev=515390
Log:
GERONIMO-2868 Add default subject and run-as for mdbs
Modified:
incubator/openejb/trunk/openejb2/modules/openejb-builder/src/main/java/org/apache/openejb/deployment/MdbBuilder.java
incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/DefaultMdbContainer.java
incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeployment.java
incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeploymentGBean.java
Modified: incubator/openejb/trunk/openejb2/modules/openejb-builder/src/main/java/org/apache/openejb/deployment/MdbBuilder.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb2/modules/openejb-builder/src/main/java/org/apache/openejb/deployment/MdbBuilder.java?view=diff&rev=515390&r1=515389&r2=515390
==============================================================================
--- incubator/openejb/trunk/openejb2/modules/openejb-builder/src/main/java/org/apache/openejb/deployment/MdbBuilder.java (original)
+++ incubator/openejb/trunk/openejb2/modules/openejb-builder/src/main/java/org/apache/openejb/deployment/MdbBuilder.java Tue Mar 6 16:22:21 2007
@@ -47,6 +47,7 @@
private String ejbContainerName;
private String policyContextId;
+ private DefaultPrincipal defaultPrincipal;
private Subject runAs;
private boolean beanManagedTransactions = false;
@@ -86,11 +87,11 @@
}
public DefaultPrincipal getDefaultPrincipal() {
- return null; // RETURN NOTHING
+ return defaultPrincipal;
}
public void setDefaultPrincipal(DefaultPrincipal defaultPrincipal) {
- // DO NOTHING
+ this.defaultPrincipal = defaultPrincipal;
}
public Subject getRunAs() {
@@ -167,6 +168,7 @@
gbean.setReferencePattern("ejbContainer", ejbContainerQuery);
gbean.setAttribute("policyContextId", policyContextId);
+ gbean.setAttribute("defaultPrincipal", defaultPrincipal);
gbean.setAttribute("runAs", runAs);
gbean.setAttribute("beanManagedTransactions", new Boolean(beanManagedTransactions));
Modified: incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/DefaultMdbContainer.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/DefaultMdbContainer.java?view=diff&rev=515390&r1=515389&r2=515390
==============================================================================
--- incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/DefaultMdbContainer.java (original)
+++ incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/DefaultMdbContainer.java Tue Mar 6 16:22:21 2007
@@ -38,7 +38,9 @@
import org.apache.openejb.transaction.DefaultUserTransaction;
import org.apache.openejb.dispatch.DispatchInterceptor;
import org.apache.openejb.naming.ComponentContextInterceptor;
+import org.apache.openejb.security.DefaultSubjectInterceptor;
import org.apache.openejb.security.EJBIdentityInterceptor;
+import org.apache.openejb.security.EjbRunAsInterceptor;
import javax.ejb.Timer;
import javax.transaction.TransactionManager;
@@ -84,6 +86,9 @@
invocationChain = new EJBIdentityInterceptor(invocationChain);
}
+ // Sets the run as subject which is used when this ejb calls another ejb
+ invocationChain = new EjbRunAsInterceptor(invocationChain);
+
if (trackedConnectionAssociator != null) {
invocationChain = new ConnectionTrackingInterceptor(invocationChain, trackedConnectionAssociator);
}
@@ -102,6 +107,9 @@
// logs system exceptions
invocationChain = new SystemExceptionInterceptor(invocationChain);
+
+ // sets the invocation subject when the invocation has no subject associated
+ invocationChain = new DefaultSubjectInterceptor(invocationChain);
this.invocationChain = invocationChain;
Modified: incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeployment.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeployment.java?view=diff&rev=515390&r1=515389&r2=515390
==============================================================================
--- incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeployment.java (original)
+++ incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeployment.java Tue Mar 6 16:22:21 2007
@@ -19,6 +19,7 @@
import org.apache.geronimo.connector.ActivationSpecWrapper;
import org.apache.geronimo.gbean.GBeanLifecycle;
import org.apache.geronimo.kernel.Kernel;
+import org.apache.geronimo.security.deploy.DefaultPrincipal;
import org.apache.geronimo.timer.PersistenceException;
import org.apache.geronimo.transaction.manager.NamedXAResource;
import org.apache.geronimo.transaction.manager.WrapperNamedXAResource;
@@ -87,6 +88,7 @@
MdbContainer ejbContainer,
String policyContextId,
+ DefaultPrincipal defaultPrincipal,
Subject runAs,
boolean beanManagedTransactions,
@@ -106,6 +108,7 @@
activationSpecWrapper,
ejbContainer,
policyContextId,
+ defaultPrincipal,
runAs,
beanManagedTransactions,
transactionPolicies,
@@ -127,6 +130,7 @@
MdbContainer ejbContainer,
String policyContextId,
+ DefaultPrincipal defaultPrincipal,
Subject runAs,
boolean beanManagedTransactions,
@@ -147,7 +151,7 @@
ejbContainer,
false,
policyContextId,
- null,
+ defaultPrincipal,
runAs,
beanManagedTransactions,
transactionPolicies,
Modified: incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeploymentGBean.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeploymentGBean.java?view=diff&rev=515390&r1=515389&r2=515390
==============================================================================
--- incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeploymentGBean.java (original)
+++ incubator/openejb/trunk/openejb2/modules/openejb-core/src/main/java/org/apache/openejb/mdb/MdbDeploymentGBean.java Tue Mar 6 16:22:21 2007
@@ -19,6 +19,7 @@
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.security.deploy.DefaultPrincipal;
import org.apache.geronimo.connector.ActivationSpecWrapper;
import org.apache.geronimo.kernel.Kernel;
import org.apache.openejb.MdbContainer;
@@ -50,6 +51,7 @@
infoFactory.addReference("ejbContainer", MdbContainer.class, "MdbContainer");
infoFactory.addAttribute("policyContextId", String.class, true);
+ infoFactory.addAttribute("defaultPrincipal", DefaultPrincipal.class, true);
infoFactory.addAttribute("runAs", Subject.class, true);
infoFactory.addAttribute("beanManagedTransactions", boolean.class, true);
@@ -75,6 +77,7 @@
"ejbContainer",
"policyContextId",
+ "defaultPrincipal",
"runAs",
"beanManagedTransactions",