[java-opensaml COMMIT] in /trunk/opensaml-saml-impl: pom.xml src/main/java/org/opensaml/saml/common/binding/SAMLSOAPD...
noreply at shibboleth.net
noreply at shibboleth.net
Wed Jan 30 19:50:41 EST 2013
Author: putmanb
Date: Wed Jan 30 19:50:41 2013
New Revision: 3191
URL: http://svn.shibboleth.net/view/java-opensaml?rev=3191&view=rev
Log:
Refactor SAML SOAP encoders and decoders to just be simple extensions of the generic SOAP ones.
Added:
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/common/binding/SAMLSOAPDecoderBodyHandler.java (with props)
Modified:
trunk/opensaml-saml-impl/pom.xml
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/HTTPSOAP11Decoder.java
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/encoding/HTTPSOAP11Encoder.java
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/decoding/HTTPSOAP11Decoder.java
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/binding/encoding/HTTPSOAP11Encoder.java
Modified: trunk/opensaml-saml-impl/pom.xml
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/pom.xml?rev=3191&r1=3190&r2=3191&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/pom.xml (original)
+++ trunk/opensaml-saml-impl/pom.xml Wed Jan 30 19:50:41 2013
@@ -25,6 +25,11 @@
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>opensaml-util</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>opensaml-soap-impl</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
@@ -77,12 +82,6 @@
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
- <artifactId>opensaml-soap-impl</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>${project.groupId}</groupId>
<artifactId>opensaml-xmlsec-impl</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/HTTPSOAP11Decoder.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/HTTPSOAP11Decoder.java?rev=3191&r1=3190&r2=3191&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/HTTPSOAP11Decoder.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/binding/decoding/HTTPSOAP11Decoder.java Wed Jan 30 19:50:41 2013
@@ -17,31 +17,30 @@
package org.opensaml.saml.saml1.binding.decoding;
-import java.io.IOException;
-import java.util.List;
-
-import javax.servlet.http.HttpServletRequest;
-
-import org.opensaml.core.xml.XMLObject;
-import org.opensaml.messaging.context.MessageContext;
import org.opensaml.messaging.decoder.MessageDecodingException;
-import org.opensaml.messaging.decoder.servlet.BaseHttpServletRequestXmlMessageDecoder;
import org.opensaml.saml.common.SAMLObject;
+import org.opensaml.saml.common.binding.SAMLSOAPDecoderBodyHandler;
import org.opensaml.saml.common.binding.decoding.SAMLMessageDecoder;
import org.opensaml.saml.common.xml.SAMLConstants;
-import org.opensaml.soap.messaging.context.SOAP11Context;
-import org.opensaml.soap.soap11.Envelope;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* SAML 1.1 HTTP SOAP 1.1 binding decoder.
*/
-public class HTTPSOAP11Decoder extends BaseHttpServletRequestXmlMessageDecoder<SAMLObject>
+public class HTTPSOAP11Decoder extends org.opensaml.soap.soap11.decoder.http.HTTPSOAP11Decoder<SAMLObject>
implements SAMLMessageDecoder {
-
+
/** Class logger. */
private final Logger log = LoggerFactory.getLogger(HTTPSOAP11Decoder.class);
+
+ /**
+ * Constructor.
+ */
+ public HTTPSOAP11Decoder() {
+ super();
+ setBodyHandler(new SAMLSOAPDecoderBodyHandler());
+ }
/** {@inheritDoc} */
public String getBindingURI() {
@@ -50,52 +49,10 @@
/** {@inheritDoc} */
protected void doDecode() throws MessageDecodingException {
- MessageContext<SAMLObject> messageContext = new MessageContext<SAMLObject>();
- HttpServletRequest request = getHttpServletRequest();
+ super.doDecode();
- if (!"POST".equalsIgnoreCase(request.getMethod())) {
- throw new MessageDecodingException("This message decoder only supports the HTTP POST method");
- }
-
- log.debug("Unmarshalling SOAP message");
- Envelope soapMessage;
- try {
- soapMessage = (Envelope) unmarshallMessage(request.getInputStream());
- messageContext.getSubcontext(SOAP11Context.class, true).setEnvelope(soapMessage);
- } catch (IOException e) {
- log.error("Unable to obtain input stream from HttpServletRequest", e);
[... 450 lines stripped ...]
More information about the commits
mailing list