Author: jverhaeg(a)redhat.com
Date: 2008-08-06 15:25:58 -0400 (Wed, 06 Aug 2008)
New Revision: 393
Modified:
trunk/dna-repository/src/main/java/org/jboss/dna/repository/sequencers/SequencingService.java
Log:
DNA-193: Added methods to ExecutionContext, ExecutionContextFactory, and implementations
to support JAAS login and access control contexts.
Modified:
trunk/dna-repository/src/main/java/org/jboss/dna/repository/sequencers/SequencingService.java
===================================================================
---
trunk/dna-repository/src/main/java/org/jboss/dna/repository/sequencers/SequencingService.java 2008-08-06
19:23:19 UTC (rev 392)
+++
trunk/dna-repository/src/main/java/org/jboss/dna/repository/sequencers/SequencingService.java 2008-08-06
19:25:58 UTC (rev 393)
@@ -21,6 +21,7 @@
*/
package org.jboss.dna.repository.sequencers;
+import java.security.AccessControlContext;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
@@ -39,6 +40,7 @@
import javax.jcr.Session;
import javax.jcr.observation.Event;
import javax.security.auth.Subject;
+import javax.security.auth.login.LoginContext;
import net.jcip.annotations.Immutable;
import net.jcip.annotations.ThreadSafe;
import org.jboss.dna.common.component.ClassLoaderFactory;
@@ -636,27 +638,42 @@
};
}
- protected synchronized void recordSession( Session session ) {
- if (session != null) sessions.add(session);
+ public synchronized void close() {
+ if (this.closed.get()) return;
+ this.closed.set(true);
+ for (Session session : sessions) {
+ if (session != null) session.logout();
+ }
}
/**
* {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.ExecutionContext#getAccessControlContext()
*/
- public NamespaceRegistry getNamespaceRegistry() {
- return this.delegate.getNamespaceRegistry();
+ public AccessControlContext getAccessControlContext() {
+ return delegate.getAccessControlContext();
}
/**
* {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.ExecutionContext#getLoginContext()
*/
- public ValueFactories getValueFactories() {
- return this.delegate.getValueFactories();
+ public LoginContext getLoginContext() {
+ return delegate.getLoginContext();
}
/**
* {@inheritDoc}
*/
+ public NamespaceRegistry getNamespaceRegistry() {
+ return this.delegate.getNamespaceRegistry();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public PropertyFactory getPropertyFactory() {
return this.delegate.getPropertyFactory();
}
@@ -670,26 +687,29 @@
/**
* {@inheritDoc}
+ *
+ * @see org.jboss.dna.spi.ExecutionContext#getSubject()
*/
+ public Subject getSubject() {
+ return this.delegate.getSubject();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public JcrTools getTools() {
return SequencingService.this.getExecutionContext().getTools();
}
/**
* {@inheritDoc}
- *
- * @see org.jboss.dna.spi.ExecutionContext#getSubject()
*/
- public Subject getSubject() {
- return this.delegate.getSubject();
+ public ValueFactories getValueFactories() {
+ return this.delegate.getValueFactories();
}
- public synchronized void close() {
- if (this.closed.get()) return;
- this.closed.set(true);
- for (Session session : sessions) {
- if (session != null) session.logout();
- }
+ protected synchronized void recordSession( Session session ) {
+ if (session != null) sessions.add(session);
}
}
Show replies by date