[java-identity-provider COMMIT] in /trunk/idp-session-impl/src: main/java/net/shibboleth/idp/session/impl/StorageBack...

noreply at shibboleth.net noreply at shibboleth.net
Wed Sep 25 16:13:29 EDT 2013


Author: scantor
Date: Wed Sep 25 16:13:29 2013
New Revision: 4799

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4799&view=rev
Log:
Implement resolver methods based on current design. 

Modified:
    trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSessionSerializer.java
    trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java
    trunk/idp-session-impl/src/test/java/net/shibboleth/idp/session/impl/StorageBackedIdPSessionSerializerTest.java

Modified: trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSessionSerializer.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSessionSerializer.java?rev=4799&r1=4798&r2=4799&view=diff
==============================================================================
--- trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSessionSerializer.java (original)
+++ trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSessionSerializer.java Wed Sep 25 16:13:29 2013
@@ -71,9 +71,6 @@
     /** Class logger. */
     @Nonnull private final Logger log = LoggerFactory.getLogger(StorageBackedIdPSessionSerializer.class);
     
-    /** Flag controlling storage of "optional" data not suited to client-side storage. */
-    private boolean compactForm; 
-
     /** Back-reference to parent instance. */
     @Nonnull private final StorageBackedSessionManager sessionManager;
     
@@ -91,15 +88,6 @@
         sessionManager = Constraint.isNotNull(manager, "SessionManager cannot be null");
         targetObject = target;
     }
-
-    /**
-     * Set flag controlling storage of optional data.
-     * 
-     * @param flag  flag to set
-     */
-    public void setCompactForm(boolean flag) {
-        compactForm = flag;
-    }
     
     /** {@inheritDoc} */
     @Nonnull @NotEmpty public String serialize(@Nonnull final StorageBackedIdPSession instance) throws IOException {
@@ -128,7 +116,7 @@
                 gen.writeEnd();
             }
             
-            if (!compactForm) {
+            if (sessionManager.isTrackServiceSessions()) {
                 Set<ServiceSession> services = instance.getServiceSessions();
                 if (!services.isEmpty()) {
                     gen.writeStartArray(SERVICE_ID_ARRAY_FIELD);

Modified: trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java?rev=4799&r1=4798&r2=4799&view=diff
==============================================================================
--- trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java (original)
+++ trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java Wed Sep 25 16:13:29 2013
@@ -18,19 +18,26 @@
 package net.shibboleth.idp.session.impl;
 
 import java.io.IOException;
+import java.util.Iterator;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
 import org.opensaml.storage.ClientStorageService;
+import org.opensaml.storage.StorageRecord;
 import org.opensaml.storage.StorageService;
+import org.opensaml.storage.VersionMismatchException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.ImmutableList;
 
 import net.shibboleth.idp.session.IdPSession;
 import net.shibboleth.idp.session.SessionException;
 import net.shibboleth.idp.session.SessionManager;
 import net.shibboleth.idp.session.SessionResolver;
+import net.shibboleth.idp.session.criterion.ServiceSessionCriterion;
+import net.shibboleth.idp.session.criterion.SessionIdCriterion;
 import net.shibboleth.utilities.java.support.annotation.Duration;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonNegative;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
@@ -81,6 +88,9 @@
 public class StorageBackedSessionManager extends AbstractDestructableIdentifiableInitializableComponent implements
         SessionManager, SessionResolver {
 
+    /** Storage key of master session records. */
+    @Nonnull private static final String SESSION_MASTER_KEY = "_session";
+    
     /** Class logger. */
     @Nonnull private final Logger log = LoggerFactory.getLogger(StorageBackedSessionManager.class);
     
@@ -92,6 +102,12 @@
     
     /** Indicates that storage service failures should be masked as much as possible. */
     private boolean maskStorageFailure;
+
+    /** Indicates whether to store and track ServiceSessions. */
+    private boolean trackServiceSessions;
+
+    /** Indicates whether to secondary-index ServiceSessions. */
+    private boolean secondaryServiceIndex;
     
     /** The back-end for managing data. */

[... 257 lines stripped ...]


More information about the commits mailing list