<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>opensaml-2.5.2: opensaml::saml2md::ObservableMetadataProvider Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">opensaml-2.5.2 </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('a00042.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="a00196.html">List of all members</a> </div> <div class="headertitle"> <div class="title">opensaml::saml2md::ObservableMetadataProvider Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>A metadata provider that notifies interested parties of changes. <a href="a00042.html#details">More...</a></p> <p><code>#include <saml/saml2/metadata/ObservableMetadataProvider.h></code></p> <div class="dynheader"> Inheritance diagram for opensaml::saml2md::ObservableMetadataProvider:</div> <div class="dyncontent"> <div class="center"> <img src="a00042.png" usemap="#opensaml::saml2md::ObservableMetadataProvider_map" alt=""/> <map id="opensaml::saml2md::ObservableMetadataProvider_map" name="opensaml::saml2md::ObservableMetadataProvider_map"> <area href="a00040.html" title="Supplies an individual source of metadata. " alt="opensaml::saml2md::MetadataProvider" shape="rect" coords="0,56,292,80"/> <area href="a00001.html" title="Base class for caching metadata providers. " alt="opensaml::saml2md::AbstractMetadataProvider" shape="rect" coords="0,168,292,192"/> <area href="a00021.html" title="Simple implementation of a dynamic, caching MetadataProvider. " alt="opensaml::saml2md::DynamicMetadataProvider" shape="rect" coords="0,224,292,248"/> </map> </div></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00043.html">Observer</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">An observer of metadata provider changes. <a href="a00043.html#details">More...</a><br/></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:afa18d6f71046f3bc94b9e7faa1a1a7f2"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#afa18d6f71046f3bc94b9e7faa1a1a7f2">addObserver</a> (const <a class="el" href="a00043.html">Observer</a> *newObserver) const </td></tr> <tr class="memdesc:afa18d6f71046f3bc94b9e7faa1a1a7f2"><td class="mdescLeft"> </td><td class="mdescRight">Adds a metadata observer. <a href="#afa18d6f71046f3bc94b9e7faa1a1a7f2">More...</a><br/></td></tr> <tr class="separator:afa18d6f71046f3bc94b9e7faa1a1a7f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a668688945cd1754ca4c479d699c31789"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00043.html">Observer</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a668688945cd1754ca4c479d699c31789">removeObserver</a> (const <a class="el" href="a00043.html">Observer</a> *oldObserver) const </td></tr> <tr class="memdesc:a668688945cd1754ca4c479d699c31789"><td class="mdescLeft"> </td><td class="mdescRight">Removes a metadata observer. <a href="#a668688945cd1754ca4c479d699c31789">More...</a><br/></td></tr> <tr class="separator:a668688945cd1754ca4c479d699c31789"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_a00040"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00040')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="a00040.html">opensaml::saml2md::MetadataProvider</a></td></tr> <tr class="memitem:aa420e88393390847885576b5d8157faa inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa420e88393390847885576b5d8157faa"></a> virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#aa420e88393390847885576b5d8157faa">~MetadataProvider</a> ()</td></tr> <tr class="memdesc:aa420e88393390847885576b5d8157faa inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Destructor will delete any installed filters. <br/></td></tr> <tr class="separator:aa420e88393390847885576b5d8157faa inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a15d2b03f927199face0fd455b2c21868 inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a15d2b03f927199face0fd455b2c21868">getId</a> () const </td></tr> <tr class="memdesc:a15d2b03f927199face0fd455b2c21868 inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Returns an identifier for the provider for logging/status purposes. <a href="#a15d2b03f927199face0fd455b2c21868">More...</a><br/></td></tr> <tr class="separator:a15d2b03f927199face0fd455b2c21868 inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a232cddca76b68d7e6b72841171e2a2af inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a232cddca76b68d7e6b72841171e2a2af">addMetadataFilter</a> (<a class="el" href="a00038.html">MetadataFilter</a> *newFilter)</td></tr> <tr class="memdesc:a232cddca76b68d7e6b72841171e2a2af inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Adds a metadata filter to apply to any resolved metadata. <a href="#a232cddca76b68d7e6b72841171e2a2af">More...</a><br/></td></tr> <tr class="separator:a232cddca76b68d7e6b72841171e2a2af inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa8ba520d18dfe0d72343e9ece439a564 inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00038.html">MetadataFilter</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#aa8ba520d18dfe0d72343e9ece439a564">removeMetadataFilter</a> (<a class="el" href="a00038.html">MetadataFilter</a> *oldFilter)</td></tr> <tr class="memdesc:aa8ba520d18dfe0d72343e9ece439a564 inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Removes a metadata filter. <a href="#aa8ba520d18dfe0d72343e9ece439a564">More...</a><br/></td></tr> <tr class="separator:aa8ba520d18dfe0d72343e9ece439a564 inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a46070e7111047039e3df52765e56058c inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a46070e7111047039e3df52765e56058c">setContext</a> (const <a class="el" href="a00039.html">MetadataFilterContext</a> *ctx)</td></tr> <tr class="memdesc:a46070e7111047039e3df52765e56058c inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Sets a filtering context object for use by the filtering process. <a href="#a46070e7111047039e3df52765e56058c">More...</a><br/></td></tr> <tr class="separator:a46070e7111047039e3df52765e56058c inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a761aef228223cc70f6e4e96b07faebdb inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a761aef228223cc70f6e4e96b07faebdb">init</a> ()=0</td></tr> <tr class="memdesc:a761aef228223cc70f6e4e96b07faebdb inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Should be called after instantiating provider and adding filters, but before performing any lookup operations. <a href="#a761aef228223cc70f6e4e96b07faebdb">More...</a><br/></td></tr> <tr class="separator:a761aef228223cc70f6e4e96b07faebdb inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a85ffae9c6ba91fe7632e0f648a301cf5 inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a85ffae9c6ba91fe7632e0f648a301cf5">outputStatus</a> (std::ostream &os) const </td></tr> <tr class="memdesc:a85ffae9c6ba91fe7632e0f648a301cf5 inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Generate an XML representation of the provider's status. <a href="#a85ffae9c6ba91fe7632e0f648a301cf5">More...</a><br/></td></tr> <tr class="separator:a85ffae9c6ba91fe7632e0f648a301cf5 inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4347b18c703af6d245d3b1d07831af8d inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual const <br class="typebreak"/> xmltooling::XMLObject * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a4347b18c703af6d245d3b1d07831af8d">getMetadata</a> () const =0</td></tr> <tr class="memdesc:a4347b18c703af6d245d3b1d07831af8d inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Gets the entire metadata tree, after the registered filter has been applied. <a href="#a4347b18c703af6d245d3b1d07831af8d">More...</a><br/></td></tr> <tr class="separator:a4347b18c703af6d245d3b1d07831af8d inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acca143335fa55f7ed0bf956d8b509922 inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual const EntitiesDescriptor * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#acca143335fa55f7ed0bf956d8b509922">getEntitiesDescriptor</a> (const XMLCh *name, bool requireValidMetadata=true) const </td></tr> <tr class="memdesc:acca143335fa55f7ed0bf956d8b509922 inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Gets the metadata for a given group of entities. <a href="#acca143335fa55f7ed0bf956d8b509922">More...</a><br/></td></tr> <tr class="separator:acca143335fa55f7ed0bf956d8b509922 inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6bda34e90cc452745103f8ad3c9c8edd inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual const EntitiesDescriptor * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a6bda34e90cc452745103f8ad3c9c8edd">getEntitiesDescriptor</a> (const char *name, bool requireValidMetadata=true) const =0</td></tr> <tr class="memdesc:a6bda34e90cc452745103f8ad3c9c8edd inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Gets the metadata for a given group of entities. <a href="#a6bda34e90cc452745103f8ad3c9c8edd">More...</a><br/></td></tr> <tr class="separator:a6bda34e90cc452745103f8ad3c9c8edd inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac4389cf13abb6f6ebcdfa76130701c0d inherit pub_methods_a00040"><td class="memItemLeft" align="right" valign="top">virtual std::pair< const <br class="typebreak"/> EntityDescriptor *, const <br class="typebreak"/> RoleDescriptor * > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#ac4389cf13abb6f6ebcdfa76130701c0d">getEntityDescriptor</a> (const <a class="el" href="a00018.html">Criteria</a> &criteria) const =0</td></tr> <tr class="memdesc:ac4389cf13abb6f6ebcdfa76130701c0d inherit pub_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Gets entity metadata based on supplied criteria. <a href="#ac4389cf13abb6f6ebcdfa76130701c0d">More...</a><br/></td></tr> <tr class="separator:ac4389cf13abb6f6ebcdfa76130701c0d inherit pub_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr class="memitem:a51038a80bfe8829b0deafdff0bc0aa94"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a51038a80bfe8829b0deafdff0bc0aa94">ObservableMetadataProvider</a> (const xercesc::DOMElement *e=nullptr)</td></tr> <tr class="memdesc:a51038a80bfe8829b0deafdff0bc0aa94"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#a51038a80bfe8829b0deafdff0bc0aa94">More...</a><br/></td></tr> <tr class="separator:a51038a80bfe8829b0deafdff0bc0aa94"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2a460eb1cc2781ccf2127f3df8462043"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a460eb1cc2781ccf2127f3df8462043"></a> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a2a460eb1cc2781ccf2127f3df8462043">emitChangeEvent</a> () const </td></tr> <tr class="memdesc:a2a460eb1cc2781ccf2127f3df8462043"><td class="mdescLeft"> </td><td class="mdescRight">Convenience method for notifying every registered <a class="el" href="a00043.html" title="An observer of metadata provider changes. ">Observer</a> of an event. <br/></td></tr> <tr class="separator:a2a460eb1cc2781ccf2127f3df8462043"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0b937f85eeb42d47e33e683fddc13532"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b937f85eeb42d47e33e683fddc13532"></a> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a0b937f85eeb42d47e33e683fddc13532">emitChangeEvent</a> (const EntityDescriptor &entity) const </td></tr> <tr class="memdesc:a0b937f85eeb42d47e33e683fddc13532"><td class="mdescLeft"> </td><td class="mdescRight">Convenience method for notifying every registered <a class="el" href="a00043.html" title="An observer of metadata provider changes. ">Observer</a> of an event. <br/></td></tr> <tr class="separator:a0b937f85eeb42d47e33e683fddc13532"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pro_methods_a00040"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_a00040')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="a00040.html">opensaml::saml2md::MetadataProvider</a></td></tr> <tr class="memitem:a673011f22f0e539f9b198867f94952ed inherit pro_methods_a00040"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#a673011f22f0e539f9b198867f94952ed">MetadataProvider</a> (const xercesc::DOMElement *e=nullptr)</td></tr> <tr class="memdesc:a673011f22f0e539f9b198867f94952ed inherit pro_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#a673011f22f0e539f9b198867f94952ed">More...</a><br/></td></tr> <tr class="separator:a673011f22f0e539f9b198867f94952ed inherit pro_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa7221c067333956e50af402f12a86ae6 inherit pro_methods_a00040"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00040.html#aa7221c067333956e50af402f12a86ae6">doFilters</a> (xmltooling::XMLObject &xmlObject) const </td></tr> <tr class="memdesc:aa7221c067333956e50af402f12a86ae6 inherit pro_methods_a00040"><td class="mdescLeft"> </td><td class="mdescRight">Applies any installed filters to a metadata instance. <a href="#aa7221c067333956e50af402f12a86ae6">More...</a><br/></td></tr> <tr class="separator:aa7221c067333956e50af402f12a86ae6 inherit pro_methods_a00040"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>A metadata provider that notifies interested parties of changes. </p> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a class="anchor" id="a51038a80bfe8829b0deafdff0bc0aa94"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">opensaml::saml2md::ObservableMetadataProvider::ObservableMetadataProvider </td> <td>(</td> <td class="paramtype">const xercesc::DOMElement * </td> <td class="paramname"><em>e</em> = <code>nullptr</code></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">e</td><td>DOM to supply configuration for provider </td></tr> </table> </dd> </dl> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="afa18d6f71046f3bc94b9e7faa1a1a7f2"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual void opensaml::saml2md::ObservableMetadataProvider::addObserver </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00043.html">Observer</a> * </td> <td class="paramname"><em>newObserver</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Adds a metadata observer. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">newObserver</td><td>metadata observer to add </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a668688945cd1754ca4c479d699c31789"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">virtual const <a class="el" href="a00043.html">Observer</a>* opensaml::saml2md::ObservableMetadataProvider::removeObserver </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00043.html">Observer</a> * </td> <td class="paramname"><em>oldObserver</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Removes a metadata observer. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">oldObserver</td><td>metadata observer to remove </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the old observer </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>saml/saml2/metadata/<a class="el" href="a00110.html">ObservableMetadataProvider.h</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="a00119.html">opensaml</a></li><li class="navelem"><a class="el" href="a00123.html">saml2md</a></li><li class="navelem"><a class="el" href="a00042.html">ObservableMetadataProvider</a></li> <li class="footer">Generated on Sat Oct 19 2013 08:32:21 for opensaml-2.5.2 by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.5 </li> </ul> </div> </body> </html>