X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=xmltooling%2FXMLToolingConfig.h;h=76d81fc0df0ccff0d4107103592e039a6ffd3b54;hb=f239625ccb33bd1648f119ca4e93ad374aba958a;hp=26e01a993b1cefbaa02181f5a02ad236b0819a63;hpb=81b488b2790e7bdeb2f43560b1d4a7d22c3dfdf5;p=shibboleth%2Fcpp-xmltooling.git diff --git a/xmltooling/XMLToolingConfig.h b/xmltooling/XMLToolingConfig.h index 26e01a9..76d81fc 100644 --- a/xmltooling/XMLToolingConfig.h +++ b/xmltooling/XMLToolingConfig.h @@ -41,6 +41,7 @@ namespace xmltooling { + class XMLTOOL_API Mutex; class XMLTOOL_API ParserPool; class XMLTOOL_API PathResolver; class XMLTOOL_API TemplateEngine; @@ -52,6 +53,7 @@ namespace xmltooling { #ifndef XMLTOOLING_NO_XMLSEC class XMLTOOL_API CredentialResolver; class XMLTOOL_API KeyInfoResolver; + class XMLTOOL_API PathValidator; class XMLTOOL_API TrustEngine; class XMLTOOL_API XSECCryptoX509CRL; #endif @@ -156,6 +158,15 @@ namespace xmltooling { */ virtual ParserPool& getValidatingParser() const=0; + /** + * Returns a reference to a named mutex. + *

The first access to a given name will create the object. + * + * @param name name of mutex to access + * @return reference to a mutex object + */ + virtual Mutex& getNamedMutex(const char* name)=0; + #ifndef XMLTOOLING_NO_XMLSEC /** * Returns the global KeyInfoResolver instance. @@ -239,6 +250,7 @@ namespace xmltooling { void setURLEncoder(URLEncoder* urlEncoder); /** + * @deprecated * List of catalog files to load into validating parser pool at initialization time. *

Like other path settings, the separator depends on the platform * (semicolon on Windows, colon otherwise). @@ -254,6 +266,13 @@ namespace xmltooling { */ unsigned int clock_skew_secs; +#ifndef XMLTOOLING_LITE + /** + * Manages factories for StorageService plugins. + */ + PluginManager StorageServiceManager; +#endif + #ifndef XMLTOOLING_NO_XMLSEC /** * Returns an X.509 CRL implementation object. @@ -261,14 +280,19 @@ namespace xmltooling { virtual XSECCryptoX509CRL* X509CRL() const=0; /** + * Manages factories for CredentialResolver plugins. + */ + PluginManager CredentialResolverManager; + + /** * Manages factories for KeyInfoResolver plugins. */ PluginManager KeyInfoResolverManager; /** - * Manages factories for CredentialResolver plugins. + * Manages factories for PathValidator plugins. */ - PluginManager CredentialResolverManager; + PluginManager PathValidatorManager; /** * Manages factories for TrustEngine plugins. @@ -276,11 +300,6 @@ namespace xmltooling { PluginManager TrustEngineManager; /** - * Manages factories for StorageService plugins. - */ - PluginManager StorageServiceManager; - - /** * Maps an XML Signature/Encryption algorithm identifier to a library-specific * key algorithm and size for use in resolving credentials. *