Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > f5d32d36b1bb23a0ffa3b5bde2f8e7c2 > files > 193

lib64shibboleth-sp-devel-2.5.3-1.mga4.x86_64.rpm

<!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>shibboleth-2.5.3: shibsp::ServiceProvider 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">shibboleth-2.5.3
   </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&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;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('a00044.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="a00178.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">shibsp::ServiceProvider Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>Interface to a Shibboleth <a class="el" href="a00044.html" title="Interface to a Shibboleth ServiceProvider instance. ">ServiceProvider</a> instance.  
 <a href="a00044.html#details">More...</a></p>

<p><code>#include &lt;shibsp/ServiceProvider.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for shibsp::ServiceProvider:</div>
<div class="dyncontent">
 <div class="center">
  <img src="a00044.png" usemap="#shibsp::ServiceProvider_map" alt=""/>
  <map id="shibsp::ServiceProvider_map" name="shibsp::ServiceProvider_map">
<area href="a00034.html" title="Interface to a generic set of typed properties or a DOM container of additional data. " alt="shibsp::PropertySet" shape="rect" coords="157,0,304,24"/>
</map>
 </div></div>
<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:a2d3027d17ebc82004633f253be2a48a0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a2d3027d17ebc82004633f253be2a48a0">init</a> ()=0</td></tr>
<tr class="memdesc:a2d3027d17ebc82004633f253be2a48a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads a configuration and prepares the instance for use.  <a href="#a2d3027d17ebc82004633f253be2a48a0">More...</a><br/></td></tr>
<tr class="separator:a2d3027d17ebc82004633f253be2a48a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0bf32bb5aae48f1b0c9fb1d89964414"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00055.html">TransactionLog</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#aa0bf32bb5aae48f1b0c9fb1d89964414">getTransactionLog</a> () const =0</td></tr>
<tr class="memdesc:aa0bf32bb5aae48f1b0c9fb1d89964414"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="a00055.html" title="Interface to a synchronized event/audit logging object. ">TransactionLog</a> instance.  <a href="#aa0bf32bb5aae48f1b0c9fb1d89964414">More...</a><br/></td></tr>
<tr class="separator:aa0bf32bb5aae48f1b0c9fb1d89964414"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbef140b64c3fa92f13851d027809d43"><td class="memItemLeft" align="right" valign="top">virtual <br class="typebreak"/>
xmltooling::StorageService *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#abbef140b64c3fa92f13851d027809d43">getStorageService</a> (const char *id) const =0</td></tr>
<tr class="memdesc:abbef140b64c3fa92f13851d027809d43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a StorageService instance based on an ID.  <a href="#abbef140b64c3fa92f13851d027809d43">More...</a><br/></td></tr>
<tr class="separator:abbef140b64c3fa92f13851d027809d43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae643c5739dead0089ba9066973a3be61"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00046.html">SessionCache</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#ae643c5739dead0089ba9066973a3be61">getSessionCache</a> (bool required=true) const =0</td></tr>
<tr class="memdesc:ae643c5739dead0089ba9066973a3be61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="a00046.html" title="Creates and manages user sessions. ">SessionCache</a> instance.  <a href="#ae643c5739dead0089ba9066973a3be61">More...</a><br/></td></tr>
<tr class="separator:ae643c5739dead0089ba9066973a3be61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac069edab095a0fd068751ac0c54be5b6"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00026.html">ListenerService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#ac069edab095a0fd068751ac0c54be5b6">getListenerService</a> (bool required=true) const =0</td></tr>
<tr class="memdesc:ac069edab095a0fd068751ac0c54be5b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="a00026.html" title="Interface to a remoting engine. ">ListenerService</a> instance.  <a href="#ac069edab095a0fd068751ac0c54be5b6">More...</a><br/></td></tr>
<tr class="separator:ac069edab095a0fd068751ac0c54be5b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ff3e3ab8ebd26a0380e3da5b5b8fddb"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00043.html">SecurityPolicyProvider</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a1ff3e3ab8ebd26a0380e3da5b5b8fddb">getSecurityPolicyProvider</a> (bool required=true) const </td></tr>
<tr class="memdesc:a1ff3e3ab8ebd26a0380e3da5b5b8fddb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="a00043.html" title="Interface to a source of security policy settings and rules. ">SecurityPolicyProvider</a> instance.  <a href="#a1ff3e3ab8ebd26a0380e3da5b5b8fddb">More...</a><br/></td></tr>
<tr class="separator:a1ff3e3ab8ebd26a0380e3da5b5b8fddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e191c35670de9e67d685fe36e795478"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00034.html">PropertySet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a3e191c35670de9e67d685fe36e795478">getPolicySettings</a> (const char *id) const =0</td></tr>
<tr class="separator:a3e191c35670de9e67d685fe36e795478"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a584e99b042d5a2c235bf4ba5911cd57b"><td class="memItemLeft" align="right" valign="top">virtual const std::vector<br class="typebreak"/>
&lt; const <br class="typebreak"/>
opensaml::SecurityPolicyRule * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a584e99b042d5a2c235bf4ba5911cd57b">getPolicyRules</a> (const char *id) const =0</td></tr>
<tr class="separator:a584e99b042d5a2c235bf4ba5911cd57b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46d4525b9a0995197c29485ec376fec3"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a46d4525b9a0995197c29485ec376fec3">setTransportOptions</a> (xmltooling::SOAPTransport &amp;transport) const =0</td></tr>
<tr class="memdesc:a46d4525b9a0995197c29485ec376fec3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets implementation-specific transport options.  <a href="#a46d4525b9a0995197c29485ec376fec3">More...</a><br/></td></tr>
<tr class="separator:a46d4525b9a0995197c29485ec376fec3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5af9b4d49871c0c350d1ad7e6935228d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00038.html">RequestMapper</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a5af9b4d49871c0c350d1ad7e6935228d">getRequestMapper</a> (bool required=true) const =0</td></tr>
<tr class="memdesc:a5af9b4d49871c0c350d1ad7e6935228d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="a00038.html" title="Interface to a request mapping plugin. ">RequestMapper</a> instance.  <a href="#a5af9b4d49871c0c350d1ad7e6935228d">More...</a><br/></td></tr>
<tr class="separator:a5af9b4d49871c0c350d1ad7e6935228d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30e5926df9feb046b8cf368f64de4500"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00004.html">Application</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a30e5926df9feb046b8cf368f64de4500">getApplication</a> (const char *applicationId) const =0</td></tr>
<tr class="memdesc:a30e5926df9feb046b8cf368f64de4500"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an <a class="el" href="a00004.html" title="Interface to a Shibboleth Application instance. ">Application</a> instance matching the specified ID.  <a href="#a30e5926df9feb046b8cf368f64de4500">More...</a><br/></td></tr>
<tr class="separator:a30e5926df9feb046b8cf368f64de4500"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae406fd8c10ab63e97fc018151b3c3bea"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#ae406fd8c10ab63e97fc018151b3c3bea">doAuthentication</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request, bool handler=false) const </td></tr>
<tr class="memdesc:ae406fd8c10ab63e97fc018151b3c3bea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enforces requirements for an authenticated session.  <a href="#ae406fd8c10ab63e97fc018151b3c3bea">More...</a><br/></td></tr>
<tr class="separator:ae406fd8c10ab63e97fc018151b3c3bea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14785d1c66b4c86e30e1510659e0a7e2"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a14785d1c66b4c86e30e1510659e0a7e2">doAuthorization</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request) const </td></tr>
<tr class="memdesc:a14785d1c66b4c86e30e1510659e0a7e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enforces authorization requirements based on the authenticated session.  <a href="#a14785d1c66b4c86e30e1510659e0a7e2">More...</a><br/></td></tr>
<tr class="separator:a14785d1c66b4c86e30e1510659e0a7e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09df3261111ce8d6854f9876fd83e793"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a09df3261111ce8d6854f9876fd83e793">doExport</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request, bool requireSession=true) const </td></tr>
<tr class="memdesc:a09df3261111ce8d6854f9876fd83e793"><td class="mdescLeft">&#160;</td><td class="mdescRight">Publishes session contents to the request in the form of headers or environment variables.  <a href="#a09df3261111ce8d6854f9876fd83e793">More...</a><br/></td></tr>
<tr class="separator:a09df3261111ce8d6854f9876fd83e793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed57d181c985b2e7c6066efe49c180a7"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#aed57d181c985b2e7c6066efe49c180a7">doHandler</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request) const </td></tr>
<tr class="memdesc:aed57d181c985b2e7c6066efe49c180a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Services requests for registered <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a> locations.  <a href="#aed57d181c985b2e7c6066efe49c180a7">More...</a><br/></td></tr>
<tr class="separator:aed57d181c985b2e7c6066efe49c180a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a365ad6b81c88e2c964a9e71cdce79b07"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00036.html">Remoted</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a365ad6b81c88e2c964a9e71cdce79b07">regListener</a> (const char *address, <a class="el" href="a00036.html">Remoted</a> *svc)</td></tr>
<tr class="memdesc:a365ad6b81c88e2c964a9e71cdce79b07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register for a message.  <a href="#a365ad6b81c88e2c964a9e71cdce79b07">More...</a><br/></td></tr>
<tr class="separator:a365ad6b81c88e2c964a9e71cdce79b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0326331381dee225efaef895d49ae085"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a0326331381dee225efaef895d49ae085">unregListener</a> (const char *address, <a class="el" href="a00036.html">Remoted</a> *current, <a class="el" href="a00036.html">Remoted</a> *restore=nullptr)</td></tr>
<tr class="memdesc:a0326331381dee225efaef895d49ae085"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unregisters service from an address, possibly restoring an original.  <a href="#a0326331381dee225efaef895d49ae085">More...</a><br/></td></tr>
<tr class="separator:a0326331381dee225efaef895d49ae085"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8849372251e3a794e85c00accc9f2d5c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00036.html">Remoted</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#a8849372251e3a794e85c00accc9f2d5c">lookupListener</a> (const char *address) const </td></tr>
<tr class="memdesc:a8849372251e3a794e85c00accc9f2d5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns current service registered at an address, if any.  <a href="#a8849372251e3a794e85c00accc9f2d5c">More...</a><br/></td></tr>
<tr class="separator:a8849372251e3a794e85c00accc9f2d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_a00034"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00034')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="a00034.html">shibsp::PropertySet</a></td></tr>
<tr class="memitem:aba91040e2ae0ab4467da7fc2dcaf794e inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00034.html">PropertySet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#aba91040e2ae0ab4467da7fc2dcaf794e">getParent</a> () const =0</td></tr>
<tr class="memdesc:aba91040e2ae0ab4467da7fc2dcaf794e inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns parent of this <a class="el" href="a00034.html" title="Interface to a generic set of typed properties or a DOM container of additional data. ">PropertySet</a>, if any.  <a href="#aba91040e2ae0ab4467da7fc2dcaf794e">More...</a><br/></td></tr>
<tr class="separator:aba91040e2ae0ab4467da7fc2dcaf794e inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaddca0d6eaa5db1b38108041386c5e7 inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#aaaddca0d6eaa5db1b38108041386c5e7">setParent</a> (const <a class="el" href="a00034.html">PropertySet</a> *parent)=0</td></tr>
<tr class="memdesc:aaaddca0d6eaa5db1b38108041386c5e7 inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Establishes a "parent" <a class="el" href="a00034.html" title="Interface to a generic set of typed properties or a DOM container of additional data. ">PropertySet</a> to supply inherited settings.  <a href="#aaaddca0d6eaa5db1b38108041386c5e7">More...</a><br/></td></tr>
<tr class="separator:aaaddca0d6eaa5db1b38108041386c5e7 inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fa9ef95c537376d142dd9ecb6257fd6 inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#a5fa9ef95c537376d142dd9ecb6257fd6">getBool</a> (const char *name, const char *ns=nullptr) const =0</td></tr>
<tr class="memdesc:a5fa9ef95c537376d142dd9ecb6257fd6 inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a boolean-valued property.  <a href="#a5fa9ef95c537376d142dd9ecb6257fd6">More...</a><br/></td></tr>
<tr class="separator:a5fa9ef95c537376d142dd9ecb6257fd6 inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeacf648ec83214db5a3500c4806156de inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, const <br class="typebreak"/>
char * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#aeacf648ec83214db5a3500c4806156de">getString</a> (const char *name, const char *ns=nullptr) const =0</td></tr>
<tr class="memdesc:aeacf648ec83214db5a3500c4806156de inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string-valued property.  <a href="#aeacf648ec83214db5a3500c4806156de">More...</a><br/></td></tr>
<tr class="separator:aeacf648ec83214db5a3500c4806156de inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac57b03fc46ad8c3bddadef1018aa3754 inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, const <br class="typebreak"/>
XMLCh * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#ac57b03fc46ad8c3bddadef1018aa3754">getXMLString</a> (const char *name, const char *ns=nullptr) const =0</td></tr>
<tr class="memdesc:ac57b03fc46ad8c3bddadef1018aa3754 inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a Unicode string-valued property.  <a href="#ac57b03fc46ad8c3bddadef1018aa3754">More...</a><br/></td></tr>
<tr class="separator:ac57b03fc46ad8c3bddadef1018aa3754 inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae71597d828024ddc39bc56b7f80e0d9f inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, <br class="typebreak"/>
unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#ae71597d828024ddc39bc56b7f80e0d9f">getUnsignedInt</a> (const char *name, const char *ns=nullptr) const =0</td></tr>
<tr class="memdesc:ae71597d828024ddc39bc56b7f80e0d9f inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an unsigned integer-valued property.  <a href="#ae71597d828024ddc39bc56b7f80e0d9f">More...</a><br/></td></tr>
<tr class="separator:ae71597d828024ddc39bc56b7f80e0d9f inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15d6436d954de445d15b7fa6f9bdedfe inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual std::pair&lt; bool, int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#a15d6436d954de445d15b7fa6f9bdedfe">getInt</a> (const char *name, const char *ns=nullptr) const =0</td></tr>
<tr class="memdesc:a15d6436d954de445d15b7fa6f9bdedfe inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an integer-valued property.  <a href="#a15d6436d954de445d15b7fa6f9bdedfe">More...</a><br/></td></tr>
<tr class="separator:a15d6436d954de445d15b7fa6f9bdedfe inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1c7223aeb0b8c5807e01e3a7b9af675 inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#ab1c7223aeb0b8c5807e01e3a7b9af675">getAll</a> (std::map&lt; std::string, const char * &gt; &amp;properties) const =0</td></tr>
<tr class="memdesc:ab1c7223aeb0b8c5807e01e3a7b9af675 inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a map of all known properties in string form.  <a href="#ab1c7223aeb0b8c5807e01e3a7b9af675">More...</a><br/></td></tr>
<tr class="separator:ab1c7223aeb0b8c5807e01e3a7b9af675 inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a310b178d0b4793f00bec232b9c732ac2 inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="a00034.html">PropertySet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#a310b178d0b4793f00bec232b9c732ac2">getPropertySet</a> (const char *name, const char *ns=<a class="el" href="a00128.html#a7c430d9a2b402fafe37a49e23b941d27">shibspconstants::ASCII_SHIB2SPCONFIG_NS</a>) const =0</td></tr>
<tr class="memdesc:a310b178d0b4793f00bec232b9c732ac2 inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a nested property set.  <a href="#a310b178d0b4793f00bec232b9c732ac2">More...</a><br/></td></tr>
<tr class="separator:a310b178d0b4793f00bec232b9c732ac2 inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea08e3882c71bc1f076e39a05bf4074f inherit pub_methods_a00034"><td class="memItemLeft" align="right" valign="top">virtual const xercesc::DOMElement *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00034.html#aea08e3882c71bc1f076e39a05bf4074f">getElement</a> () const =0</td></tr>
<tr class="memdesc:aea08e3882c71bc1f076e39a05bf4074f inherit pub_methods_a00034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a DOM element representing the property container, if any.  <a href="#aea08e3882c71bc1f076e39a05bf4074f">More...</a><br/></td></tr>
<tr class="separator:aea08e3882c71bc1f076e39a05bf4074f inherit pub_methods_a00034"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:abc137878b03cc1428d7d2c56fd3bf426"><td class="memItemLeft" align="right" valign="top">std::set&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00044.html#abc137878b03cc1428d7d2c56fd3bf426">m_authTypes</a></td></tr>
<tr class="memdesc:abc137878b03cc1428d7d2c56fd3bf426"><td class="mdescLeft">&#160;</td><td class="mdescRight">The AuthTypes to "recognize" (defaults to "shibboleth").  <a href="#abc137878b03cc1428d7d2c56fd3bf426">More...</a><br/></td></tr>
<tr class="separator:abc137878b03cc1428d7d2c56fd3bf426"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Interface to a Shibboleth <a class="el" href="a00044.html" title="Interface to a Shibboleth ServiceProvider instance. ">ServiceProvider</a> instance. </p>
<p>A <a class="el" href="a00044.html" title="Interface to a Shibboleth ServiceProvider instance. ">ServiceProvider</a> exposes configuration and infrastructure services required by the SP implementation, allowing a flexible configuration format. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ae406fd8c10ab63e97fc018151b3c3bea"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::pair&lt;bool,long&gt; shibsp::ServiceProvider::doAuthentication </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00053.html">SPRequest</a> &amp;&#160;</td>
          <td class="paramname"><em>request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>handler</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</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>Enforces requirements for an authenticated session. </p>
<p>If the return value's first member is true, then request processing should terminate with the second member as a status value. If false, processing can continue.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request interface </td></tr>
    <tr><td class="paramname">handler</td><td>true iff a request to a registered <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a> location can be directly executed </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pair containing a "request completed" indicator and a server-specific response code </dd></dl>

</div>
</div>
<a class="anchor" id="a14785d1c66b4c86e30e1510659e0a7e2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::pair&lt;bool,long&gt; shibsp::ServiceProvider::doAuthorization </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00053.html">SPRequest</a> &amp;&#160;</td>
          <td class="paramname"><em>request</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>Enforces authorization requirements based on the authenticated session. </p>
<p>If the return value's first member is true, then request processing should terminate with the second member as a status value. If false, processing can continue.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request interface </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pair containing a "request completed" indicator and a server-specific response code </dd></dl>

</div>
</div>
<a class="anchor" id="a09df3261111ce8d6854f9876fd83e793"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::pair&lt;bool,long&gt; shibsp::ServiceProvider::doExport </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00053.html">SPRequest</a> &amp;&#160;</td>
          <td class="paramname"><em>request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>requireSession</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</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>Publishes session contents to the request in the form of headers or environment variables. </p>
<p>If the return value's first member is true, then request processing should terminate with the second member as a status value. If false, processing can continue.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request interface </td></tr>
    <tr><td class="paramname">requireSession</td><td>set to true iff an error should result if no session exists </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pair containing a "request completed" indicator and a server-specific response code </dd></dl>

</div>
</div>
<a class="anchor" id="aed57d181c985b2e7c6066efe49c180a7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::pair&lt;bool,long&gt; shibsp::ServiceProvider::doHandler </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00053.html">SPRequest</a> &amp;&#160;</td>
          <td class="paramname"><em>request</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>Services requests for registered <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a> locations. </p>
<p>If the return value's first member is true, then request processing should terminate with the second member as a status value. If false, processing can continue.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request interface </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pair containing a "request completed" indicator and a server-specific response code </dd></dl>

</div>
</div>
<a class="anchor" id="a30e5926df9feb046b8cf368f64de4500"></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="a00004.html">Application</a>* shibsp::ServiceProvider::getApplication </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>applicationId</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns an <a class="el" href="a00004.html" title="Interface to a Shibboleth Application instance. ">Application</a> instance matching the specified ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">applicationId</td><td>the ID of the application, or nullptr for the default </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to the application, or nullptr </dd></dl>

</div>
</div>
<a class="anchor" id="ac069edab095a0fd068751ac0c54be5b6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00026.html">ListenerService</a>* shibsp::ServiceProvider::getListenerService </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>required</em> = <code>true</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a <a class="el" href="a00026.html" title="Interface to a remoting engine. ">ListenerService</a> instance. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">required</td><td>true iff an exception should be thrown if no <a class="el" href="a00026.html" title="Interface to a remoting engine. ">ListenerService</a> is available </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00026.html" title="Interface to a remoting engine. ">ListenerService</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a584e99b042d5a2c235bf4ba5911cd57b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual const std::vector&lt;const opensaml::SecurityPolicyRule*&gt;&amp; shibsp::ServiceProvider::getPolicyRules </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="a00134.html#_deprecated000010">Deprecated:</a></b></dt><dd>Returns the security policy rules for an identified policy.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>identifies the policy to return, or nullptr for default </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an array of policy rules </dd></dl>

</div>
</div>
<a class="anchor" id="a3e191c35670de9e67d685fe36e795478"></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="a00034.html">PropertySet</a>* shibsp::ServiceProvider::getPolicySettings </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="a00134.html#_deprecated000009">Deprecated:</a></b></dt><dd>Returns the security policy settings for an identified policy.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>identifies the policy to return, or nullptr for default </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00034.html" title="Interface to a generic set of typed properties or a DOM container of additional data. ">PropertySet</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a5af9b4d49871c0c350d1ad7e6935228d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00038.html">RequestMapper</a>* shibsp::ServiceProvider::getRequestMapper </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>required</em> = <code>true</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a <a class="el" href="a00038.html" title="Interface to a request mapping plugin. ">RequestMapper</a> instance. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">required</td><td>true iff an exception should be thrown if no <a class="el" href="a00038.html" title="Interface to a request mapping plugin. ">RequestMapper</a> is available </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00038.html" title="Interface to a request mapping plugin. ">RequestMapper</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a1ff3e3ab8ebd26a0380e3da5b5b8fddb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00043.html">SecurityPolicyProvider</a>* shibsp::ServiceProvider::getSecurityPolicyProvider </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>required</em> = <code>true</code></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>Returns a <a class="el" href="a00043.html" title="Interface to a source of security policy settings and rules. ">SecurityPolicyProvider</a> instance. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">required</td><td>true iff an exception should be thrown if no <a class="el" href="a00043.html" title="Interface to a source of security policy settings and rules. ">SecurityPolicyProvider</a> is available </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00043.html" title="Interface to a source of security policy settings and rules. ">SecurityPolicyProvider</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ae643c5739dead0089ba9066973a3be61"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00046.html">SessionCache</a>* shibsp::ServiceProvider::getSessionCache </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>required</em> = <code>true</code></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a <a class="el" href="a00046.html" title="Creates and manages user sessions. ">SessionCache</a> instance. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">required</td><td>true iff an exception should be thrown if no <a class="el" href="a00046.html" title="Creates and manages user sessions. ">SessionCache</a> is available </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00046.html" title="Creates and manages user sessions. ">SessionCache</a> </dd></dl>

</div>
</div>
<a class="anchor" id="abbef140b64c3fa92f13851d027809d43"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual xmltooling::StorageService* shibsp::ServiceProvider::getStorageService </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a StorageService instance based on an ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">id</td><td>a nullptr-terminated key identifying the StorageService to the configuration </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a StorageService if available, or nullptr </dd></dl>

</div>
</div>
<a class="anchor" id="aa0bf32bb5aae48f1b0c9fb1d89964414"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00055.html">TransactionLog</a>* shibsp::ServiceProvider::getTransactionLog </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a <a class="el" href="a00055.html" title="Interface to a synchronized event/audit logging object. ">TransactionLog</a> instance. </p>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00055.html" title="Interface to a synchronized event/audit logging object. ">TransactionLog</a> instance </dd></dl>

</div>
</div>
<a class="anchor" id="a2d3027d17ebc82004633f253be2a48a0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void shibsp::ServiceProvider::init </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Loads a configuration and prepares the instance for use. </p>
<p>Implemented as a separate method so that services can rely on other services while they initialize by accessing the <a class="el" href="a00044.html" title="Interface to a Shibboleth ServiceProvider instance. ">ServiceProvider</a> from the <a class="el" href="a00052.html" title="Singleton object that manages library startup/shutdown. ">SPConfig</a> singleton. </p>

</div>
</div>
<a class="anchor" id="a8849372251e3a794e85c00accc9f2d5c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00036.html">Remoted</a>* shibsp::ServiceProvider::lookupListener </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>address</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>Returns current service registered at an address, if any. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">address</td><td>message address to access </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>registered service, or nullptr </dd></dl>

</div>
</div>
<a class="anchor" id="a365ad6b81c88e2c964a9e71cdce79b07"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00036.html">Remoted</a>* shibsp::ServiceProvider::regListener </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00036.html">Remoted</a> *&#160;</td>
          <td class="paramname"><em>svc</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></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>Register for a message. </p>
<p>Returns existing remote service, allowing message hooking.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">address</td><td>message address to register </td></tr>
    <tr><td class="paramname">svc</td><td>pointer to remote service </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>previous service registered for message, if any </dd></dl>

</div>
</div>
<a class="anchor" id="a46d4525b9a0995197c29485ec376fec3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool shibsp::ServiceProvider::setTransportOptions </td>
          <td>(</td>
          <td class="paramtype">xmltooling::SOAPTransport &amp;&#160;</td>
          <td class="paramname"><em>transport</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets implementation-specific transport options. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">transport</td><td>a SOAPTransport object </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true iff all options were successfully set </dd></dl>

</div>
</div>
<a class="anchor" id="a0326331381dee225efaef895d49ae085"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool shibsp::ServiceProvider::unregListener </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>address</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00036.html">Remoted</a> *&#160;</td>
          <td class="paramname"><em>current</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00036.html">Remoted</a> *&#160;</td>
          <td class="paramname"><em>restore</em> = <code>nullptr</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></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>Unregisters service from an address, possibly restoring an original. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">address</td><td>message address to modify </td></tr>
    <tr><td class="paramname">current</td><td>pointer to unregistering service </td></tr>
    <tr><td class="paramname">restore</td><td>service to "restore" registration for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true iff the current service was still registered </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="abc137878b03cc1428d7d2c56fd3bf426"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::set&lt;std::string&gt; shibsp::ServiceProvider::m_authTypes</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>The AuthTypes to "recognize" (defaults to "shibboleth"). </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>shibsp/<a class="el" href="a00107.html">ServiceProvider.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="a00127.html">shibsp</a></li><li class="navelem"><a class="el" href="a00044.html">ServiceProvider</a></li>
    <li class="footer">Generated on Thu Dec 5 2013 22:10:44 for shibboleth-2.5.3 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>