aboutsummaryrefslogtreecommitdiff
path: root/libcontextsubscriber/doc/html/class_info_xml_backend.html
diff options
context:
space:
mode:
Diffstat (limited to 'libcontextsubscriber/doc/html/class_info_xml_backend.html')
-rw-r--r--libcontextsubscriber/doc/html/class_info_xml_backend.html552
1 files changed, 552 insertions, 0 deletions
diff --git a/libcontextsubscriber/doc/html/class_info_xml_backend.html b/libcontextsubscriber/doc/html/class_info_xml_backend.html
new file mode 100644
index 00000000..3a0a8380
--- /dev/null
+++ b/libcontextsubscriber/doc/html/class_info_xml_backend.html
@@ -0,0 +1,552 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>libcontextsubscriber: InfoXmlBackend Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&nbsp;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 class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>InfoXmlBackend Class Reference</h1><!-- doxytag: class="InfoXmlBackend" --><!-- doxytag: inherits="InfoBackend" -->Implements the <a class="el" href="class_info_backend.html" title="An abstract (pure virtual) singleton class that represents the actual registry backend...">InfoBackend</a> for reading data from a directory with xml files.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="infoxmlbackend_8h-source.html">infoxmlbackend.h</a>&gt;</code>
+<p>
+
+<p>
+<a href="class_info_xml_backend-members.html">List of all members.</a><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 class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#85f5bb72b4841d7012ff63bd7627f2d0">InfoXmlBackend</a> (QObject *parent=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#83ac8d65786de855c402b426222ab72b">name</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns 'xml'. <a href="#83ac8d65786de855c402b426222ab72b"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#74d2b52119a26ca60203ecf86721e38c">listKeys</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the list of all the keys in the registry. <a href="#74d2b52119a26ca60203ecf86721e38c"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#bbc6af5d0b8d3f84892aacec96d81115">listKeysForPlugin</a> (QString plugin) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the list of all the keys in the registry provided by the given <em>plugin</em>. <a href="#bbc6af5d0b8d3f84892aacec96d81115"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#e7d37fb8deb9b6a091a581518961c8f9">listPlugins</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a list of all the unique plugins in the database. <a href="#e7d37fb8deb9b6a091a581518961c8f9"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#184e0e51db9b59a05cb8267206064e58">typeForKey</a> (QString key) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a type for the given <em>key</em>. <a href="#184e0e51db9b59a05cb8267206064e58"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#3b0753cd69c99c2fe188e7fd912a072a">docForKey</a> (QString key) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the documentation for the given <em>key</em> name. <a href="#3b0753cd69c99c2fe188e7fd912a072a"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#b17ce57cefbde9ce03cb9c8fb7b24233">pluginForKey</a> (QString key) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the constructor plugin name for the given <em>key</em> name. <a href="#b17ce57cefbde9ce03cb9c8fb7b24233"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#e57d73cd8bfd7e39e21369bfa2d955dc">constructionStringForKey</a> (QString key) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the constructor plugin parameter for the given <em>key</em> name. <a href="#e57d73cd8bfd7e39e21369bfa2d955dc"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#420f60c8530678652e8512ee5087505a">keyExists</a> (QString key) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the given key exists. <a href="#420f60c8530678652e8512ee5087505a"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#489cbfb1dd6c35f2200f00898f16a80b">keyProvided</a> (QString key) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the given key is provided (i.e., not a core property which nobody provides currently). <a href="#489cbfb1dd6c35f2200f00898f16a80b"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#eba0f378c01b6740c53ea977c10947b0">registryPath</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the full path to the registry directory. <a href="#eba0f378c01b6740c53ea977c10947b0"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#e919a19ac7fc38f60048b900d49c41d5">coreDeclPath</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the full path to the core property declaration file. <a href="#e919a19ac7fc38f60048b900d49c41d5"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#edf432bc14783ab4e9f2858a088e0643">onDirectoryChanged</a> (const QString &amp;path)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when the registry directory changed (ie. <a href="#edf432bc14783ab4e9f2858a088e0643"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#b2155f5c965bc1249987f6ae942d004b">onFileChanged</a> (const QString &amp;path)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when one of the parsed XML files changed. <a href="#b2155f5c965bc1249987f6ae942d004b"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#1407eccac5cb06f88fc6014d4ee25f48">regenerateKeyDataList</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clears all the stored data about the registry and parses it all over again. <a href="#1407eccac5cb06f88fc6014d4ee25f48"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#b5d85a566993462042838c786700f7f8">readKeyDataFromXml</a> (const QString &amp;path)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parses a given <em>path</em> file and adds it's contents to the hash. <a href="#b5d85a566993462042838c786700f7f8"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QFileSystemWatcher&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#6ed00727580f66f06f33ecdb2a7581e7">watcher</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A watched object obsering the database file. Delivers synced notifications. <a href="#6ed00727580f66f06f33ecdb2a7581e7"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QHash&lt; QString, <a class="el" href="struct_info_key_data.html">InfoKeyData</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#60f512bdb81310502e5d80c2b738d513">keyDataHash</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This hash contains the full state of registry in memory. <a href="#60f512bdb81310502e5d80c2b738d513"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_xml_backend.html#c61fad8518de174500caaaa278bf1672">countOfFilesInLastParse</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of xml files we parsed in last registry update. <a href="#c61fad8518de174500caaaa278bf1672"></a><br></td></tr>
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Implements the <a class="el" href="class_info_backend.html" title="An abstract (pure virtual) singleton class that represents the actual registry backend...">InfoBackend</a> for reading data from a directory with xml files.
+<p>
+This class is not exported in the public API. It keeps all the data cached in the memory. It's assumed that this backend is not going to be used live in production systems and does not need to be ultra-fast (instead, implementation simplicity and corectness are preffered). For fast backend see the <a class="el" href="class_info_cdb_backend.html" title="Implements the InfoBackend for reading data from a cdb database.">InfoCdbBackend</a>. <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="85f5bb72b4841d7012ff63bd7627f2d0"></a><!-- doxytag: member="InfoXmlBackend::InfoXmlBackend" ref="85f5bb72b4841d7012ff63bd7627f2d0" args="(QObject *parent=0)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">InfoXmlBackend::InfoXmlBackend </td>
+ <td>(</td>
+ <td class="paramtype">QObject *&nbsp;</td>
+ <td class="paramname"> <em>parent</em> = <code>0</code> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [explicit]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="e57d73cd8bfd7e39e21369bfa2d955dc"></a><!-- doxytag: member="InfoXmlBackend::constructionStringForKey" ref="e57d73cd8bfd7e39e21369bfa2d955dc" args="(QString key) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::constructionStringForKey </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>key</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the constructor plugin parameter for the given <em>key</em> name.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#c17400d1938aefe60003970f9a227736">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="e919a19ac7fc38f60048b900d49c41d5"></a><!-- doxytag: member="InfoXmlBackend::coreDeclPath" ref="e919a19ac7fc38f60048b900d49c41d5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::coreDeclPath </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the full path to the core property declaration file.
+<p>
+Takes the <code>CONTEXT_CORE_DECLARATIONS</code> env variable into account.
+</div>
+</div><p>
+<a class="anchor" name="3b0753cd69c99c2fe188e7fd912a072a"></a><!-- doxytag: member="InfoXmlBackend::docForKey" ref="3b0753cd69c99c2fe188e7fd912a072a" args="(QString key) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::docForKey </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>key</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the documentation for the given <em>key</em> name.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#f90947cb65d219d1f703683a471f649d">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="420f60c8530678652e8512ee5087505a"></a><!-- doxytag: member="InfoXmlBackend::keyExists" ref="420f60c8530678652e8512ee5087505a" args="(QString key) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool InfoXmlBackend::keyExists </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>key</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns true if the given key exists.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#2b1cff4b8da77ad9c6a449a082e4e8d3">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="489cbfb1dd6c35f2200f00898f16a80b"></a><!-- doxytag: member="InfoXmlBackend::keyProvided" ref="489cbfb1dd6c35f2200f00898f16a80b" args="(QString key) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool InfoXmlBackend::keyProvided </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>key</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns true if the given key is provided (i.e., not a core property which nobody provides currently).
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#3815a2002ddbe61a310e410e3b0b18db">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="74d2b52119a26ca60203ecf86721e38c"></a><!-- doxytag: member="InfoXmlBackend::listKeys" ref="74d2b52119a26ca60203ecf86721e38c" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList InfoXmlBackend::listKeys </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the list of all the keys in the registry.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#b982301f28a9655255683ad66c8f0c95">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="bbc6af5d0b8d3f84892aacec96d81115"></a><!-- doxytag: member="InfoXmlBackend::listKeysForPlugin" ref="bbc6af5d0b8d3f84892aacec96d81115" args="(QString plugin) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList InfoXmlBackend::listKeysForPlugin </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>plugin</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the list of all the keys in the registry provided by the given <em>plugin</em>.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#6c0b6cff216c74c960e1874838cdce18">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="e7d37fb8deb9b6a091a581518961c8f9"></a><!-- doxytag: member="InfoXmlBackend::listPlugins" ref="e7d37fb8deb9b6a091a581518961c8f9" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList InfoXmlBackend::listPlugins </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns a list of all the unique plugins in the database.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#493ee85a165bf228418fddc3cbb8182f">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="83ac8d65786de855c402b426222ab72b"></a><!-- doxytag: member="InfoXmlBackend::name" ref="83ac8d65786de855c402b426222ab72b" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::name </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns 'xml'.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#fa40871167e96ccc256e33b79a628ed3">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="edf432bc14783ab4e9f2858a088e0643"></a><!-- doxytag: member="InfoXmlBackend::onDirectoryChanged" ref="edf432bc14783ab4e9f2858a088e0643" args="(const QString &amp;path)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void InfoXmlBackend::onDirectoryChanged </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>path</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Called when the registry directory changed (ie.
+<p>
+file removed or added). Triggers a whole registry rebuild + signal emissions. It detects a situation when a added/removed file was not a parsed(xml) file.
+</div>
+</div><p>
+<a class="anchor" name="b2155f5c965bc1249987f6ae942d004b"></a><!-- doxytag: member="InfoXmlBackend::onFileChanged" ref="b2155f5c965bc1249987f6ae942d004b" args="(const QString &amp;path)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void InfoXmlBackend::onFileChanged </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>path</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Called when one of the parsed XML files changed.
+<p>
+This triggers a whole registry rebuild + signal emissions.
+</div>
+</div><p>
+<a class="anchor" name="b17ce57cefbde9ce03cb9c8fb7b24233"></a><!-- doxytag: member="InfoXmlBackend::pluginForKey" ref="b17ce57cefbde9ce03cb9c8fb7b24233" args="(QString key) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::pluginForKey </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>key</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the constructor plugin name for the given <em>key</em> name.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#938e15b64e75dfbeebad49c58049ff30">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="b5d85a566993462042838c786700f7f8"></a><!-- doxytag: member="InfoXmlBackend::readKeyDataFromXml" ref="b5d85a566993462042838c786700f7f8" args="(const QString &amp;path)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void InfoXmlBackend::readKeyDataFromXml </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>path</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Parses a given <em>path</em> file and adds it's contents to the hash.
+<p>
+Also adds the file to the watcher (starts observing it).
+</div>
+</div><p>
+<a class="anchor" name="1407eccac5cb06f88fc6014d4ee25f48"></a><!-- doxytag: member="InfoXmlBackend::regenerateKeyDataList" ref="1407eccac5cb06f88fc6014d4ee25f48" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void InfoXmlBackend::regenerateKeyDataList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Clears all the stored data about the registry and parses it all over again.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="eba0f378c01b6740c53ea977c10947b0"></a><!-- doxytag: member="InfoXmlBackend::registryPath" ref="eba0f378c01b6740c53ea977c10947b0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::registryPath </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the full path to the registry directory.
+<p>
+Takes the <code>CONTEXT_PROVIDERS</code> env variable into account.
+</div>
+</div><p>
+<a class="anchor" name="184e0e51db9b59a05cb8267206064e58"></a><!-- doxytag: member="InfoXmlBackend::typeForKey" ref="184e0e51db9b59a05cb8267206064e58" args="(QString key) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString InfoXmlBackend::typeForKey </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>key</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns a type for the given <em>key</em>.
+<p>
+
+<p>Implements <a class="el" href="class_info_backend.html#accf0ff06a36c5f8edaab3013eaf8315">InfoBackend</a>.</p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="c61fad8518de174500caaaa278bf1672"></a><!-- doxytag: member="InfoXmlBackend::countOfFilesInLastParse" ref="c61fad8518de174500caaaa278bf1672" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="class_info_xml_backend.html#c61fad8518de174500caaaa278bf1672">InfoXmlBackend::countOfFilesInLastParse</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The number of xml files we parsed in last registry update.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="60f512bdb81310502e5d80c2b738d513"></a><!-- doxytag: member="InfoXmlBackend::keyDataHash" ref="60f512bdb81310502e5d80c2b738d513" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QHash&lt;QString, <a class="el" href="struct_info_key_data.html">InfoKeyData</a>&gt; <a class="el" href="class_info_xml_backend.html#60f512bdb81310502e5d80c2b738d513">InfoXmlBackend::keyDataHash</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This hash contains the full state of registry in memory.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="6ed00727580f66f06f33ecdb2a7581e7"></a><!-- doxytag: member="InfoXmlBackend::watcher" ref="6ed00727580f66f06f33ecdb2a7581e7" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QFileSystemWatcher <a class="el" href="class_info_xml_backend.html#6ed00727580f66f06f33ecdb2a7581e7">InfoXmlBackend::watcher</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+A watched object obsering the database file. Delivers synced notifications.
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="infoxmlbackend_8h-source.html">infoxmlbackend.h</a><li><a class="el" href="infoxmlbackend_8cpp.html">infoxmlbackend.cpp</a></ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Mon Sep 21 16:36:35 2009 for libcontextsubscriber by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>