Reducing header overuse, non-inlining selected methods (CPPOST-35).
[shibboleth/cpp-opensaml.git] / saml / saml2 / metadata / AbstractMetadataProvider.h
index 50d00f1..2e5a7ca 100644 (file)
@@ -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.
 
 #include <saml/saml2/metadata/ObservableMetadataProvider.h>
 
-#include <xmltooling/security/Credential.h>
-#include <xmltooling/security/CredentialCriteria.h>
-#include <xmltooling/util/Threads.h>
+#include <ctime>
+#include <map>
+#include <vector>
+#include <string>
+
+namespace xmltooling {
+    class XMLTOOL_API Credential;
+    class XMLTOOL_API CredentialCriteria;
+    class XMLTOOL_API KeyInfoResolver;
+    class XMLTOOL_API Mutex;
+};
 
 namespace opensaml {
     namespace saml2md {
         
         class SAML_API MetadataFilter;
 
+#if defined (_MSC_VER)
+        #pragma warning( push )
+        #pragma warning( disable : 4251 )
+#endif
+
         /**
          * Base class for caching metadata providers.
          */
@@ -113,6 +126,11 @@ namespace opensaml {
             mutable credmap_t m_credentialMap;
             const credmap_t::mapped_type& resolveCredentials(const RoleDescriptor& role) const;
         };
+
+#if defined (_MSC_VER)
+        #pragma warning( pop )
+        #pragma warning( disable : 4251 )
+#endif
         
     };
 };