X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=saml%2Fbinding%2FSOAPClient.h;h=0941a6c558f14723f28cf12cecc15f700db753d5;hb=d8a4f024b89272eae00618fc39e6127b6c191edd;hp=52a784501d467f53671044780770782ed10f427b;hpb=46ac496b77b850309c07e732ff89fa41c776915d;p=shibboleth%2Fcpp-opensaml.git diff --git a/saml/binding/SOAPClient.h b/saml/binding/SOAPClient.h index 52a7845..0941a6c 100644 --- a/saml/binding/SOAPClient.h +++ b/saml/binding/SOAPClient.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,12 +23,17 @@ #ifndef __saml_soap11client_h__ #define __saml_soap11client_h__ -#include -#include +#include + #include namespace opensaml { + class SAML_API SecurityPolicy; + namespace saml2md { + class SAML_API MetadataCredentialCriteria; + }; + /** * Specialized SOAPClient for SAML SOAP bindings. */ @@ -40,12 +45,9 @@ namespace opensaml { * * @param policy reference to SecurityPolicy to apply */ - SOAPClient(SecurityPolicy& policy) - : soap11::SOAPClient(policy.getValidating()), m_policy(policy), m_force(true), m_peer(NULL), m_criteria(NULL) { - } + SOAPClient(SecurityPolicy& policy); - virtual ~SOAPClient() { - } + virtual ~SOAPClient(); /** * Controls whether to force transport/peer authentication via an X509TrustEngine. @@ -54,22 +56,21 @@ namespace opensaml { * * @param force true iff the client should refuse to communicate without this protection */ - void forceTransportAuthentication(bool force=true) { - m_force = force; - } + void forceTransportAuthentication(bool force=true); using soap11::SOAPClient::send; /** - * SAML-specific method uses a RoleDescriptor to determine the peer name and prepare the + * SAML-specific method uses metadata to determine the peer name and prepare the * transport layer with peer credential information. The SecurityPolicy is also reset, * in case the policy is reused. * * @param env SOAP envelope to send - * @param peer peer to send message to, expressed in metadata criteria terms + * @param from identity of sending application + * @param to peer to send message to, expressed in metadata criteria terms * @param endpoint URL of endpoint to recieve message */ - virtual void send(const soap11::Envelope& env, saml2md::MetadataCredentialCriteria& peer, const char* endpoint); + virtual void send(const soap11::Envelope& env, const char* from, saml2md::MetadataCredentialCriteria& to, const char* endpoint); /** * Override applies SecurityPolicy to envelope before returning it. @@ -85,9 +86,7 @@ namespace opensaml { * * @return the associated SecurityPolicy */ - SecurityPolicy& getPolicy() const { - return m_policy; - } + SecurityPolicy& getPolicy() const; protected: /**