[java-opensaml] branch main updated: IDP-2069 Null Handling
Rod Widdowson
rdw at steadingsoftware.com
Sat Mar 11 15:51:00 UTC 2023
This is an automated email from the git hooks/post-receive script.
rdw pushed a commit to branch main
in repository java-opensaml.
View the commit online:
http://git.shibboleth.net/view/?p=java-opensaml.git;a=commit;h=5e896fe2bd7b5246cfab00f96a058db5300e7894
The following commit(s) were added to refs/heads/main by this push:
new 5e896fe2b IDP-2069 Null Handling
5e896fe2b is described below
commit 5e896fe2bd7b5246cfab00f96a058db5300e7894
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Sat Mar 11 15:32:25 2023 +0000
IDP-2069 Null Handling
https://shibboleth.atlassian.net/browse/IDP-2069
Eschew the two parameter getSubContext() method
Some tests still tbd
---
.../handler/impl/StaticMessageChannelSecurity.java | 2 +-
.../impl/URLEvaluatingMessageChannelSecurity.java | 2 +-
.../HttpServletRequestMessageChannelSecurity.java | 2 +-
.../action/impl/StaticMessageChannelSecurity.java | 2 +-
.../saml/common/binding/SAMLBindingSupport.java | 4 +-
.../soap/SAMLSOAPClientContextBuilder.java | 14 ++---
.../binding/impl/SAMLProtocolAndRoleHandler.java | 12 ++--
...ecordServerTLSEntityAuthenticationtHandler.java | 2 +-
.../impl/MessageLifetimeSecurityHandler.java | 2 +-
.../impl/MessageReplaySecurityHandler.java | 4 +-
.../impl/SAMLMDClientCertAuthSecurityHandler.java | 4 +-
.../profile/impl/AddInResponseToToResponse.java | 2 +-
.../binding/decoding/impl/HTTPArtifactDecoder.java | 2 +-
.../binding/decoding/impl/HTTPPostDecoder.java | 2 +-
.../binding/decoding/impl/HTTPSOAP11Decoder.java | 2 +-
.../impl/HttpClientResponseSOAP11Decoder.java | 2 +-
.../binding/encoding/impl/HTTPArtifactEncoder.java | 4 +-
.../impl/SAML1ArtifactRequestIssuerHandler.java | 2 +-
.../impl/AddSubjectConfirmationToSubjects.java | 2 +-
.../binding/decoding/impl/HTTPArtifactDecoder.java | 2 +-
.../binding/decoding/impl/HTTPPostDecoder.java | 2 +-
.../decoding/impl/HTTPPostSimpleSignDecoder.java | 2 +-
.../decoding/impl/HTTPRedirectDeflateDecoder.java | 2 +-
.../binding/decoding/impl/HTTPSOAP11Decoder.java | 2 +-
.../impl/HttpClientResponseSOAP11Decoder.java | 2 +-
.../binding/encoding/impl/HTTPArtifactEncoder.java | 4 +-
.../ExtractChannelBindingsExtensionsHandler.java | 2 +-
.../impl/ExtractChannelBindingsHeadersHandler.java | 4 +-
.../SAML2AuthnRequestsSignedSecurityHandler.java | 4 +-
...ecuritySAML20AssertionTokenSecurityHandler.java | 2 +-
.../impl/AddChannelBindingsHeaderHandlerTest.java | 2 +-
...ulateSignatureSigningParametersHandlerTest.java | 2 +-
...SAMLAddAttributeConsumingServiceHandleTest.java | 4 +-
.../impl/SAMLMetadataLookupHandlerTest.java | 66 +++++++++++-----------
.../http/AbstractPipelineHttpSOAPClient.java | 4 +-
.../opensaml/soap/client/http/HttpSOAPClient.java | 4 +-
.../soap/messaging/SOAPMessagingSupport.java | 2 +-
.../http/impl/HttpClientResponseSOAP11Decoder.java | 4 +-
.../http/impl/HttpClientRequestSOAP11Encoder.java | 6 +-
.../decoder/http/impl/HTTPSOAP11Decoder.java | 7 ++-
.../encoder/http/impl/HTTPSOAP11Encoder.java | 8 +--
.../SOAP11FaultContextDecoratingErrorHandler.java | 2 +-
.../messaging/impl/AddMessageIDHandler.java | 2 +-
.../messaging/impl/AddRelatesToHandler.java | 2 +-
.../messaging/impl/ExtractMessageIDHandler.java | 2 +-
.../messaging/impl/ValidateActionHandler.java | 2 +-
.../messaging/impl/AddTimestampHandler.java | 4 +-
.../encoder/http/impl/HTTPSOAP11EncoderTest.java | 4 +-
48 files changed, 112 insertions(+), 111 deletions(-)
diff --git a/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/StaticMessageChannelSecurity.java b/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/StaticMessageChannelSecurity.java
index bf70a0c7b..234194ef9 100644
--- a/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/StaticMessageChannelSecurity.java
+++ b/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/StaticMessageChannelSecurity.java
@@ -73,7 +73,7 @@ public class StaticMessageChannelSecurity extends AbstractMessageChannelSecurity
@Override
protected void doInvoke(@Nonnull final MessageContext messageContext) {
final MessageChannelSecurityContext channelContext =
- getParentContext().getSubcontext(MessageChannelSecurityContext.class, true);
+ getParentContext().getOrCreateSubcontext(MessageChannelSecurityContext.class);
channelContext.setConfidentialityActive(isConfidentialityActive());
channelContext.setIntegrityActive(isIntegrityActive());
}
diff --git a/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/URLEvaluatingMessageChannelSecurity.java b/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/URLEvaluatingMessageChannelSecurity.java
index 20751fd89..5bd04de6d 100644
--- a/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/URLEvaluatingMessageChannelSecurity.java
+++ b/opensaml-messaging-impl/src/main/java/org/opensaml/messaging/handler/impl/URLEvaluatingMessageChannelSecurity.java
@@ -120,7 +120,7 @@ public class URLEvaluatingMessageChannelSecurity extends AbstractMessageChannelS
@Override
protected void doInvoke(@Nonnull final MessageContext messageContext) {
final MessageChannelSecurityContext channelContext =
- getParentContext().getSubcontext(MessageChannelSecurityContext.class, true);
+ getParentContext().getOrCreateSubcontext(MessageChannelSecurityContext.class);
final String scheme = urlBuilder.getScheme();
// Note that below we don't care about port if scheme != https,
diff --git a/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/HttpServletRequestMessageChannelSecurity.java b/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/HttpServletRequestMessageChannelSecurity.java
index ee6819e19..75c5848f7 100644
--- a/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/HttpServletRequestMessageChannelSecurity.java
+++ b/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/HttpServletRequestMessageChannelSecurity.java
@@ -68,7 +68,7 @@ public class HttpServletRequestMessageChannelSecurity extends AbstractMessageCha
@Override
protected void doExecute(final ProfileRequestContext profileRequestContext) {
final MessageChannelSecurityContext channelContext =
- getParentContext().getSubcontext(MessageChannelSecurityContext.class, true);
+ getParentContext().getOrCreateSubcontext(MessageChannelSecurityContext.class);
final HttpServletRequest request = getHttpServletRequest();
if (request.isSecure() && (!defaultPortInsecure || request.getLocalPort() != 443)) {
diff --git a/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/StaticMessageChannelSecurity.java b/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/StaticMessageChannelSecurity.java
index adc4aee2f..68b9934a6 100644
--- a/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/StaticMessageChannelSecurity.java
+++ b/opensaml-profile-impl/src/main/java/org/opensaml/profile/action/impl/StaticMessageChannelSecurity.java
@@ -73,7 +73,7 @@ public class StaticMessageChannelSecurity extends AbstractMessageChannelSecurity
@Override
protected void doExecute(@Nonnull final ProfileRequestContext profileRequestContext) {
final MessageChannelSecurityContext channelContext =
- getParentContext().getSubcontext(MessageChannelSecurityContext.class, true);
+ getParentContext().getOrCreateSubcontext(MessageChannelSecurityContext.class);
channelContext.setConfidentialityActive(isConfidentialityActive());
channelContext.setIntegrityActive(isIntegrityActive());
}
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/binding/SAMLBindingSupport.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/binding/SAMLBindingSupport.java
index 2f9af89ad..2a372b092 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/binding/SAMLBindingSupport.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/binding/SAMLBindingSupport.java
@@ -78,7 +78,7 @@ public final class SAMLBindingSupport {
*/
public static void setRelayState(@Nonnull final MessageContext messageContext,
@Nullable final String relayState) {
- messageContext.getSubcontext(SAMLBindingContext.class, true).setRelayState(relayState);
+ messageContext.getOrCreateSubcontext(SAMLBindingContext.class).setRelayState(relayState);
}
/**
@@ -266,7 +266,7 @@ public final class SAMLBindingSupport {
*/
public static boolean isIntendedDestinationEndpointURIRequired(
@Nonnull final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, false);
+ final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class);
if (bindingContext == null) {
return false;
}
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/messaging/soap/SAMLSOAPClientContextBuilder.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/messaging/soap/SAMLSOAPClientContextBuilder.java
index 45c89cf08..e0443ee91 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/common/messaging/soap/SAMLSOAPClientContextBuilder.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/common/messaging/soap/SAMLSOAPClientContextBuilder.java
@@ -342,7 +342,7 @@ public class SAMLSOAPClientContextBuilder<InboundMessageType extends SAMLObject,
final Function<MessageContext,CriteriaSet> tlsStrategy = getTLSCriteriaSetStrategy();
if (tlsStrategy != null) {
- outboundContext.getSubcontext(HttpClientSecurityContext.class, true)
+ outboundContext.getOrCreateSubcontext(HttpClientSecurityContext.class)
.setTLSCriteriaSetStrategy(tlsStrategy);
}
@@ -352,22 +352,22 @@ public class SAMLSOAPClientContextBuilder<InboundMessageType extends SAMLObject,
final BaseContext parent = opContext;
if (getProtocol() != null) {
- parent.getSubcontext(SAMLProtocolContext.class, true).setProtocol(getProtocol());
+ parent.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(getProtocol());
}
if (getPipelineName() != null) {
- parent.getSubcontext(SOAPClientContext.class, true).setPipelineName(getPipelineName());
+ parent.getOrCreateSubcontext(SOAPClientContext.class).setPipelineName(getPipelineName());
}
if (getSecurityConfigurationProfileId() != null) {
- parent.getSubcontext(SOAPClientSecurityContext.class, true).setSecurityConfigurationProfileId(
+ parent.getOrCreateSubcontext(SOAPClientSecurityContext.class).setSecurityConfigurationProfileId(
getSecurityConfigurationProfileId());
}
//TODO is this required always?
final String selfID = getSelfEntityID();
if (selfID != null) {
- final SAMLSelfEntityContext selfContext = parent.getSubcontext(SAMLSelfEntityContext.class, true);
+ final SAMLSelfEntityContext selfContext = parent.getOrCreateSubcontext(SAMLSelfEntityContext.class);
selfContext.setEntityId(selfID);
}
@@ -380,12 +380,12 @@ public class SAMLSOAPClientContextBuilder<InboundMessageType extends SAMLObject,
if (peerRoleName == null) {
errorMissingData("Peer role");
}
- final SAMLPeerEntityContext peerContext = parent.getSubcontext(SAMLPeerEntityContext.class, true);
+ final SAMLPeerEntityContext peerContext = parent.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setEntityId(peerID);
peerContext.setRole(peerRoleName);
// Both optional, could be resolved in SOAP handling pipeline by handler(s)
- final SAMLMetadataContext metadataContext = peerContext.getSubcontext(SAMLMetadataContext.class, true);
+ final SAMLMetadataContext metadataContext = peerContext.getOrCreateSubcontext(SAMLMetadataContext.class);
metadataContext.setEntityDescriptor(getPeerEntityDescriptor());
metadataContext.setRoleDescriptor(getPeerRoleDescriptor());
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/impl/SAMLProtocolAndRoleHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/impl/SAMLProtocolAndRoleHandler.java
index 618bb0725..5e415ee32 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/impl/SAMLProtocolAndRoleHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/impl/SAMLProtocolAndRoleHandler.java
@@ -123,27 +123,27 @@ public class SAMLProtocolAndRoleHandler extends AbstractMessageHandler {
}
if (samlProtocol != null) {
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(samlProtocol);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(samlProtocol);
} else if (copySource != null) {
final SAMLProtocolContext sourceProtocolContext = copySource.getSubcontext(SAMLProtocolContext.class);
if (sourceProtocolContext != null) {
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(
sourceProtocolContext.getProtocol());
}
}
- if (messageContext.getSubcontext(SAMLProtocolContext.class, true).getProtocol() == null) {
+ if (messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).getProtocol() == null) {
throw new MessageHandlerException("SAML protocol was not supplied and could not be dynamically resolved");
}
if (peerRole != null) {
- messageContext.getSubcontext(entityContextClass, true).setRole(peerRole);
+ messageContext.getOrCreateSubcontext(entityContextClass).setRole(peerRole);
} else if (copySource != null) {
final AbstractSAMLEntityContext sourceEntityContext = copySource.getSubcontext(entityContextClass);
if (sourceEntityContext != null) {
- messageContext.getSubcontext(entityContextClass, true).setRole(sourceEntityContext.getRole());
+ messageContext.getOrCreateSubcontext(entityContextClass).setRole(sourceEntityContext.getRole());
}
}
- if (messageContext.getSubcontext(entityContextClass, true).getRole() == null) {
+ if (messageContext.getOrCreateSubcontext(entityContextClass).getRole() == null) {
throw new MessageHandlerException("SAML role was not supplied and could not be dynamically resolved");
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/CheckAndRecordServerTLSEntityAuthenticationtHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/CheckAndRecordServerTLSEntityAuthenticationtHandler.java
index 5600e50ce..a94d5eaca 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/CheckAndRecordServerTLSEntityAuthenticationtHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/CheckAndRecordServerTLSEntityAuthenticationtHandler.java
@@ -123,7 +123,7 @@ public class CheckAndRecordServerTLSEntityAuthenticationtHandler extends Abstrac
log.debug("HttpClientContext indicates successful server TLS, storing result in entity context {}",
entityContextClass.getName());
final AbstractAuthenticatableSAMLEntityContext entityContext =
- messageContext.getSubcontext(entityContextClass, true);
+ messageContext.getOrCreateSubcontext(entityContextClass);
entityContext.setAuthenticated(true);
if (entityContext.getEntityId() == null && entityIDLookup != null) {
log.debug("Context entityID was null, attempting to resolve");
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageLifetimeSecurityHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageLifetimeSecurityHandler.java
index f7da8cef4..a3b7f088a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageLifetimeSecurityHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageLifetimeSecurityHandler.java
@@ -122,7 +122,7 @@ public class MessageLifetimeSecurityHandler extends AbstractMessageHandler {
/** {@inheritDoc} */
@Override
public void doInvoke(@Nonnull final MessageContext messageContext) throws MessageHandlerException {
- final SAMLMessageInfoContext msgInfoContext = messageContext.getSubcontext(SAMLMessageInfoContext.class, true);
+ final SAMLMessageInfoContext msgInfoContext = messageContext.getOrCreateSubcontext(SAMLMessageInfoContext.class);
if (msgInfoContext.getMessageIssueInstant() == null) {
if (requiredRule) {
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageReplaySecurityHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageReplaySecurityHandler.java
index c1b0e1132..4580cc022 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageReplaySecurityHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/MessageReplaySecurityHandler.java
@@ -124,14 +124,14 @@ public class MessageReplaySecurityHandler extends AbstractMessageHandler {
/** {@inheritDoc} */
@Override
protected void doInvoke(@Nonnull final MessageContext messageContext) throws MessageHandlerException {
- final SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ final SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
String entityID = StringSupport.trimOrNull(peerContext.getEntityId());
if (entityID == null) {
entityID = "(unknown)";
}
- final SAMLMessageInfoContext msgInfoContext = messageContext.getSubcontext(SAMLMessageInfoContext.class, true);
+ final SAMLMessageInfoContext msgInfoContext = messageContext.getOrCreateSubcontext(SAMLMessageInfoContext.class);
final String messageId = StringSupport.trimOrNull(msgInfoContext.getMessageId());
if (messageId == null) {
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/SAMLMDClientCertAuthSecurityHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/SAMLMDClientCertAuthSecurityHandler.java
index f25f678e3..507fc2862 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/SAMLMDClientCertAuthSecurityHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/security/impl/SAMLMDClientCertAuthSecurityHandler.java
@@ -130,14 +130,14 @@ public class SAMLMDClientCertAuthSecurityHandler extends BaseClientCertAuthSecur
protected void setAuthenticatedCertificatePresenterEntityID(@Nonnull final MessageContext messageContext,
@Nullable final String entityID) {
log.trace("Storing authenticatable entityID '{}' in context: {}", entityID, entityContextClass);
- messageContext.getSubcontext(entityContextClass, true).setEntityId(entityID);
+ messageContext.getOrCreateSubcontext(entityContextClass).setEntityId(entityID);
}
/** {@inheritDoc} */
@Override
protected void setAuthenticatedState(@Nonnull final MessageContext messageContext, final boolean authenticated) {
log.trace("Storing authenticated entity state '{}' in context: {}", authenticated, entityContextClass);
- messageContext.getSubcontext(entityContextClass, true).setAuthenticated(authenticated);
+ messageContext.getOrCreateSubcontext(entityContextClass).setAuthenticated(authenticated);
}
}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/profile/impl/AddInResponseToToResponse.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/profile/impl/AddInResponseToToResponse.java
index 62432a44c..b237fb0e5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/profile/impl/AddInResponseToToResponse.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/profile/impl/AddInResponseToToResponse.java
@@ -185,7 +185,7 @@ public class AddInResponseToToResponse extends AbstractConditionalProfileAction
}
}
- final SAMLMessageInfoContext infoCtx = inMsgCtx.getSubcontext(SAMLMessageInfoContext.class, true);
+ final SAMLMessageInfoContext infoCtx = inMsgCtx.getOrCreateSubcontext(SAMLMessageInfoContext.class);
if (infoCtx == null) {
log.debug("No inbound SAMLMessageInfoContext available");
return null;
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPArtifactDecoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPArtifactDecoder.java
index 7a0651599..8b561cfc6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPArtifactDecoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPArtifactDecoder.java
@@ -131,7 +131,7 @@ public class HTTPArtifactDecoder extends BaseHttpServletRequestXMLMessageDecoder
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPPostDecoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPPostDecoder.java
index cc9a4f07b..5b1a16709 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPPostDecoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPPostDecoder.java
@@ -109,7 +109,7 @@ public class HTTPPostDecoder extends BaseHttpServletRequestXMLMessageDecoder imp
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPSOAP11Decoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPSOAP11Decoder.java
index effc1bd1a..370e9869c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPSOAP11Decoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HTTPSOAP11Decoder.java
@@ -96,7 +96,7 @@ public class HTTPSOAP11Decoder extends org.opensaml.soap.soap11.decoder.http.imp
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java
index b4d9fd67e..bd5231b0e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java
@@ -97,7 +97,7 @@ public class HttpClientResponseSOAP11Decoder
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/encoding/impl/HTTPArtifactEncoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/encoding/impl/HTTPArtifactEncoder.java
index 8067e4e6c..a7dd785b6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/encoding/impl/HTTPArtifactEncoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/encoding/impl/HTTPArtifactEncoder.java
@@ -239,7 +239,7 @@ public class HTTPArtifactEncoder extends BaseSAML1MessageEncoder {
*/
private void storeSAMLArtifactType(@Nonnull final MessageContext messageContext,
@Nonnull @NotEmpty final byte[] artifactType) {
- messageContext.getSubcontext(SAMLArtifactContext.class, true).setArtifactType(artifactType);
+ messageContext.getOrCreateSubcontext(SAMLArtifactContext.class).setArtifactType(artifactType);
}
/**
@@ -250,7 +250,7 @@ public class HTTPArtifactEncoder extends BaseSAML1MessageEncoder {
* @return the artifact type
*/
@Nullable private byte[] getSAMLArtifactType(@Nonnull final MessageContext messageContext) {
- return messageContext.getSubcontext(SAMLArtifactContext.class, true).getArtifactType();
+ return messageContext.getOrCreateSubcontext(SAMLArtifactContext.class).getArtifactType();
}
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/impl/SAML1ArtifactRequestIssuerHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/impl/SAML1ArtifactRequestIssuerHandler.java
index c83385dee..b697e9578 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/impl/SAML1ArtifactRequestIssuerHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/impl/SAML1ArtifactRequestIssuerHandler.java
@@ -96,7 +96,7 @@ public class SAML1ArtifactRequestIssuerHandler extends AbstractMessageHandler {
log.debug("{} Derived issuer of aritfact resolution request as {}", getLogPrefix(),
entry.getRelyingPartyId());
- messageContext.getSubcontext(SAMLPeerEntityContext.class, true).setEntityId(entry.getRelyingPartyId());
+ messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class).setEntityId(entry.getRelyingPartyId());
} catch (final IOException e) {
log.error("{} Error resolving first artifact in request: {}", getLogPrefix(), artifact, e);
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/profile/impl/AddSubjectConfirmationToSubjects.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/profile/impl/AddSubjectConfirmationToSubjects.java
index e5eefbb96..866232b3d 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/profile/impl/AddSubjectConfirmationToSubjects.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/profile/impl/AddSubjectConfirmationToSubjects.java
@@ -166,7 +166,7 @@ public class AddSubjectConfirmationToSubjects extends AbstractProfileAction {
}
final SAMLBindingContext bindingCtx = profileRequestContext.getOutboundMessageContext().getSubcontext(
- SAMLBindingContext.class, false);
+ SAMLBindingContext.class);
artifactProfile = bindingCtx != null
&& Objects.equals(bindingCtx.getBindingUri(), SAMLConstants.SAML1_ARTIFACT_BINDING_URI);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPArtifactDecoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPArtifactDecoder.java
index de1946335..0191136a5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPArtifactDecoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPArtifactDecoder.java
@@ -653,7 +653,7 @@ public class HTTPArtifactDecoder extends BaseHttpServletRequestXMLMessageDecoder
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostDecoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostDecoder.java
index 50e53ec91..6a26a165c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostDecoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostDecoder.java
@@ -144,7 +144,7 @@ public class HTTPPostDecoder extends BaseHttpServletRequestXMLMessageDecoder imp
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostSimpleSignDecoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostSimpleSignDecoder.java
index a410d48c6..d4657c0b3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostSimpleSignDecoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPPostSimpleSignDecoder.java
@@ -42,7 +42,7 @@ public class HTTPPostSimpleSignDecoder extends HTTPPostDecoder {
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(getBindingDescriptor());
bindingContext.setHasBindingSignature(
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPRedirectDeflateDecoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPRedirectDeflateDecoder.java
index ff183b503..dc7b7fd43 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPRedirectDeflateDecoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPRedirectDeflateDecoder.java
@@ -147,7 +147,7 @@ public class HTTPRedirectDeflateDecoder extends BaseHttpServletRequestXMLMessage
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPSOAP11Decoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPSOAP11Decoder.java
index 76bb2d403..b62e200df 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPSOAP11Decoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HTTPSOAP11Decoder.java
@@ -96,7 +96,7 @@ public class HTTPSOAP11Decoder extends org.opensaml.soap.soap11.decoder.http.imp
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java
index cea45436a..9782020d6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/impl/HttpClientResponseSOAP11Decoder.java
@@ -97,7 +97,7 @@ public class HttpClientResponseSOAP11Decoder
* @param messageContext the current message context
*/
protected void populateBindingContext(final MessageContext messageContext) {
- final SAMLBindingContext bindingContext = messageContext.getSubcontext(SAMLBindingContext.class, true);
+ final SAMLBindingContext bindingContext = messageContext.getOrCreateSubcontext(SAMLBindingContext.class);
bindingContext.setBindingUri(getBindingURI());
bindingContext.setBindingDescriptor(bindingDescriptor);
bindingContext.setHasBindingSignature(false);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/impl/HTTPArtifactEncoder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/impl/HTTPArtifactEncoder.java
index 107771f7a..df7764156 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/impl/HTTPArtifactEncoder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/impl/HTTPArtifactEncoder.java
@@ -406,7 +406,7 @@ public class HTTPArtifactEncoder extends BaseSAML2MessageEncoder {
*/
private void storeSAMLArtifactType(@Nonnull final MessageContext messageContext,
@Nonnull @NotEmpty final byte[] artifactType) {
- messageContext.getSubcontext(SAMLArtifactContext.class, true).setArtifactType(artifactType);
+ messageContext.getOrCreateSubcontext(SAMLArtifactContext.class).setArtifactType(artifactType);
}
/**
@@ -417,7 +417,7 @@ public class HTTPArtifactEncoder extends BaseSAML2MessageEncoder {
* @return the artifact type
*/
@Nullable private byte[] getSAMLArtifactType(@Nonnull final MessageContext messageContext) {
- return messageContext.getSubcontext(SAMLArtifactContext.class, true).getArtifactType();
+ return messageContext.getOrCreateSubcontext(SAMLArtifactContext.class).getArtifactType();
}
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsExtensionsHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsExtensionsHandler.java
index 816023752..104610737 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsExtensionsHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsExtensionsHandler.java
@@ -82,7 +82,7 @@ public class ExtractChannelBindingsExtensionsHandler extends AbstractMessageHand
}
final Collection<ChannelBindings> channelBindings =
- messageContext.getSubcontext(ChannelBindingsContext.class, true).getChannelBindings();
+ messageContext.getOrCreateSubcontext(ChannelBindingsContext.class).getChannelBindings();
for (final XMLObject cb : bindings) {
if (cb instanceof ChannelBindings) {
channelBindings.add((ChannelBindings) cb);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsHeadersHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsHeadersHandler.java
index 6f9f9eea9..872a931c0 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsHeadersHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/ExtractChannelBindingsHeadersHandler.java
@@ -98,8 +98,8 @@ public class ExtractChannelBindingsHeadersHandler extends AbstractMessageHandler
log.debug("{} No ChannelBindings header blocks found", getLogPrefix());
} else {
log.debug("{} {} ChannelBindings header block(s) found", getLogPrefix(), channelBindings.size());
- messageContext.getSubcontext(SOAP11Context.class).getSubcontext(ChannelBindingsContext.class,
- true).getChannelBindings().addAll(channelBindings);
+ messageContext.getSubcontext(SOAP11Context.class).getOrCreateSubcontext(ChannelBindingsContext.class).
+ getChannelBindings().addAll(channelBindings);
}
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/SAML2AuthnRequestsSignedSecurityHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/SAML2AuthnRequestsSignedSecurityHandler.java
index 12769a035..1235100b6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/SAML2AuthnRequestsSignedSecurityHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/security/impl/SAML2AuthnRequestsSignedSecurityHandler.java
@@ -80,14 +80,14 @@ public class SAML2AuthnRequestsSignedSecurityHandler extends AbstractMessageHand
*/
protected boolean isRequestSigningRequired(@Nonnull final MessageContext messageContext) {
- final SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ final SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
if (peerContext == null || Strings.isNullOrEmpty(peerContext.getEntityId())) {
log.warn("SAML peer entityID was not available, unable to evaluate rule");
return false;
}
final String messageIssuer = peerContext.getEntityId();
- final SAMLMetadataContext metadataContext = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ final SAMLMetadataContext metadataContext = peerContext.getOrCreateSubcontext(SAMLMetadataContext.class);
if (metadataContext == null || metadataContext.getRoleDescriptor() == null) {
log.warn("SAMLPeerContext did not contain either a SAMLMetadataContext or a RoleDescriptor, "
+ "unable to evaluate rule");
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java
index 6e6eb22ce..ae4136553 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java
@@ -251,7 +251,7 @@ public class WSSecuritySAML20AssertionTokenSecurityHandler extends AbstractMessa
return;
}
- final WSSecurityContext wsContext = messageContext.getSubcontext(WSSecurityContext.class, true);
+ final WSSecurityContext wsContext = messageContext.getOrCreateSubcontext(WSSecurityContext.class);
for (final Assertion assertion : assertions) {
final SAML20AssertionValidator validator = resolveValidator(messageContext, assertion);
diff --git a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/AddChannelBindingsHeaderHandlerTest.java b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/AddChannelBindingsHeaderHandlerTest.java
index f21887839..998c939ad 100644
--- a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/AddChannelBindingsHeaderHandlerTest.java
+++ b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/AddChannelBindingsHeaderHandlerTest.java
@@ -98,7 +98,7 @@ public class AddChannelBindingsHeaderHandlerTest extends OpenSAMLInitBaseTestCas
final Envelope env = XMLObjectProviderRegistrySupport.getBuilderFactory().<Envelope>getBuilderOrThrow(
Envelope.DEFAULT_ELEMENT_NAME).buildObject(Envelope.DEFAULT_ELEMENT_NAME);
- messageCtx.getSubcontext(SOAP11Context.class, true).setEnvelope(env);
+ messageCtx.getOrCreateSubcontext(SOAP11Context.class).setEnvelope(env);
handler.invoke(messageCtx);
diff --git a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/PopulateSignatureSigningParametersHandlerTest.java b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/PopulateSignatureSigningParametersHandlerTest.java
index 8266df5a8..5ceb5b65b 100644
--- a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/PopulateSignatureSigningParametersHandlerTest.java
+++ b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/PopulateSignatureSigningParametersHandlerTest.java
@@ -96,7 +96,7 @@ public class PopulateSignatureSigningParametersHandlerTest extends OpenSAMLInitB
new ChildContextLookup<MessageContext,SecurityParametersContext>(SecurityParametersContext.class, true));
handler.initialize();
- prc.getSubcontext(SecurityParametersContext.class, true).setSignatureSigningParameters(new SignatureSigningParameters());
+ prc.getOrCreateSubcontext(SecurityParametersContext.class).setSignatureSigningParameters(new SignatureSigningParameters());
handler.invoke(prc.getOutboundMessageContext());
Assert.assertSame(prc.getSubcontext(SecurityParametersContext.class).getSignatureSigningParameters(),
diff --git a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLAddAttributeConsumingServiceHandleTest.java b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLAddAttributeConsumingServiceHandleTest.java
index be6775163..c63bef3d7 100644
--- a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLAddAttributeConsumingServiceHandleTest.java
+++ b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLAddAttributeConsumingServiceHandleTest.java
@@ -45,7 +45,7 @@ public class SAMLAddAttributeConsumingServiceHandleTest extends XMLObjectBaseTes
private SPSSODescriptor noACS;
private SAMLMetadataContext getMetadataContext(final MessageContext message) {
- return message.getSubcontext(SAMLPeerEntityContext.class, true).getSubcontext(SAMLMetadataContext.class, true);
+ return message.getOrCreateSubcontext(SAMLPeerEntityContext.class).getSubcontext(SAMLMetadataContext.class, true);
}
private SAMLAddAttributeConsumingServiceHandler handler() throws ComponentInitializationException {
@@ -157,7 +157,7 @@ public class SAMLAddAttributeConsumingServiceHandleTest extends XMLObjectBaseTes
navigatedHandler.setMetadataContextLookupStrategy(new ParentContextLookup<>(SAMLMetadataContext.class));
final SAMLMetadataContext metadataContext = new SAMLMetadataContext();
- final MessageContext messageContext = metadataContext.getSubcontext(MessageContext.class, true);
+ final MessageContext messageContext = metadataContext.getOrCreateSubcontext(MessageContext.class);
metadataContext.setRoleDescriptor(withACS);
final AuthnRequest request = SAML2ActionTestingSupport.buildAuthnRequest();
diff --git a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLMetadataLookupHandlerTest.java b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLMetadataLookupHandlerTest.java
index 91555f7b3..0e7afc788 100644
--- a/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLMetadataLookupHandlerTest.java
+++ b/opensaml-saml-impl/src/test/java/org/opensaml/saml/common/binding/impl/SAMLMetadataLookupHandlerTest.java
@@ -128,7 +128,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
peerContext.setRole(org.opensaml.saml.saml2.metadata.SPSSODescriptor.DEFAULT_ELEMENT_NAME);
handler.invoke(messageContext);
- Assert.assertNull(messageContext.getSubcontext(SAMLMetadataContext.class, false));
+ Assert.assertNull(messageContext.getSubcontext(SAMLMetadataContext.class));
}
@Test
@@ -136,7 +136,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setRoleDescriptorResolver(roleResolver);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
@@ -144,7 +144,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
messageContext.setMessage(request);
handler.invoke(messageContext);
- Assert.assertNull(peerContext.getSubcontext(SAMLMetadataContext.class, false));
+ Assert.assertNull(peerContext.getSubcontext(SAMLMetadataContext.class));
}
@Test
@@ -152,7 +152,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setRoleDescriptorResolver(roleResolver);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(SPSSODescriptor.DEFAULT_ELEMENT_NAME);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
@@ -160,7 +160,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
messageContext.setMessage(request);
handler.invoke(messageContext);
- Assert.assertNull(peerContext.getSubcontext(SAMLMetadataContext.class, false));
+ Assert.assertNull(peerContext.getSubcontext(SAMLMetadataContext.class));
}
@Test
@@ -168,16 +168,16 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setRoleDescriptorResolver(roleResolver);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol("urn:foo");
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol("urn:foo");
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
messageContext.setMessage(request);
handler.invoke(messageContext);
- Assert.assertNull(peerContext.getSubcontext(SAMLMetadataContext.class, false));
+ Assert.assertNull(peerContext.getSubcontext(SAMLMetadataContext.class));
}
@Test
@@ -185,9 +185,9 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setRoleDescriptorResolver(roleResolver);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -195,7 +195,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
Assert.assertNotNull(mdCtx.getEntityDescriptor());
@@ -207,10 +207,10 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setRoleDescriptorResolver(roleResolver);
handler.initialize();
- SAMLPresenterEntityContext presenterContext = messageContext.getSubcontext(SAMLPresenterEntityContext.class, true);
+ SAMLPresenterEntityContext presenterContext = messageContext.getOrCreateSubcontext(SAMLPresenterEntityContext.class);
presenterContext.setEntityId("https://carmenwiki.osu.edu/shibboleth");
presenterContext.setRole(SPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML20P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML20P_NS);
AuthnRequest authnRequest = SAML2ActionTestingSupport.buildAuthnRequest();
authnRequest.getIssuer().setValue("https://carmenwiki.osu.edu/shibboleth");
@@ -218,7 +218,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = presenterContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = presenterContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
Assert.assertNotNull(mdCtx.getEntityDescriptor());
@@ -230,9 +230,9 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setCopyContextStrategy(copyContextStrategy);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -240,7 +240,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotSame(mdCtx, existingMetadataContext);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
@@ -257,9 +257,9 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setCopyContextStrategy(copyContextStrategy);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -267,7 +267,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotSame(mdCtx, existingMetadataContext);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
@@ -284,9 +284,9 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setCopyContextStrategy(copyContextStrategy);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -294,7 +294,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotSame(mdCtx, existingMetadataContext);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
@@ -311,9 +311,9 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setCopyContextStrategy(copyContextStrategy);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -321,7 +321,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotSame(mdCtx, existingMetadataContext);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
@@ -338,9 +338,9 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setCopyContextStrategy(copyContextStrategy);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -348,7 +348,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotSame(mdCtx, existingMetadataContext);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
@@ -362,11 +362,11 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
handler.setRoleDescriptorResolver(roleResolver);
handler.initialize();
- SAMLPeerEntityContext peerContext = messageContext.getSubcontext(SAMLPeerEntityContext.class, true);
+ SAMLPeerEntityContext peerContext = messageContext.getOrCreateSubcontext(SAMLPeerEntityContext.class);
peerContext.setRole(IDPSSODescriptor.DEFAULT_ELEMENT_NAME);
- messageContext.getSubcontext(SAMLProtocolContext.class, true).setProtocol(SAMLConstants.SAML11P_NS);
+ messageContext.getOrCreateSubcontext(SAMLProtocolContext.class).setProtocol(SAMLConstants.SAML11P_NS);
- messageContext.getSubcontext(SAMLMetadataLookupParametersContext.class, true).setDetectDuplicateEntityIDs(DetectDuplicateEntityIDs.Batch);
+ messageContext.getOrCreateSubcontext(SAMLMetadataLookupParametersContext.class).setDetectDuplicateEntityIDs(DetectDuplicateEntityIDs.Batch);
Request request = SAML1ActionTestingSupport.buildAttributeQueryRequest(null);
((AttributeQuery) request.getQuery()).setResource("urn:mace:incommon:osu.edu");
@@ -381,7 +381,7 @@ public class SAMLMetadataLookupHandlerTest extends XMLObjectBaseTestCase {
// For good measure actually test resolution and that hasn't caused any failures due to side effects, etc.
handler.invoke(messageContext);
- SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class, false);
+ SAMLMetadataContext mdCtx = peerContext.getSubcontext(SAMLMetadataContext.class);
Assert.assertNotNull(mdCtx);
Assert.assertNotNull(mdCtx.getRoleDescriptor());
Assert.assertNotNull(mdCtx.getEntityDescriptor());
diff --git a/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java b/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java
index 19db0bb00..0fe6d5978 100644
--- a/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java
+++ b/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java
@@ -184,7 +184,7 @@ public abstract class AbstractPipelineHttpSOAPClient
HttpClientMessagePipeline pipeline = null;
try {
// Store the endpoint URI
- operationContext.getSubcontext(SOAPClientContext.class, true).setDestinationURI(endpoint);
+ operationContext.getOrCreateSubcontext(SOAPClientContext.class).setDestinationURI(endpoint);
// Pipeline resolution
pipeline = resolvePipeline(operationContext);
@@ -394,7 +394,7 @@ public abstract class AbstractPipelineHttpSOAPClient
*/
@Nonnull protected HttpClientContext resolveClientContext(@Nonnull final InOutOperationContext operationContext) {
final HttpClientRequestContext requestContext =
- operationContext.getOutboundMessageContext().getSubcontext(HttpClientRequestContext.class, true);
+ operationContext.getOutboundMessageContext().getOrCreateSubcontext(HttpClientRequestContext.class);
if (requestContext.getHttpClientContext() == null) {
requestContext.setHttpClientContext(HttpClientContext.create());
}
diff --git a/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/HttpSOAPClient.java b/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/HttpSOAPClient.java
index b0789b410..1d0cafd03 100644
--- a/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/HttpSOAPClient.java
+++ b/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/HttpSOAPClient.java
@@ -313,7 +313,7 @@ public class HttpSOAPClient extends AbstractInitializableComponent implements SO
}
final Envelope response = unmarshallResponse(httpResponse.getEntity().getContent());
context.setInboundMessageContext(new MessageContext());
- context.getInboundMessageContext().getSubcontext(SOAP11Context.class, true).setEnvelope(response);
+ context.getInboundMessageContext().getOrCreateSubcontext(SOAP11Context.class).setEnvelope(response);
//TODO: goes away?
//evaluateSecurityPolicy(messageContext);
} catch (final IOException e) {
@@ -338,7 +338,7 @@ public class HttpSOAPClient extends AbstractInitializableComponent implements SO
}
final Envelope response = unmarshallResponse(httpResponse.getEntity().getContent());
context.setInboundMessageContext(new MessageContext());
- context.getInboundMessageContext().getSubcontext(SOAP11Context.class, true).setEnvelope(response);
+ context.getInboundMessageContext().getOrCreateSubcontext(SOAP11Context.class).setEnvelope(response);
if (response.getBody() != null) {
final List<XMLObject> faults = response.getBody().getUnknownXMLObjects(Fault.DEFAULT_ELEMENT_NAME);
diff --git a/opensaml-soap-api/src/main/java/org/opensaml/soap/messaging/SOAPMessagingSupport.java b/opensaml-soap-api/src/main/java/org/opensaml/soap/messaging/SOAPMessagingSupport.java
index 9def41b32..87f55c9fa 100644
--- a/opensaml-soap-api/src/main/java/org/opensaml/soap/messaging/SOAPMessagingSupport.java
+++ b/opensaml-soap-api/src/main/java/org/opensaml/soap/messaging/SOAPMessagingSupport.java
@@ -60,7 +60,7 @@ public final class SOAPMessagingSupport {
*/
@Nonnull public static InboundSOAPContext getInboundSOAPContext(@Nonnull final MessageContext messageContext) {
Constraint.isNotNull(messageContext, "Message context cannot be null");
- return messageContext.getSubcontext(InboundSOAPContext.class, true);
+ return messageContext.getOrCreateSubcontext(InboundSOAPContext.class);
}
/**
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/decoder/http/impl/HttpClientResponseSOAP11Decoder.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/decoder/http/impl/HttpClientResponseSOAP11Decoder.java
index eb1a2bdcf..dd8ab58cf 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/decoder/http/impl/HttpClientResponseSOAP11Decoder.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/decoder/http/impl/HttpClientResponseSOAP11Decoder.java
@@ -91,7 +91,7 @@ public class HttpClientResponseSOAP11Decoder extends BaseHttpClientResponseXMLMe
switch(responseStatusCode) {
case HttpStatus.SC_OK:
- final SOAP11Context soapContext = messageContext.getSubcontext(SOAP11Context.class, true);
+ final SOAP11Context soapContext = messageContext.getOrCreateSubcontext(SOAP11Context.class);
processSuccessResponse(response, soapContext);
break;
case HttpStatus.SC_INTERNAL_SERVER_ERROR:
@@ -221,7 +221,7 @@ public class HttpClientResponseSOAP11Decoder extends BaseHttpClientResponseXMLMe
/** {@inheritDoc} */
@Override
protected XMLObject getMessageToLog() {
- return getMessageContext().getSubcontext(SOAP11Context.class, true).getEnvelope();
+ return getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getEnvelope();
}
}
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/encoder/http/impl/HttpClientRequestSOAP11Encoder.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/encoder/http/impl/HttpClientRequestSOAP11Encoder.java
index 85ae4d0fa..830bf8ea6 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/encoder/http/impl/HttpClientRequestSOAP11Encoder.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/client/soap11/encoder/http/impl/HttpClientRequestSOAP11Encoder.java
@@ -143,7 +143,7 @@ public class HttpClientRequestSOAP11Encoder extends BaseHttpClientRequestXMLMess
* @param envelope the SOAP envelope
*/
protected void storeSOAPEnvelope(final Envelope envelope) {
- getMessageContext().getSubcontext(SOAP11Context.class, true).setEnvelope(envelope);
+ getMessageContext().getOrCreateSubcontext(SOAP11Context.class).setEnvelope(envelope);
}
/**
@@ -152,7 +152,7 @@ public class HttpClientRequestSOAP11Encoder extends BaseHttpClientRequestXMLMess
* @return the previously stored SOAP envelope
*/
protected Envelope getSOAPEnvelope() {
- return getMessageContext().getSubcontext(SOAP11Context.class, true).getEnvelope();
+ return getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getEnvelope();
}
/**
@@ -231,7 +231,7 @@ public class HttpClientRequestSOAP11Encoder extends BaseHttpClientRequestXMLMess
/** {@inheritDoc} */
protected XMLObject getMessageToLog() {
- return getMessageContext().getSubcontext(SOAP11Context.class, true).getEnvelope();
+ return getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getEnvelope();
}
}
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/decoder/http/impl/HTTPSOAP11Decoder.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/decoder/http/impl/HTTPSOAP11Decoder.java
index 0601b6f17..f28f84657 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/decoder/http/impl/HTTPSOAP11Decoder.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/decoder/http/impl/HTTPSOAP11Decoder.java
@@ -34,10 +34,11 @@ import org.slf4j.LoggerFactory;
import com.google.common.net.MediaType;
-import jakarta.servlet.http.HttpServletRequest;
import net.shibboleth.shared.component.ComponentInitializationException;
import net.shibboleth.shared.servlet.HttpServletSupport;
+import jakarta.servlet.http.HttpServletRequest;
+
/**
* Basic SOAP 1.1 decoder for HTTP transport.
*
@@ -95,7 +96,7 @@ public class HTTPSOAP11Decoder extends BaseHttpServletRequestXMLMessageDecoder {
final Envelope soapMessage;
try {
soapMessage = (Envelope) unmarshallMessage(request.getInputStream());
- messageContext.getSubcontext(SOAP11Context.class, true).setEnvelope(soapMessage);
+ messageContext.getOrCreateSubcontext(SOAP11Context.class).setEnvelope(soapMessage);
} catch (final IOException e) {
log.error("Unable to obtain input stream from HttpServletRequest: {}", e.getMessage());
throw new MessageDecodingException("Unable to obtain input stream from HttpServletRequest", e);
@@ -130,7 +131,7 @@ public class HTTPSOAP11Decoder extends BaseHttpServletRequestXMLMessageDecoder {
/** {@inheritDoc} */
@Override
protected XMLObject getMessageToLog() {
- return getMessageContext().getSubcontext(SOAP11Context.class, true).getEnvelope();
+ return getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getEnvelope();
}
/** {@inheritDoc} */
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11Encoder.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11Encoder.java
index 605850a5f..a4a9af498 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11Encoder.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11Encoder.java
@@ -112,7 +112,7 @@ public class HTTPSOAP11Encoder extends BaseHttpServletResponseXMLMessageEncoder
* @param envelope the SOAP envelope
*/
protected void storeSOAPEnvelope(final Envelope envelope) {
- getMessageContext().getSubcontext(SOAP11Context.class, true).setEnvelope(envelope);
+ getMessageContext().getOrCreateSubcontext(SOAP11Context.class).setEnvelope(envelope);
}
/**
@@ -121,7 +121,7 @@ public class HTTPSOAP11Encoder extends BaseHttpServletResponseXMLMessageEncoder
* @return the previously stored SOAP envelope
*/
protected Envelope getSOAPEnvelope() {
- return getMessageContext().getSubcontext(SOAP11Context.class, true).getEnvelope();
+ return getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getEnvelope();
}
/**
@@ -216,7 +216,7 @@ public class HTTPSOAP11Encoder extends BaseHttpServletResponseXMLMessageEncoder
*/
protected int getHTTPResponseStatusCode() {
final Integer contextStatus =
- getMessageContext().getSubcontext(SOAP11Context.class, true).getHTTPResponseStatus();
+ getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getHTTPResponseStatus();
if (contextStatus != null) {
return contextStatus;
}
@@ -235,7 +235,7 @@ public class HTTPSOAP11Encoder extends BaseHttpServletResponseXMLMessageEncoder
/** {@inheritDoc} */
protected XMLObject getMessageToLog() {
- return getMessageContext().getSubcontext(SOAP11Context.class, true).getEnvelope();
+ return getMessageContext().getOrCreateSubcontext(SOAP11Context.class).getEnvelope();
}
}
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/messaging/impl/SOAP11FaultContextDecoratingErrorHandler.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/messaging/impl/SOAP11FaultContextDecoratingErrorHandler.java
index 066038887..334ab17de 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/messaging/impl/SOAP11FaultContextDecoratingErrorHandler.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/soap11/messaging/impl/SOAP11FaultContextDecoratingErrorHandler.java
@@ -103,7 +103,7 @@ public class SOAP11FaultContextDecoratingErrorHandler implements TypedMessageErr
SOAPMessagingSupport.registerSOAP11Fault(messageContext, fault);
if (wsAddressingActionURI != null) {
- messageContext.getSubcontext(WSAddressingContext.class, true).setFaultActionURI(wsAddressingActionURI);
+ messageContext.getOrCreateSubcontext(WSAddressingContext.class).setFaultActionURI(wsAddressingActionURI);
}
return true;
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddMessageIDHandler.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddMessageIDHandler.java
index cc662a66c..ef7a5865b 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddMessageIDHandler.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddMessageIDHandler.java
@@ -89,7 +89,7 @@ public class AddMessageIDHandler extends AbstractHeaderGeneratingMessageHandler
* @return the retrieved or generated message ID
*/
@Nonnull protected String getMessageID(final MessageContext messageContext) {
- final WSAddressingContext addressing = messageContext.getSubcontext(WSAddressingContext.class, false);
+ final WSAddressingContext addressing = messageContext.getSubcontext(WSAddressingContext.class);
if (addressing != null && addressing.getMessageIDURI() != null) {
return addressing.getMessageIDURI();
} else if (getIdentifierGenerationStrategy() != null) {
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddRelatesToHandler.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddRelatesToHandler.java
index daa1ac2bd..a828c6261 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddRelatesToHandler.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/AddRelatesToHandler.java
@@ -93,7 +93,7 @@ public class AddRelatesToHandler extends AbstractHeaderGeneratingMessageHandler
return false;
}
- final WSAddressingContext addressing = messageContext.getSubcontext(WSAddressingContext.class, false);
+ final WSAddressingContext addressing = messageContext.getSubcontext(WSAddressingContext.class);
if (addressing != null) {
relatesToURI = addressing.getRelatesToURI();
if (relationshipType == null) {
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ExtractMessageIDHandler.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ExtractMessageIDHandler.java
index 3e79258ec..507a84661 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ExtractMessageIDHandler.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ExtractMessageIDHandler.java
@@ -52,7 +52,7 @@ public class ExtractMessageIDHandler extends AbstractMessageHandler {
final String headerValue = header != null ? StringSupport.trimOrNull(header.getURI()) : null;
log.debug("Extracted inbound WS-Addressing MessageID value: {}", headerValue);
if (header != null && headerValue != null) {
- messageContext.getSubcontext(WSAddressingContext.class, true).setMessageIDURI(headerValue);
+ messageContext.getOrCreateSubcontext(WSAddressingContext.class).setMessageIDURI(headerValue);
SOAPMessagingSupport.registerUnderstoodHeader(messageContext, header);
}
}
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ValidateActionHandler.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ValidateActionHandler.java
index ea1f17aaa..832fc2eb4 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ValidateActionHandler.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wsaddressing/messaging/impl/ValidateActionHandler.java
@@ -79,7 +79,7 @@ public class ValidateActionHandler extends AbstractMessageHandler {
}
// A non-null subcontext value will override what is statically configured
- final WSAddressingContext addressing = messageContext.getSubcontext(WSAddressingContext.class, false);
+ final WSAddressingContext addressing = messageContext.getSubcontext(WSAddressingContext.class);
if (addressing != null && addressing.getActionURI() != null) {
expectedActionURI = addressing.getActionURI();
}
diff --git a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wssecurity/messaging/impl/AddTimestampHandler.java b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wssecurity/messaging/impl/AddTimestampHandler.java
index 5b2b6c7d7..294452a96 100644
--- a/opensaml-soap-impl/src/main/java/org/opensaml/soap/wssecurity/messaging/impl/AddTimestampHandler.java
+++ b/opensaml-soap-impl/src/main/java/org/opensaml/soap/wssecurity/messaging/impl/AddTimestampHandler.java
@@ -193,7 +193,7 @@ public class AddTimestampHandler extends AbstractHeaderGeneratingMessageHandler
*/
@Nullable protected Instant getCreatedValue(@Nonnull final MessageContext messageContext) {
Instant value = null;
- final WSSecurityContext security = messageContext.getSubcontext(WSSecurityContext.class, false);
+ final WSSecurityContext security = messageContext.getSubcontext(WSSecurityContext.class);
if (security != null) {
value = security.getTimestampCreated();
}
@@ -221,7 +221,7 @@ public class AddTimestampHandler extends AbstractHeaderGeneratingMessageHandler
@Nullable protected Instant getExpiresValue(@Nonnull final MessageContext messageContext,
@Nullable final Instant created) {
Instant value = null;
- final WSSecurityContext security = messageContext.getSubcontext(WSSecurityContext.class, false);
+ final WSSecurityContext security = messageContext.getSubcontext(WSSecurityContext.class);
if (security != null) {
value = security.getTimestampExpires();
}
diff --git a/opensaml-soap-impl/src/test/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11EncoderTest.java b/opensaml-soap-impl/src/test/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11EncoderTest.java
index 4708cb1dd..27acc51bd 100644
--- a/opensaml-soap-impl/src/test/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11EncoderTest.java
+++ b/opensaml-soap-impl/src/test/java/org/opensaml/soap/soap11/encoder/http/impl/HTTPSOAP11EncoderTest.java
@@ -196,7 +196,7 @@ public class HTTPSOAP11EncoderTest extends XMLObjectBaseTestCase {
MessageContext messageContext = new MessageContext();
messageContext.setMessage(payload);
- messageContext.getSubcontext(SOAP11Context.class, true).setEnvelope(envelope);
+ messageContext.getOrCreateSubcontext(SOAP11Context.class).setEnvelope(envelope);
MockHttpServletResponse response = new MockHttpServletResponse();
@@ -380,7 +380,7 @@ public class HTTPSOAP11EncoderTest extends XMLObjectBaseTestCase {
MessageContext messageContext = new MessageContext();
messageContext.setMessage(payload);
- messageContext.getSubcontext(SOAP11Context.class, true).setHTTPResponseStatus(HttpServletResponse.SC_SERVICE_UNAVAILABLE);
+ messageContext.getOrCreateSubcontext(SOAP11Context.class).setHTTPResponseStatus(HttpServletResponse.SC_SERVICE_UNAVAILABLE);
MockHttpServletResponse response = new MockHttpServletResponse();
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list