*/
class SHIBSP_API SPConfig
{
- MAKE_NONCOPYABLE(SPConfig);
+ MAKE_NONCOPYABLE(SPConfig);
public:
+ SPConfig() : attribute_value_delimeter(';'), m_serviceProvider(NULL),
+#ifndef SHIBSP_LITE
+ m_artifactResolver(NULL),
+#endif
+ m_features(0) {}
+
virtual ~SPConfig() {}
/**
RequestMapping = 64,
OutOfProcess = 128,
InProcess = 256,
- Logging = 512
+ Logging = 512,
+ Handlers = 1024
};
/**
* before using any library classes.
*
* @param catalog_path delimited set of schema catalog files to load
+ * @param inst_prefix installation prefix for software
* @return true iff initialization was successful
*/
- virtual bool init(const char* catalog_path)=0;
+ virtual bool init(const char* catalog_path=NULL, const char* inst_prefix=NULL);
/**
* Shuts down library
* Each process using the library SHOULD call this function exactly once
* before terminating itself.
*/
- virtual void term()=0;
+ virtual void term();
/**
* Sets the global ServiceProvider instance.
#endif
/**
+ * Manages factories for Handler plugins that implement ArtifactResolutionService functionality.
+ */
+ xmltooling::PluginManager< Handler,std::string,std::pair<const xercesc::DOMElement*,const char*> > ArtifactResolutionServiceManager;
+
+ /**
* Manages factories for Handler plugins that implement AssertionConsumerService functionality.
*/
xmltooling::PluginManager< Handler,std::string,std::pair<const xercesc::DOMElement*,const char*> > AssertionConsumerServiceManager;
xmltooling::PluginManager<ListenerService,std::string,const xercesc::DOMElement*> ListenerServiceManager;
/**
+ * Manages factories for Handler plugins that implement LogoutInitiator functionality.
+ */
+ xmltooling::PluginManager< Handler,std::string,std::pair<const xercesc::DOMElement*,const char*> > LogoutInitiatorManager;
+
+ /**
* Manages factories for Handler plugins that implement ManageNameIDService functionality.
*/
xmltooling::PluginManager< Handler,std::string,std::pair<const xercesc::DOMElement*,const char*> > ManageNameIDServiceManager;
xmltooling::PluginManager< Handler,std::string,std::pair<const xercesc::DOMElement*,const char*> > SingleLogoutServiceManager;
protected:
- SPConfig() : attribute_value_delimeter(';'), m_serviceProvider(NULL),
-#ifndef SHIBSP_LITE
- m_artifactResolver(NULL),
-#endif
- m_features(0) {}
-
/** Global ServiceProvider instance. */
ServiceProvider* m_serviceProvider;