Convert from NULL macro to nullptr, remove unused zlib code.
[shibboleth/cpp-opensaml.git] / saml / binding / impl / SOAPClient.cpp
index 9aca512..84ec7e8 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  Copyright 2001-2007 Internet2
+ *  Copyright 2001-2010 Internet2
  * 
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 #include "internal.h"
 #include "exceptions.h"
 #include "version.h"
+#include "binding/SecurityPolicy.h"
 #include "binding/SOAPClient.h"
 #include "saml2/metadata/Metadata.h"
+#include "saml2/metadata/MetadataCredentialCriteria.h"
 #include "saml2/metadata/MetadataProvider.h"
 
 #include <xmltooling/security/X509TrustEngine.h>
 #include <xmltooling/soap/SOAP.h>
 #include <xmltooling/soap/HTTPSOAPTransport.h>
+#include <xsec/framework/XSECDefs.hpp>
 
 using namespace opensaml::saml2;
 using namespace opensaml::saml2md;
@@ -37,6 +40,20 @@ using namespace opensaml;
 using namespace xmltooling;
 using namespace std;
 
+SOAPClient::SOAPClient(SecurityPolicy& policy)
+    : soap11::SOAPClient(policy.getValidating()), m_policy(policy), m_force(true), m_peer(nullptr), m_criteria(nullptr)
+{
+}
+
+SOAPClient::~SOAPClient()
+{
+}
+
+void SOAPClient::forceTransportAuthentication(bool force)
+{
+    m_force = force;
+}
+
 void SOAPClient::send(const soap11::Envelope& env, const char* from, MetadataCredentialCriteria& to, const char* endpoint)
 {
     // Clear policy.
@@ -96,8 +113,13 @@ soap11::Envelope* SOAPClient::receive()
 
 void SOAPClient::reset()
 {
-    m_criteria = NULL;
-    m_peer = NULL;
+    m_criteria = nullptr;
+    m_peer = nullptr;
     soap11::SOAPClient::reset();
     m_policy.reset();
 }
+
+SecurityPolicy& SOAPClient::getPolicy() const
+{
+    return m_policy;
+}