[java-plugin-shibd-saml] branch main updated: JSHIBD-26 - Review incrementing of profile metric in various flows

Codeberg noreply at shibboleth.net
Wed Oct 14 18:02:49 UTC 2026


This is an automated email from the git hooks/post-receive script.

codeberg pushed a commit to branch main
in repository java-plugin-shibd-saml.

View the commit online:
https://codeberg.org/Shibboleth/java-plugin-shibd-saml/commit/c73cf584c94d090247bff2ac0460ad1434758fe2

The following commit(s) were added to refs/heads/main by this push:
     new c73cf58  JSHIBD-26 - Review incrementing of profile metric in various flows
c73cf58 is described below

commit c73cf584c94d090247bff2ac0460ad1434758fe2
Author: Scott Cantor <scott at restingparrotsoftware.com>
AuthorDate: Wed Oct 14 14:02:28 2026 -0400

    JSHIBD-26 - Review incrementing of profile metric in various flows
    
    https://shibboleth.atlassian.net/browse/JSHIBD-26
    
    Add counters and other missing bits to SAML flows.
    Adjust initiator flows to run in two stages to defer counter increment.
    Move support class out of API.
---
 .../idp/flows/sp/initiator/ecp/ecp-beans.xml        |  3 +++
 .../idp/flows/sp/initiator/ecp/ecp-flow.xml         |  2 ++
 .../idp/flows/sp/initiator/saml2/saml2-beans.xml    |  3 +++
 .../idp/flows/sp/initiator/saml2/saml2-flow.xml     | 21 +++++++++++++++++----
 .../flows/sp/logout/initiator/saml2/saml2-beans.xml |  3 +++
 .../flows/sp/logout/initiator/saml2/saml2-flow.xml  | 21 +++++++++++++++++----
 .../flows/saml2/SAML2LogoutConsumerFlowTest.java    |  2 +-
 .../flows/saml2/SAML2LogoutInitiatorFlowTest.java   |  5 +++--
 .../flows/saml2/SAML2SessionInitiatorFlowTest.java  |  6 ++++--
 .../flows/saml2/SAML2TokenConsumerFlowTest.java     |  2 +-
 .../config/impl/ECPProfileConfiguration.java        |  4 ++++
 .../saml2/profile/impl/PrepareAgentResponse.java    |  1 -
 .../profile/impl/ProcessLogoutInitiatorRequest.java |  1 -
 .../saml2/profile/impl/ProcessLogoutRequest.java    |  1 -
 .../saml2/profile/impl}/SessionDataSupport.java     |  2 +-
 .../profile/impl/PrepareAgentResponseTest.java      |  1 -
 .../impl/ProcessLogoutInitiatorRequestTest.java     |  1 -
 .../profile/impl/ProcessLogoutRequestTest.java      |  1 -
 18 files changed, 59 insertions(+), 21 deletions(-)

diff --git a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-beans.xml b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-beans.xml
index 904bd66..32e4507 100644
--- a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-beans.xml
+++ b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-beans.xml
@@ -12,6 +12,9 @@
         
     <bean id="shibboleth.sp.loggingId" class="java.lang.String" c:_0="%{sp.saml.service.logging.session-initiator.ecp:SessionInitiator.ECP}" />
 
+    <util:constant id="shibboleth.metrics.ProfileCounter"
+        static-field="net.shibboleth.sp.saml.saml2.profile.config.impl.ECPProfileConfiguration.PROFILE_COUNTER" />
+
     <import resource="classpath:/META-INF/net/shibboleth/idp/flows/sp/saml2-common-beans.xml" />
 
     <bean id="ValidateSessionInitiatorRequest"
diff --git a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-flow.xml b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-flow.xml
index d26c00c..ba10284 100644
--- a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-flow.xml
+++ b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/ecp/ecp-flow.xml
@@ -6,6 +6,8 @@
     <action-state id="InitializeECPRequest">
         <on-entry>
             <evaluate expression="opensamlProfileRequestContext.setProfileId(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.sp.profileId'))" />
+            <evaluate expression="opensamlProfileRequestContext.setLoggingId(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.sp.loggingId'))" />
+            <evaluate expression="T(org.opensaml.core.metrics.MetricsSupport).getMetricRegistry()?.counter(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.metrics.ProfileCounter')).inc()" />
         </on-entry>
         
         <evaluate expression="ValidateSessionInitiatorRequest" />
diff --git a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-beans.xml b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-beans.xml
index a7b2f83..36c9311 100644
--- a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-beans.xml
+++ b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-beans.xml
@@ -12,6 +12,9 @@
         
     <bean id="shibboleth.sp.loggingId" class="java.lang.String" c:_0="%{sp.saml.service.logging.session-initiator:SessionInitiator.SAML2}" />
 
+    <util:constant id="shibboleth.metrics.ProfileCounter"
+        static-field="net.shibboleth.sp.saml.saml2.profile.config.impl.BrowserSSOProfileConfiguration.PROFILE_COUNTER" />
+
     <import resource="classpath:/META-INF/net/shibboleth/idp/flows/sp/saml2-common-beans.xml" />
 
     <bean id="ValidateSessionInitiatorRequest"
diff --git a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-flow.xml b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-flow.xml
index f30a7f0..727754b 100644
--- a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-flow.xml
+++ b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/initiator/saml2/saml2-flow.xml
@@ -3,9 +3,12 @@
     xsi:schemaLocation="http://www.springframework.org/schema/webflow http://www.springframework.org/schema/webflow/spring-webflow.xsd"
     parent="sp/initiator">
 
-    <action-state id="SAML2SessionInitiator">
+    <!-- Stage 1 is "conditional" as it may detect an inability to run, stage 2 is committed. -->
+
+    <action-state id="SAML2SessionInitiatorStage1">
         <on-entry>
             <evaluate expression="opensamlProfileRequestContext.setProfileId(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.sp.profileId'))" />
+            <evaluate expression="opensamlProfileRequestContext.setLoggingId(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.sp.loggingId'))" />
         </on-entry>
         
         <evaluate expression="ValidateSessionInitiatorRequest" />
@@ -15,9 +18,21 @@
         
         <evaluate expression="InitializeRelyingPartyContextFromSAMLPeer" />
         <evaluate expression="SelectRelyingPartyConfiguration" />
-        <evaluate expression="PostLookupPopulateAuditContext" />
         <evaluate expression="SelectProfileConfiguration" />
         
+        <evaluate expression="'proceed'" />
+
+        <transition on="proceed" to="SAML2SessionInitiatorStage2" />
+        <!-- Remap any other events into a fall-through to the next flow. -->
+        <transition to="ReselectFlow" />
+    </action-state>
+        
+    <action-state id="SAML2SessionInitiatorStage2">
+        <on-entry>
+            <evaluate expression="T(org.opensaml.core.metrics.MetricsSupport).getMetricRegistry()?.counter(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.metrics.ProfileCounter')).inc()" />
+        </on-entry>
+        
+        <evaluate expression="PostLookupPopulateAuditContext" />
         <evaluate expression="InitializeOutboundMessageContext" />
         <evaluate expression="InitializeMessageChannelSecurityContext" />
         <evaluate expression="PopulateBindingAndEndpointContexts" />
@@ -38,8 +53,6 @@
         <evaluate expression="'proceed'" />
 
         <transition on="proceed" to="proceed" />
-        <!-- Remap any other events into a fall-through to the next flow. -->
-        <transition to="ReselectFlow" />
     </action-state>
     
     <!-- The file really exists in this directory, but it's referenced from extending flow-directories -->
diff --git a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-beans.xml b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-beans.xml
index e044984..2208f26 100644
--- a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-beans.xml
+++ b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-beans.xml
@@ -12,6 +12,9 @@
 
     <bean id="shibboleth.sp.loggingId" class="java.lang.String" c:_0="%{sp.saml.service.logging.logout-initiator:LogoutInitiator.SAML2}" />
 
+    <util:constant id="shibboleth.metrics.ProfileCounter"
+        static-field="net.shibboleth.sp.saml.saml2.profile.config.impl.SingleLogoutProfileConfiguration.PROFILE_COUNTER" />
+
     <import resource="classpath:/META-INF/net/shibboleth/idp/flows/sp/saml2-common-beans.xml" />
 
     <bean id="ProcessLogoutInitiatorRequest"
diff --git a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-flow.xml b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-flow.xml
index 4f6fc04..e2e2b4c 100644
--- a/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-flow.xml
+++ b/sp-saml-conf-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/sp/logout/initiator/saml2/saml2-flow.xml
@@ -3,9 +3,12 @@
     xsi:schemaLocation="http://www.springframework.org/schema/webflow http://www.springframework.org/schema/webflow/spring-webflow.xsd"
     parent="sp/logout/initiator">
 
-    <action-state id="SAML2LogoutInitiator">
+    <!-- Stage 1 is "conditional" as it may detect an inability to run, stage 2 is committed. -->
+
+    <action-state id="SAML2LogoutInitiatorStage1">
         <on-entry>
             <evaluate expression="opensamlProfileRequestContext.setProfileId(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.sp.profileId'))" />
+            <evaluate expression="opensamlProfileRequestContext.setLoggingId(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.sp.loggingId'))" />
         </on-entry>
 
         <evaluate expression="ProcessLogoutInitiatorRequest" />
@@ -15,9 +18,21 @@
         
         <evaluate expression="InitializeRelyingPartyContextFromSAMLPeer" />
         <evaluate expression="SelectRelyingPartyConfiguration" />
-        <evaluate expression="PostLookupPopulateAuditContext" />
         <evaluate expression="SelectProfileConfiguration" />
         
+        <evaluate expression="'proceed'" />
+
+        <transition on="proceed" to="SAML2LogoutInitiatorStage2" />
+        <!-- Remap any other events into a fall-through to the next flow. -->
+        <transition to="ReselectFlow" />
+    </action-state>
+        
+    <action-state id="SAML2LogoutInitiatorStage2">
+        <on-entry>
+            <evaluate expression="T(org.opensaml.core.metrics.MetricsSupport).getMetricRegistry()?.counter(flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.metrics.ProfileCounter')).inc()" />
+        </on-entry>
+
+        <evaluate expression="PostLookupPopulateAuditContext" />
         <evaluate expression="InitializeOutboundMessageContext" />
         <evaluate expression="InitializeMessageChannelSecurityContext" />
         <evaluate expression="PopulateBindingAndEndpointContexts" />
@@ -37,8 +52,6 @@
         <evaluate expression="'proceed'" />
 
         <transition on="proceed" to="proceed" />
-        <!-- Remap any other events into a fall-through to the next flow. -->
-        <transition to="ReselectFlow" />
     </action-state>
     
     <!-- The file really exists in this directory, but it's referenced from extending flow-directories -->
diff --git a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutConsumerFlowTest.java b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutConsumerFlowTest.java
index c920d7e..7cb3c00 100644
--- a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutConsumerFlowTest.java
+++ b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutConsumerFlowTest.java
@@ -97,10 +97,10 @@ import net.shibboleth.sp.messaging.RemotedHttpServletRequest;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.saml.saml2.SAMLStateData;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.profile.impl.PrepareAgentResponse;
 import net.shibboleth.sp.saml.saml2.profile.impl.ProcessLogoutRequest;
 import net.shibboleth.sp.saml.saml2.profile.impl.ProcessLogoutResponse;
+import net.shibboleth.sp.saml.saml2.profile.impl.SessionDataSupport;
 import net.shibboleth.sp.state.StateData;
 import net.shibboleth.sp.state.impl.CookieStateManager;
 import net.shibboleth.sp.state.impl.PassthroughStateManager;
diff --git a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutInitiatorFlowTest.java b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutInitiatorFlowTest.java
index 7d4f429..89e355b 100644
--- a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutInitiatorFlowTest.java
+++ b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2LogoutInitiatorFlowTest.java
@@ -27,6 +27,7 @@ import org.opensaml.messaging.decoder.MessageDecodingException;
 import org.opensaml.profile.context.ProfileRequestContext;
 import org.opensaml.saml.common.SAMLObject;
 import org.opensaml.saml.common.binding.SAMLBindingSupport;
+import org.opensaml.saml.common.profile.SAMLEventIds;
 import org.opensaml.saml.ext.saml2aslo.Asynchronous;
 import org.opensaml.saml.saml2.binding.decoding.impl.HTTPRedirectDeflateDecoder;
 import org.opensaml.saml.saml2.core.Extensions;
@@ -56,8 +57,8 @@ import net.shibboleth.sp.messaging.RemotedHttpServletRequest;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.profile.SPConstants;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.profile.impl.PrepareAgentResponse;
+import net.shibboleth.sp.saml.saml2.profile.impl.SessionDataSupport;
 
 /**
  * Unit test for the SP session-initiator flow.
@@ -177,7 +178,7 @@ public class SAML2LogoutInitiatorFlowTest extends AbstractSPFlowTest {
         final FlowExecutionResult result = flowExecutor.launchExecution(FLOW_ID, null, externalContext);
         assertFlowExecutionResult(result, FLOW_ID);
         assertFlowExecutionOutcome(result.getOutcome());
-        assertOutputMessageEvent(result, AuthnEventIds.NO_POTENTIAL_FLOW);
+        assertOutputMessageEvent(result, SAMLEventIds.ENDPOINT_RESOLUTION_FAILED);
     }
 
     /**
diff --git a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2SessionInitiatorFlowTest.java b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2SessionInitiatorFlowTest.java
index ec916e4..503040b 100644
--- a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2SessionInitiatorFlowTest.java
+++ b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2SessionInitiatorFlowTest.java
@@ -24,9 +24,11 @@ import javax.annotation.Nullable;
 
 import org.opensaml.messaging.context.MessageContext;
 import org.opensaml.messaging.decoder.MessageDecodingException;
+import org.opensaml.profile.action.EventIds;
 import org.opensaml.profile.context.ProfileRequestContext;
 import org.opensaml.saml.common.SAMLObject;
 import org.opensaml.saml.common.binding.SAMLBindingSupport;
+import org.opensaml.saml.common.profile.SAMLEventIds;
 import org.opensaml.saml.common.xml.SAMLConstants;
 import org.opensaml.saml.saml2.binding.decoding.impl.HTTPRedirectDeflateDecoder;
 import org.opensaml.saml.saml2.core.AuthnContext;
@@ -159,7 +161,7 @@ public class SAML2SessionInitiatorFlowTest extends AbstractSPFlowTest {
         final FlowExecutionResult result = flowExecutor.launchExecution(FLOW_ID, null, externalContext);
         assertFlowExecutionResult(result, FLOW_ID);
         assertFlowExecutionOutcome(result.getOutcome());
-        assertOutputMessageEvent(result, AuthnEventIds.NO_POTENTIAL_FLOW);
+        assertOutputMessageEvent(result, SAMLEventIds.ENDPOINT_RESOLUTION_FAILED);
     }
 
     /**
@@ -281,7 +283,7 @@ public class SAML2SessionInitiatorFlowTest extends AbstractSPFlowTest {
         final FlowExecutionResult result = flowExecutor.launchExecution(FLOW_ID, null, externalContext);
         assertFlowExecutionResult(result, FLOW_ID);
         assertFlowExecutionOutcome(result.getOutcome());
-        assertOutputMessageEvent(result, AuthnEventIds.NO_POTENTIAL_FLOW);
+        assertOutputMessageEvent(result, EventIds.INVALID_MESSAGE);
     }
 
     /**
diff --git a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2TokenConsumerFlowTest.java b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2TokenConsumerFlowTest.java
index 7c8051b..d059e3d 100644
--- a/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2TokenConsumerFlowTest.java
+++ b/sp-saml-conf-impl/src/test/java/net/shibboleth/sp/saml/flows/saml2/SAML2TokenConsumerFlowTest.java
@@ -106,9 +106,9 @@ import net.shibboleth.sp.messaging.RemotedHttpServletRequest;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.saml.saml2.SAMLStateData;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.profile.SAML2InitiatorConstants;
 import net.shibboleth.sp.saml.saml2.profile.impl.PrepareAgentResponse;
+import net.shibboleth.sp.saml.saml2.profile.impl.SessionDataSupport;
 import net.shibboleth.sp.state.StateData;
 import net.shibboleth.sp.state.impl.CookieStateManager;
 
diff --git a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/config/impl/ECPProfileConfiguration.java b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/config/impl/ECPProfileConfiguration.java
index be0d2c0..f06cda0 100644
--- a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/config/impl/ECPProfileConfiguration.java
+++ b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/config/impl/ECPProfileConfiguration.java
@@ -23,6 +23,7 @@ import org.opensaml.profile.context.ProfileRequestContext;
 import org.opensaml.saml.common.xml.SAMLConstants;
 import org.opensaml.saml.saml2.core.IDPList;
 
+import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.logic.FunctionSupport;
 import net.shibboleth.shared.primitive.StringSupport;
@@ -31,6 +32,9 @@ import net.shibboleth.shared.primitive.StringSupport;
 public class ECPProfileConfiguration extends BrowserSSOProfileConfiguration
         implements net.shibboleth.sp.saml.saml2.profile.config.ECPProfileConfiguration {
 
+    /** Name of profile counter. */
+    @Nonnull @NotEmpty public static final String PROFILE_COUNTER = "net.shibboleth.sp.profiles.saml2.sso.ecp";
+    
     /** Lookup function to supply provider name. */
     @Nonnull private Function<ProfileRequestContext,String> providerNameLookupStrategy;
     
diff --git a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponse.java b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponse.java
index 7105d53..5df2ee5 100644
--- a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponse.java
+++ b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponse.java
@@ -40,7 +40,6 @@ import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.profile.AbstractTokenConsumerResponseAction;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.context.SAMLTokenContext;
 
 /**
diff --git a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequest.java b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequest.java
index 752ee31..a8ba82c 100644
--- a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequest.java
+++ b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequest.java
@@ -34,7 +34,6 @@ import net.shibboleth.shared.xml.XMLParserException;
 import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.profile.AbstractApplicationAction;
 import net.shibboleth.sp.profile.ConsumerConstants;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.context.SAMLLogoutContext;
 import net.shibboleth.idp.profile.IdPEventIds;
 import net.shibboleth.profile.context.RelyingPartyContext;
diff --git a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequest.java b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequest.java
index a91f4b5..936f8e2 100644
--- a/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequest.java
+++ b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequest.java
@@ -47,7 +47,6 @@ import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.profile.AbstractApplicationAction;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.saml.saml2.SAMLStateData;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.state.StateManager;
 import net.shibboleth.profile.context.navigate.IssuerLookupFunction;
 import net.shibboleth.profile.context.navigate.RelyingPartyIdLookupFunction;
diff --git a/sp-saml-api/src/main/java/net/shibboleth/sp/saml/saml2/SessionDataSupport.java b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/SessionDataSupport.java
similarity index 98%
rename from sp-saml-api/src/main/java/net/shibboleth/sp/saml/saml2/SessionDataSupport.java
rename to sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/SessionDataSupport.java
index 570403c..82cfbed 100644
--- a/sp-saml-api/src/main/java/net/shibboleth/sp/saml/saml2/SessionDataSupport.java
+++ b/sp-saml-impl/src/main/java/net/shibboleth/sp/saml/saml2/profile/impl/SessionDataSupport.java
@@ -12,7 +12,7 @@
  * limitations under the License.
  */
 
-package net.shibboleth.sp.saml.saml2;
+package net.shibboleth.sp.saml.saml2.profile.impl;
 
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
diff --git a/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponseTest.java b/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponseTest.java
index 707aa9b..4069a37 100644
--- a/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponseTest.java
+++ b/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/PrepareAgentResponseTest.java
@@ -48,7 +48,6 @@ import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.profile.impl.BaseApplicationActionTest;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.context.SAMLTokenContext;
 
 /**
diff --git a/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequestTest.java b/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequestTest.java
index 1cd8743..b94bf0b 100644
--- a/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequestTest.java
+++ b/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutInitiatorRequestTest.java
@@ -31,7 +31,6 @@ import net.shibboleth.shared.xml.impl.BasicParserPool;
 import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.profile.impl.BaseApplicationActionTest;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.saml.saml2.context.SAMLLogoutContext;
 
 /**
diff --git a/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequestTest.java b/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequestTest.java
index 13506d9..8a5c677 100644
--- a/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequestTest.java
+++ b/sp-saml-impl/src/test/java/net/shibboleth/sp/saml/saml2/profile/impl/ProcessLogoutRequestTest.java
@@ -56,7 +56,6 @@ import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.profile.ConsumerConstants;
 import net.shibboleth.sp.profile.impl.BaseApplicationActionTest;
 import net.shibboleth.sp.saml.saml2.SAMLStateData;
-import net.shibboleth.sp.saml.saml2.SessionDataSupport;
 import net.shibboleth.sp.state.impl.PassthroughStateManager;
 import net.shibboleth.sp.testing.TestResourceConverter;
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list