aboutsummaryrefslogtreecommitdiff
path: root/libcontextsubscriber/doc/html/updatingcontextproviders.html
diff options
context:
space:
mode:
Diffstat (limited to 'libcontextsubscriber/doc/html/updatingcontextproviders.html')
-rw-r--r--libcontextsubscriber/doc/html/updatingcontextproviders.html44
1 files changed, 44 insertions, 0 deletions
diff --git a/libcontextsubscriber/doc/html/updatingcontextproviders.html b/libcontextsubscriber/doc/html/updatingcontextproviders.html
new file mode 100644
index 00000000..95944dc2
--- /dev/null
+++ b/libcontextsubscriber/doc/html/updatingcontextproviders.html
@@ -0,0 +1,44 @@
+<!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"/>
+<title>libcontextsubscriber: </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.6.1 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<p>The update tool (<code>update-contextkit-providers</code>) is used to regenerate the registry cache database.</p>
+<h2><a class="anchor" id="Overview">
+Overview</a></h2>
+<p>Information about keys and providers is normally stored in a system directory in <b>xml</b> format. The xml (being xml) is slow to parse and not efficient as a storage format for data that is mostly static.</p>
+<p>It makes sense to store a cached version of the xml registry in a constant-database fast-access format and regenerate it when the xml data changes.</p>
+<p>Update tool does exactly that - it reads the xml registry and (re)generates a constant <b>tiny-cdb</b> database containing the cached version of the data in the registry.</p>
+<h2><a class="anchor" id="Usage">
+Usage</a></h2>
+<p>The <code>update-contextkit-providers</code> binary, when launched without parameters, will by default regenerate the database in the default installation prefix. Most likely: <code>"/usr/share/contextkit/providers"</code> . Obviously, for this to be successful, it needs to be launched with proper privileges.</p>
+<p>It's possible to override the registry directory with first parameter:</p>
+<div class="fragment"><pre class="fragment"> $&gt; update-contextkit-providers /some/path/to/registry
+</pre></div><p>In this case the xml will be read from <code>"/some/path/to/registry"</code> and the resulting database will be written to <code>"/some/path/to/registry/cache.cdb"</code> .</p>
+<p>Lastly, the <code>"CONTEXT_PROVIDERS"</code> environment variable can be used to specify a directory containing the registry.</p>
+<h2><a class="anchor" id="Implementation">
+Implementation</a></h2>
+<p>To ensure the registry consistency the regeneration is done atomically: the new database is first written to a temp-named file and then moved over the old one. </p>
+</div>
+<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Nov 27 10:23:11 2009 for libcontextsubscriber by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
+</body>
+</html>