<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>DTN Reference Implementation: dtn::SQLBundleStore Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.6 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</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 List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespacedtn.html">dtn</a>::<a class="el" href="classdtn_1_1SQLBundleStore.html">SQLBundleStore</a> </div> </div> <div class="contents"> <h1>dtn::SQLBundleStore Class Reference</h1><!-- doxytag: class="dtn::SQLBundleStore" --><!-- doxytag: inherits="dtn::BundleStore" --><code>#include <<a class="el" href="SQLBundleStore_8h-source.html">SQLBundleStore.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for dtn::SQLBundleStore:</div> <div class="dynsection"> <p><center><img src="classdtn_1_1SQLBundleStore.png" usemap="#dtn::SQLBundleStore_map" border="0" alt=""></center> <map name="dtn::SQLBundleStore_map"> <area href="classdtn_1_1BundleStore.html" alt="dtn::BundleStore" shape="rect" coords="0,0,129,24"> </map> </div> <p> <a href="classdtn_1_1SQLBundleStore-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> Implementation of a <a class="el" href="classdtn_1_1BundleStore.html" title="The class for bundle storage is an instantiation of an oasys durable table to store...">BundleStore</a> that uses an underlying SQL database. <p>Definition at line <a class="el" href="SQLBundleStore_8h-source.html#l00033">33</a> of file <a class="el" href="SQLBundleStore_8h-source.html">SQLBundleStore.h</a>.</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 class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#1fa043fad5cdd3f77b0e18550cbe82ad">SQLBundleStore</a> (oasys::SQLImplementation *db, const char *table_name="bundles")</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor -- takes as a parameter an abstract pointer to the underlying storage technology so as to implement the basic methods. <a href="#1fa043fad5cdd3f77b0e18550cbe82ad"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#02483e2894f11e3094a9d12a050e6e8d">get</a> (int <a class="el" href="dtncat_8c.html#0d43174f8d3844aa5df38af2712ccb00">bundle_id</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Virtual methods inheritied from <a class="el" href="classdtn_1_1BundleStore.html" title="The class for bundle storage is an instantiation of an oasys durable table to store...">BundleStore</a>. <a href="#02483e2894f11e3094a9d12a050e6e8d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#2a43607c542ccd6e0e637c7ec9e7905b">insert</a> (<a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *bundle)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#e29628d27fbc362bd3b50785a4f207b5">update</a> (<a class="el" href="classdtn_1_1Bundle.html">Bundle</a> *bundle)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Update the metabundle for the bundle. <a href="#e29628d27fbc362bd3b50785a4f207b5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#cbca62383c87bc59fbfd2e6267f3cfba">del</a> (int <a class="el" href="dtncat_8c.html#0d43174f8d3844aa5df38af2712ccb00">bundle_id</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#ff60fb203de274e5c7315d0c88153612">delete_expired</a> (const time_t now)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#dcd65e640828e70bc496f66799acb22d">is_custodian</a> (int <a class="el" href="dtncat_8c.html#0d43174f8d3844aa5df38af2712ccb00">bundle_id</a>)</td></tr> <tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classdtn_1_1SQLStore.html">SQLStore</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classdtn_1_1SQLBundleStore.html#5c16edef6c196c95be852ff3babc650d">store_</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The <a class="el" href="classdtn_1_1SQLStore.html" title="Implementation of a StorageManager with an underlying SQL database.">SQLStore</a> instance used to store all the bundles. <a href="#5c16edef6c196c95be852ff3babc650d"></a><br></td></tr> </table> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="1fa043fad5cdd3f77b0e18550cbe82ad"></a><!-- doxytag: member="dtn::SQLBundleStore::SQLBundleStore" ref="1fa043fad5cdd3f77b0e18550cbe82ad" args="(oasys::SQLImplementation *db, const char *table_name="bundles")" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">dtn::SQLBundleStore::SQLBundleStore </td> <td>(</td> <td class="paramtype">oasys::SQLImplementation * </td> <td class="paramname"> <em>db</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>table_name</em> = <code>"bundles"</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Constructor -- takes as a parameter an abstract pointer to the underlying storage technology so as to implement the basic methods. <p> The table_name identifies the table in which all bundles will be stored </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="02483e2894f11e3094a9d12a050e6e8d"></a><!-- doxytag: member="dtn::SQLBundleStore::get" ref="02483e2894f11e3094a9d12a050e6e8d" args="(int bundle_id)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a>* dtn::SQLBundleStore::get </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>bundle_id</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Virtual methods inheritied from <a class="el" href="classdtn_1_1BundleStore.html" title="The class for bundle storage is an instantiation of an oasys durable table to store...">BundleStore</a>. <p> </div> </div><p> <a class="anchor" name="2a43607c542ccd6e0e637c7ec9e7905b"></a><!-- doxytag: member="dtn::SQLBundleStore::insert" ref="2a43607c542ccd6e0e637c7ec9e7905b" args="(Bundle *bundle)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::SQLBundleStore::insert </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> * </td> <td class="paramname"> <em>bundle</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="e29628d27fbc362bd3b50785a4f207b5"></a><!-- doxytag: member="dtn::SQLBundleStore::update" ref="e29628d27fbc362bd3b50785a4f207b5" args="(Bundle *bundle)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::SQLBundleStore::update </td> <td>(</td> <td class="paramtype"><a class="el" href="classdtn_1_1Bundle.html">Bundle</a> * </td> <td class="paramname"> <em>bundle</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Update the metabundle for the bundle. <p> <p>Reimplemented from <a class="el" href="classdtn_1_1BundleStore.html#3821a93fdc9d3566951764be76d2c649">dtn::BundleStore</a>.</p> </div> </div><p> <a class="anchor" name="cbca62383c87bc59fbfd2e6267f3cfba"></a><!-- doxytag: member="dtn::SQLBundleStore::del" ref="cbca62383c87bc59fbfd2e6267f3cfba" args="(int bundle_id)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::SQLBundleStore::del </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>bundle_id</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="ff60fb203de274e5c7315d0c88153612"></a><!-- doxytag: member="dtn::SQLBundleStore::delete_expired" ref="ff60fb203de274e5c7315d0c88153612" args="(const time_t now)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int dtn::SQLBundleStore::delete_expired </td> <td>(</td> <td class="paramtype">const time_t </td> <td class="paramname"> <em>now</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="dcd65e640828e70bc496f66799acb22d"></a><!-- doxytag: member="dtn::SQLBundleStore::is_custodian" ref="dcd65e640828e70bc496f66799acb22d" args="(int bundle_id)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="serialsource_8c.html#1062901a7428fdd9c7f180f5e01ea056">bool</a> dtn::SQLBundleStore::is_custodian </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>bundle_id</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="5c16edef6c196c95be852ff3babc650d"></a><!-- doxytag: member="dtn::SQLBundleStore::store_" ref="5c16edef6c196c95be852ff3babc650d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classdtn_1_1SQLStore.html">SQLStore</a>* <a class="el" href="classdtn_1_1SQLBundleStore.html#5c16edef6c196c95be852ff3babc650d">dtn::SQLBundleStore::store_</a><code> [private]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> The <a class="el" href="classdtn_1_1SQLStore.html" title="Implementation of a StorageManager with an underlying SQL database.">SQLStore</a> instance used to store all the bundles. <p> <p>Definition at line <a class="el" href="SQLBundleStore_8h-source.html#l00058">58</a> of file <a class="el" href="SQLBundleStore_8h-source.html">SQLBundleStore.h</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="SQLBundleStore_8h-source.html">SQLBundleStore.h</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Mon Jul 21 14:09:55 2008 for DTN Reference Implementation by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address> </body> </html>