1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>XML-Security-C: XSECURIResolver Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.2 -->
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div>
<h1>XSECURIResolver Class Reference<br>
<small>
[<a class="el" href="group__pubsig.html">Main Signature API</a>]</small>
</h1><code>#include <<a class="el" href="XSECURIResolver_8hpp-source.html">XSECURIResolver.hpp</a>></code>
<p>
Inheritance diagram for XSECURIResolver:<p><center><img src="classXSECURIResolver__inherit__graph.png" border="0" usemap="#XSECURIResolver__inherit__map" alt="Inheritance graph"></center>
<map name="XSECURIResolver__inherit__map">
<area href="classXSECURIResolverGenericUnix.html" shape="rect" coords="8,83,216,107" alt="">
<area href="classXSECURIResolverGenericWin32.html" shape="rect" coords="240,83,458,107" alt="">
<area href="classXSECURIResolverXerces.html" shape="rect" coords="482,83,658,107" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classXSECURIResolver-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Interface class for resolving URIs.
<p>
The XML Digital Signature standard makes heavy use of URIs to identify information to be referenced and signed.<p>
The library internally handles reference URIs within the document that contains the signature, but uses URIResolver classes to dereference a URI into a byte stream that can then be processed.<p>
The interface class allows others to re-implement and install their own resolves according to their needs. The basic implementations found in the library are just that - very basic. Enough to do the job for interoperability testing, but not enough to provide robustness in a major application.
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Constructors and Destructors</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classXSECURIResolver.html#z208_0">XSECURIResolver</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classXSECURIResolver.html#z208_1">~XSECURIResolver</a> ()</td></tr>
<tr><td colspan="2"><div class="groupHeader">Interface Methods</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual XERCES_CPP_NAMESPACE_QUALIFIER <br>
BinInputStream * </td><td class="memItemRight" valign="bottom"><a class="el" href="classXSECURIResolver.html#z209_0">resolveURI</a> (const XMLCh *uri)=0</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a BYTE_STREAM from a URI. <a href="#z209_0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classXSECURIResolver.html">XSECURIResolver</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classXSECURIResolver.html#z209_1">clone</a> (void)=0</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Clone the resolver to be installed in a new object. <a href="#z209_1"></a><br></td></tr>
</table>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="z208_0" doxytag="XSECURIResolver::XSECURIResolver"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">XSECURIResolver::XSECURIResolver </td>
<td class="md" valign="top">( </td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top"> ) </td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
</td>
</tr>
</table>
<a class="anchor" name="z208_1" doxytag="XSECURIResolver::~XSECURIResolver"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual XSECURIResolver::~XSECURIResolver </td>
<td class="md" valign="top">( </td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top"> ) </td>
<td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
</td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="z209_1" doxytag="XSECURIResolver::clone"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual <a class="el" href="classXSECURIResolver.html">XSECURIResolver</a>* XSECURIResolver::clone </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">void </td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top"> ) </td>
<td class="md" nowrap><code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Clone the resolver to be installed in a new object.
<p>
When URIResolvers are passed into signatures and other objects, they are cloned and control of the original object is left with the caller.
<p>
Implemented in <a class="el" href="classXSECURIResolverXerces.html#z211_1">XSECURIResolverXerces</a>, <a class="el" href="classXSECURIResolverGenericUnix.html#z214_1">XSECURIResolverGenericUnix</a>, and <a class="el" href="classXSECURIResolverGenericWin32.html#z217_1">XSECURIResolverGenericWin32</a>. </td>
</tr>
</table>
<a class="anchor" name="z209_0" doxytag="XSECURIResolver::resolveURI"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual XERCES_CPP_NAMESPACE_QUALIFIER BinInputStream* XSECURIResolver::resolveURI </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">const XMLCh * </td>
<td class="mdname1" valign="top" nowrap> <em>uri</em> </td>
<td class="md" valign="top"> ) </td>
<td class="md" nowrap><code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Create a BYTE_STREAM from a URI.
<p>
The resolver is required to take the input URI and dereference it to an actual stream of octets.<p>
The octets are provided back to the library using the Xerces BinInputStream class.<p>
<dl compact><dt><b>Note:</b></dt><dd>The returned stream is "owned" by the caller, which will delete it when processing is complete. </dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>uri</em> </td><td>The string containing the URI to be de-referenced. NULL if this is an anonymous reference. </td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>The octet stream corresponding to the URI. </dd></dl>
<p>
Implemented in <a class="el" href="classXSECURIResolverXerces.html#z211_0">XSECURIResolverXerces</a>, <a class="el" href="classXSECURIResolverGenericUnix.html#z214_0">XSECURIResolverGenericUnix</a>, and <a class="el" href="classXSECURIResolverGenericWin32.html#z217_0">XSECURIResolverGenericWin32</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XSECURIResolver_8hpp-source.html">XSECURIResolver.hpp</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Sun Jul 3 17:46:01 2005 for XML-Security-C by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address>
</body>
</html>
|