org.opensaml
Interface SAMLSOAPBinding

All Superinterfaces:
SAMLBinding
All Known Subinterfaces:
SAMLSOAPHTTPBinding
All Known Implementing Classes:
SOAPBinding, SOAPHTTPBindingProvider

public interface SAMLSOAPBinding
extends SAMLBinding

Interface for SAML SOAP binding implementations. The addHook method must be synchronized by the caller with respect to other binding methods.

Author:
Scott Cantor

Nested Class Summary
static interface SAMLSOAPBinding.SOAPHook
          Callback interface provided by client application enabling post-construction modification or examination of SOAP envelope.
 
Field Summary
 
Fields inherited from interface org.opensaml.SAMLBinding
SAML_SOAP_HTTPS, SOAP
 
Method Summary
 void addHook(SAMLSOAPBinding.SOAPHook h)
          Attach a SOAP hook.
 void addHook(SAMLSOAPBinding.SOAPHook h, Object globalCtx)
          Attach a SOAP hook.
 SAMLRequest recvRequest(Element envelope, Object callCtx)
          Unpacks a SAML request from a SOAP envelope
 SAMLResponse recvResponse(Element envelope, Object callCtx)
          Unpacks a SAML response from a SOAP envelope
 Element sendRequest(SAMLRequest request, Object callCtx)
          Packages a SAML request for transmission via SOAP
 Element sendResponse(SAMLResponse response, SAMLException e, Object callCtx)
          Packages a SAML response for transmission via SOAP
 
Methods inherited from interface org.opensaml.SAMLBinding
receive, receive, respond, respond, send, send
 

Method Detail

sendRequest

public Element sendRequest(SAMLRequest request,
                           Object callCtx)
                    throws SAMLException
Packages a SAML request for transmission via SOAP

Parameters:
request - The SAML request to prepare
callCtx - Context data to pass to registered hooks for this call
Returns:
A SOAP envelope compliant with the SOAP binding
Throws:
SAMLException - Raised if an error occurs in preparing the SOAP message

recvRequest

public SAMLRequest recvRequest(Element envelope,
                               Object callCtx)
                        throws SAMLException
Unpacks a SAML request from a SOAP envelope

Parameters:
envelope - The SOAP envelope received
callCtx - Context data to pass to registered hooks for this call
Returns:
The SAML request received
Throws:
SAMLException - Raised if the SAML request cannot be unpacked successfully

sendResponse

public Element sendResponse(SAMLResponse response,
                            SAMLException e,
                            Object callCtx)
                     throws SAMLException
Packages a SAML response for transmission via SOAP

Parameters:
response - The SAML response to prepare (may be null)
e - An exception to package for transmission as a SOAP fault
callCtx - Context data to pass to registered hooks for this call
Returns:
A SOAP envelope compliant with the SOAP binding
Throws:
SAMLException - Raised if an error occurs in preparing the SOAP message

recvResponse

public SAMLResponse recvResponse(Element envelope,
                                 Object callCtx)
                          throws SAMLException
Unpacks a SAML response from a SOAP envelope

Parameters:
envelope - The SOAP envelope received
callCtx - Context data to pass to registered hooks for this call
Returns:
The SAML response received
Throws:
SAMLException - Raised if the SAML response cannot be unpacked successfully or if it contains an error

addHook

public void addHook(SAMLSOAPBinding.SOAPHook h)
Attach a SOAP hook.

Parameters:
h - Hook interface to attach

addHook

public void addHook(SAMLSOAPBinding.SOAPHook h,
                    Object globalCtx)
Attach a SOAP hook.

Parameters:
h - Hook interface to attach
globalCtx - Context data to pass to registered hooks on each call


Copyright ? 2005 UCAID. All Rights Reserved.