X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=saml%2Fsaml2%2Fbinding%2FSAML2SOAPClient.h;h=eae10307f41d5ecb493740a078f7341ae2d56e0c;hb=b1614d3c1fc1f4230ab2a123f43994127c25462c;hp=ff5e5a1efd136096930038f3c0953fa89b526f59;hpb=932cfaae2176c2eba1a9938dc420591a9551a7f3;p=shibboleth%2Fcpp-opensaml.git diff --git a/saml/saml2/binding/SAML2SOAPClient.h b/saml/saml2/binding/SAML2SOAPClient.h index ff5e5a1..eae1030 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; @@ -35,15 +36,16 @@ namespace opensaml { /** * Specialized SOAPClient for SAML 2.0 SOAP binding. */ - class SAML_API SAML2SOAPClient : opensaml::SOAPClient + class SAML_API SAML2SOAPClient { public: /** - * Creates a SOAP client instance with a particular SecurityPolicy. + * Constructor * - * @param policy reference to SecurityPolicy to apply + * @param soaper reference to SOAPClient object to use for call */ - SAML2SOAPClient(SecurityPolicy& policy) : opensaml::SOAPClient(policy), m_correlate(NULL) {} + SAML2SOAPClient(SOAPClient& soaper) : m_soaper(soaper), m_correlate(NULL) { + } virtual ~SAML2SOAPClient() { XMLString::release(&m_correlate); @@ -53,13 +55,13 @@ namespace opensaml { * Specialized method for sending SAML 2.0 requests. The SOAP layer will be * constructed automatically. * - *

The request will be freed by the client object if the method succeeds. + *

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 peer peer to send message to, expressed in metadata criteria terms * @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, saml2md::MetadataCredentialCriteria& peer, const char* endpoint); /** * Specialized method for receiving SAML 2.0 responses. The SOAP layer will be @@ -79,7 +81,10 @@ namespace opensaml { * @return true iff the error should be treated as a fatal error */ virtual bool handleError(const Status& status); - + + /** SOAP client object */ + SOAPClient& m_soaper; + private: XMLCh* m_correlate; };