X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=saml%2Fsaml2%2Fbinding%2FSAML2SOAPClient.h;h=c5d35ccc5ee85f618efc26596639f3a9735365de;hb=819e0caf684df63378460e4cb00f2f7a38c9a5cf;hp=0fb8dfcd43c9a7b190a294d7846ce2160b004d72;hpb=5bc033f4b58fc39842a68f33e5d9c247e521a73a;p=shibboleth%2Fopensaml2.git diff --git a/saml/saml2/binding/SAML2SOAPClient.h b/saml/saml2/binding/SAML2SOAPClient.h index 0fb8dfc..c5d35cc 100644 --- a/saml/saml2/binding/SAML2SOAPClient.h +++ b/saml/saml2/binding/SAML2SOAPClient.h @@ -26,6 +26,7 @@ #include namespace opensaml { + namespace saml2p { class SAML_API RequestAbstractType; @@ -41,13 +42,14 @@ namespace opensaml { /** * Constructor * - * @param soaper reference to SOAPClient object to use for call + * @param soaper reference to SOAPClient object to use for call + * @param fatalSAMLErrors true iff a non-successful SAML Status code should be fatal */ - SAML2SOAPClient(SOAPClient& soaper) : m_soaper(soaper), m_correlate(NULL) { + SAML2SOAPClient(SOAPClient& soaper, bool fatalSAMLErrors=true) : m_soaper(soaper), m_fatal(fatalSAMLErrors), m_correlate(NULL) { } - + virtual ~SAML2SOAPClient() { - XMLString::release(&m_correlate); + xercesc::XMLString::release(&m_correlate); } /** @@ -57,10 +59,11 @@ namespace opensaml { *

The request will be freed by the client object regardless of the outcome. * * @param request SAML request to send - * @param peer peer to send message to, expressed in metadata terms + * @param to peer to send message to, expressed in metadata criteria terms + * @param from identity of sending application * @param endpoint URL of endpoint to recieve message */ - virtual void sendSAML(RequestAbstractType* request, const saml2md::RoleDescriptor& peer, const char* endpoint); + virtual void sendSAML(RequestAbstractType* request, const char* from, saml2md::MetadataCredentialCriteria& to, const char* endpoint); /** * Specialized method for receiving SAML 2.0 responses. The SOAP layer will be @@ -84,6 +87,9 @@ namespace opensaml { /** SOAP client object */ SOAPClient& m_soaper; + /** Flag controlling default error handler. */ + bool m_fatal; + private: XMLCh* m_correlate; };