Sophie

Sophie

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

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::SessionInitiator 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('a00048.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pro-static-attribs">Static Protected Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="a00168.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">shibsp::SessionInitiator Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>Pluggable runtime functionality that handles initiating sessions.  
 <a href="a00048.html#details">More...</a></p>

<p><code>#include &lt;shibsp/handler/SessionInitiator.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for shibsp::SessionInitiator:</div>
<div class="dyncontent">
 <div class="center">
  <img src="a00048.png" usemap="#shibsp::SessionInitiator_map" alt=""/>
  <map id="shibsp::SessionInitiator_map" name="shibsp::SessionInitiator_map">
<area href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. " alt="shibsp::Handler" shape="rect" coords="0,56,139,80"/>
<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="0,0,139,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:a1c6e77561db8272490e82e8624723cc5"><td class="memItemLeft" align="right" valign="top">virtual const std::set<br class="typebreak"/>
&lt; std::string &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#a1c6e77561db8272490e82e8624723cc5">getSupportedOptions</a> () const </td></tr>
<tr class="memdesc:a1c6e77561db8272490e82e8624723cc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates the set of optional settings supported by the handler.  <a href="#a1c6e77561db8272490e82e8624723cc5">More...</a><br/></td></tr>
<tr class="separator:a1c6e77561db8272490e82e8624723cc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad98e5165882eec3c4056ab73ab5a1032"><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="a00048.html#ad98e5165882eec3c4056ab73ab5a1032">run</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request, std::string &amp;entityID, bool isHandler=true) const =0</td></tr>
<tr class="memdesc:ad98e5165882eec3c4056ab73ab5a1032"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes an incoming request.  <a href="#ad98e5165882eec3c4056ab73ab5a1032">More...</a><br/></td></tr>
<tr class="separator:ad98e5165882eec3c4056ab73ab5a1032"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a058a484e9f41cbb503843f655d6a5154"><td class="memItemLeft" align="right" valign="top">std::pair&lt; bool, long &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#a058a484e9f41cbb503843f655d6a5154">run</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request, bool isHandler=true) const </td></tr>
<tr class="memdesc:a058a484e9f41cbb503843f655d6a5154"><td class="mdescLeft">&#160;</td><td class="mdescRight">Executes handler functionality as an incoming request.  <a href="#a058a484e9f41cbb503843f655d6a5154">More...</a><br/></td></tr>
<tr class="separator:a058a484e9f41cbb503843f655d6a5154"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63287bb4f425c509bd03b4cc88748f92"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#a63287bb4f425c509bd03b4cc88748f92">getType</a> () const </td></tr>
<tr class="memdesc:a63287bb4f425c509bd03b4cc88748f92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the "type" of the <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a> plugin.  <a href="#a63287bb4f425c509bd03b4cc88748f92">More...</a><br/></td></tr>
<tr class="separator:a63287bb4f425c509bd03b4cc88748f92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af62565523f4798c3ca556925521069dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#af62565523f4798c3ca556925521069dc">generateMetadata</a> (opensaml::saml2md::SPSSODescriptor &amp;role, const char *handlerURL) const </td></tr>
<tr class="memdesc:af62565523f4798c3ca556925521069dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates and/or modifies metadata reflecting the <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a>.  <a href="#af62565523f4798c3ca556925521069dc">More...</a><br/></td></tr>
<tr class="separator:af62565523f4798c3ca556925521069dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98121f0e9c4336ba0e172c75bda80596"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#a98121f0e9c4336ba0e172c75bda80596">doGenerateMetadata</a> (opensaml::saml2md::SPSSODescriptor &amp;role, const char *handlerURL) const </td></tr>
<tr class="memdesc:a98121f0e9c4336ba0e172c75bda80596"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates RequestInitiator metadata when instructed.  <a href="#a98121f0e9c4336ba0e172c75bda80596">More...</a><br/></td></tr>
<tr class="separator:a98121f0e9c4336ba0e172c75bda80596"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_a00024"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00024')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="a00024.html">shibsp::Handler</a></td></tr>
<tr class="memitem:ae4ee079fa0ddab026383ff95ae521390 inherit pub_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual const XMLCh *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#ae4ee079fa0ddab026383ff95ae521390">getProtocolFamily</a> () const </td></tr>
<tr class="memdesc:ae4ee079fa0ddab026383ff95ae521390 inherit pub_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an identifier for the protocol family associated with the handler, if any.  <a href="#ae4ee079fa0ddab026383ff95ae521390">More...</a><br/></td></tr>
<tr class="separator:ae4ee079fa0ddab026383ff95ae521390 inherit pub_methods_a00024"><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-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a16e44de284ac824172aa777bd70d58dc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#a16e44de284ac824172aa777bd70d58dc">checkCompatibility</a> (<a class="el" href="a00053.html">SPRequest</a> &amp;request, bool isHandler) const </td></tr>
<tr class="memdesc:a16e44de284ac824172aa777bd70d58dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Examines the request and applicable settings to determine whether the handler is able to support the request.  <a href="#a16e44de284ac824172aa777bd70d58dc">More...</a><br/></td></tr>
<tr class="separator:a16e44de284ac824172aa777bd70d58dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8b33f7132c14f7f50cbd2e9b5dcdc7b"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00012.html">AuthnRequestEvent</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#ae8b33f7132c14f7f50cbd2e9b5dcdc7b">newAuthnRequestEvent</a> (const <a class="el" href="a00004.html">Application</a> &amp;application, const xmltooling::HTTPRequest *request=nullptr) const </td></tr>
<tr class="memdesc:ae8b33f7132c14f7f50cbd2e9b5dcdc7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new <a class="el" href="a00012.html">AuthnRequestEvent</a> for the event log.  <a href="#ae8b33f7132c14f7f50cbd2e9b5dcdc7b">More...</a><br/></td></tr>
<tr class="separator:ae8b33f7132c14f7f50cbd2e9b5dcdc7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_a00024"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_a00024')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="a00024.html">shibsp::Handler</a></td></tr>
<tr class="memitem:a75f25851a0b3a0b19751e3392c375689 inherit pro_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a75f25851a0b3a0b19751e3392c375689">log</a> (<a class="el" href="a00053.html#a20701bedd21eab2b73de90cb364535a1">SPRequest::SPLogLevel</a> level, const std::string &amp;msg) const </td></tr>
<tr class="memdesc:a75f25851a0b3a0b19751e3392c375689 inherit pro_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Log using handler's specific logging object.  <a href="#a75f25851a0b3a0b19751e3392c375689">More...</a><br/></td></tr>
<tr class="separator:a75f25851a0b3a0b19751e3392c375689 inherit pro_methods_a00024"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c78dee1e5d3f4e8e6b3669dbaadf90c inherit pro_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a8c78dee1e5d3f4e8e6b3669dbaadf90c">cleanRelayState</a> (const <a class="el" href="a00004.html">Application</a> &amp;application, const xmltooling::HTTPRequest &amp;request, xmltooling::HTTPResponse &amp;response) const </td></tr>
<tr class="memdesc:a8c78dee1e5d3f4e8e6b3669dbaadf90c inherit pro_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prevents unused relay state from building up by cleaning old state from the client.  <a href="#a8c78dee1e5d3f4e8e6b3669dbaadf90c">More...</a><br/></td></tr>
<tr class="separator:a8c78dee1e5d3f4e8e6b3669dbaadf90c inherit pro_methods_a00024"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a706aab1f40db95dbb72aa3e6910c905c inherit pro_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a706aab1f40db95dbb72aa3e6910c905c">preserveRelayState</a> (const <a class="el" href="a00004.html">Application</a> &amp;application, xmltooling::HTTPResponse &amp;response, std::string &amp;relayState) const </td></tr>
<tr class="memdesc:a706aab1f40db95dbb72aa3e6910c905c inherit pro_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements various mechanisms to preserve RelayState, such as cookies or StorageService-backed keys.  <a href="#a706aab1f40db95dbb72aa3e6910c905c">More...</a><br/></td></tr>
<tr class="separator:a706aab1f40db95dbb72aa3e6910c905c inherit pro_methods_a00024"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93c03331411ecd033f6f9d118e8eea3c inherit pro_methods_a00024"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00024.html#a93c03331411ecd033f6f9d118e8eea3c">recoverRelayState</a> (const <a class="el" href="a00004.html">Application</a> &amp;application, const xmltooling::HTTPRequest &amp;request, xmltooling::HTTPResponse &amp;response, std::string &amp;relayState, bool clear=true) const </td></tr>
<tr class="memdesc:a93c03331411ecd033f6f9d118e8eea3c inherit pro_methods_a00024"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements various mechanisms to recover RelayState, such as cookies or StorageService-backed keys.  <a href="#a93c03331411ecd033f6f9d118e8eea3c">More...</a><br/></td></tr>
<tr class="separator:a93c03331411ecd033f6f9d118e8eea3c inherit pro_methods_a00024"><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:acf1923f8f7815ca1aa24fd0f6bed5ff2"><td class="memItemLeft" align="right" valign="top">std::set&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#acf1923f8f7815ca1aa24fd0f6bed5ff2">m_supportedOptions</a></td></tr>
<tr class="memdesc:acf1923f8f7815ca1aa24fd0f6bed5ff2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set of optional settings supported by handler.  <a href="#acf1923f8f7815ca1aa24fd0f6bed5ff2">More...</a><br/></td></tr>
<tr class="separator:acf1923f8f7815ca1aa24fd0f6bed5ff2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-attribs"></a>
Static Protected Attributes</h2></td></tr>
<tr class="memitem:aa5f2053d8e66f160305c0dd9eb41de45"><td class="memItemLeft" align="right" valign="top">static std::map&lt; std::string, <br class="typebreak"/>
std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#aa5f2053d8e66f160305c0dd9eb41de45">m_remapper</a></td></tr>
<tr class="memdesc:aa5f2053d8e66f160305c0dd9eb41de45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Property remapper for configuration compatibility.  <a href="#aa5f2053d8e66f160305c0dd9eb41de45">More...</a><br/></td></tr>
<tr class="separator:aa5f2053d8e66f160305c0dd9eb41de45"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a98a672bf9192277810ae46344a6e0df0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00048.html#a98a672bf9192277810ae46344a6e0df0">registerSessionInitiators</a> ()</td></tr>
<tr class="memdesc:a98a672bf9192277810ae46344a6e0df0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers <a class="el" href="a00048.html" title="Pluggable runtime functionality that handles initiating sessions. ">SessionInitiator</a> implementations.  <a href="#a98a672bf9192277810ae46344a6e0df0">More...</a><br/></td></tr>
<tr class="separator:a98a672bf9192277810ae46344a6e0df0"><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>Pluggable runtime functionality that handles initiating sessions. </p>
<p>By default, SessionInitiators look for an entityID on the incoming request and pass control to the specialized run method. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a16e44de284ac824172aa777bd70d58dc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool shibsp::SessionInitiator::checkCompatibility </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>isHandler</em>&#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">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Examines the request and applicable settings to determine whether the handler is able to support the request. </p>
<p>If the handler is within a chain, the method will return false, otherwise an exception will be raised.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request context </td></tr>
    <tr><td class="paramname">isHandler</td><td>true iff executing in the context of a direct handler invocation </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true iff the request appears to be compatible </dd></dl>

</div>
</div>
<a class="anchor" id="a98121f0e9c4336ba0e172c75bda80596"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void shibsp::SessionInitiator::doGenerateMetadata </td>
          <td>(</td>
          <td class="paramtype">opensaml::saml2md::SPSSODescriptor &amp;&#160;</td>
          <td class="paramname"><em>role</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>handlerURL</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generates RequestInitiator metadata when instructed. </p>
<p>Allows subclasses to decide whether it's appropriate to do so instead of requiring them to override the method to stop it.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">role</td><td>role object to inject metadata into </td></tr>
    <tr><td class="paramname">handlerURL</td><td>base of endpoint to generate metadata with </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af62565523f4798c3ca556925521069dc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void shibsp::SessionInitiator::generateMetadata </td>
          <td>(</td>
          <td class="paramtype">opensaml::saml2md::SPSSODescriptor &amp;&#160;</td>
          <td class="paramname"><em>role</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>handlerURL</em>&#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>Generates and/or modifies metadata reflecting the <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a>. </p>
<p>The default implementation does nothing.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">role</td><td>metadata role to decorate </td></tr>
    <tr><td class="paramname">handlerURL</td><td>base location of handler's endpoint </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented from <a class="el" href="a00024.html#a5cab4d84f3b4ba8a7c5d2c645bf236bc">shibsp::Handler</a>.</p>

</div>
</div>
<a class="anchor" id="a1c6e77561db8272490e82e8624723cc5"></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::set&lt;std::string&gt;&amp; shibsp::SessionInitiator::getSupportedOptions </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">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates the set of optional settings supported by the handler. </p>
<dl class="section return"><dt>Returns</dt><dd>a set of the optional settings supported </dd></dl>

</div>
</div>
<a class="anchor" id="a63287bb4f425c509bd03b4cc88748f92"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* shibsp::SessionInitiator::getType </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">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the "type" of the <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a> plugin. </p>
<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="a00024.html" title="Pluggable runtime functionality that implement protocols and services. ">Handler</a> type </dd></dl>

<p>Reimplemented from <a class="el" href="a00024.html#a758202b21a519e66f26d0b786dda89c3">shibsp::Handler</a>.</p>

</div>
</div>
<a class="anchor" id="ae8b33f7132c14f7f50cbd2e9b5dcdc7b"></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="a00012.html">AuthnRequestEvent</a>* shibsp::SessionInitiator::newAuthnRequestEvent </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00004.html">Application</a> &amp;&#160;</td>
          <td class="paramname"><em>application</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const xmltooling::HTTPRequest *&#160;</td>
          <td class="paramname"><em>request</em> = <code>nullptr</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">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Creates a new <a class="el" href="a00012.html">AuthnRequestEvent</a> for the event log. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">application</td><td>the <a class="el" href="a00004.html" title="Interface to a Shibboleth Application instance. ">Application</a> associated with the event </td></tr>
    <tr><td class="paramname">request</td><td>the HTTP client request associated with the event, or nullptr </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a fresh <a class="el" href="a00012.html">AuthnRequestEvent</a>, prepopulated by the input parameters, or nullptr if an error occurs </dd></dl>

</div>
</div>
<a class="anchor" id="ad98e5165882eec3c4056ab73ab5a1032"></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::SessionInitiator::run </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">std::string &amp;&#160;</td>
          <td class="paramname"><em>entityID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>isHandler</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">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Executes an incoming request. </p>
<p>SessionInitiators can be run either directly by incoming web requests or indirectly/implicitly during other SP processing.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request context </td></tr>
    <tr><td class="paramname">entityID</td><td>the name of an IdP to request a session from, if known </td></tr>
    <tr><td class="paramname">isHandler</td><td>true iff executing in the context of a direct handler invocation </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="a058a484e9f41cbb503843f655d6a5154"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::pair&lt;bool,long&gt; shibsp::SessionInitiator::run </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>isHandler</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>Executes handler functionality as an incoming request. </p>
<p>Handlers can be run either directly by incoming web requests or indirectly/implicitly during other SP processing.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">request</td><td>SP request context </td></tr>
    <tr><td class="paramname">isHandler</td><td>true iff executing in the context of a direct handler invocation </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>

<p>Implements <a class="el" href="a00024.html#a8c31d112d1dceeb50cab16aa7d6b3294">shibsp::Handler</a>.</p>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a class="anchor" id="a98a672bf9192277810ae46344a6e0df0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void registerSessionInitiators </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Registers <a class="el" href="a00048.html" title="Pluggable runtime functionality that handles initiating sessions. ">SessionInitiator</a> implementations. </p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="aa5f2053d8e66f160305c0dd9eb41de45"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::map&lt;std::string,std::string&gt; shibsp::SessionInitiator::m_remapper</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Property remapper for configuration compatibility. </p>

</div>
</div>
<a class="anchor" id="acf1923f8f7815ca1aa24fd0f6bed5ff2"></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::SessionInitiator::m_supportedOptions</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>Set of optional settings supported by handler. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>shibsp/handler/<a class="el" href="a00092.html">SessionInitiator.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="a00048.html">SessionInitiator</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>