Document only backend

This commit is contained in:
Mike Young
2019-12-15 12:58:59 -05:00
parent 7eb1cb330b
commit d82f247d83
91 changed files with 7782 additions and 2 deletions

View File

@@ -0,0 +1,462 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>pyShelf Open Source Ebook Server: pyShelf.src.backend.tests.library_test.Test_Catalogue 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="../../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 id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">pyShelf Open Source Ebook Server
&#160;<span id="projectnumber">0.3.0</span>
</div>
<div id="projectbrief">Open source, console based E-book server</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('../../',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>pyShelf</b></li><li class="navelem"><b>src</b></li><li class="navelem"><b>backend</b></li><li class="navelem"><b>tests</b></li><li class="navelem"><b>library_test</b></li><li class="navelem"><a class="el" href="../../d4/d5d/classpyShelf_1_1src_1_1backend_1_1tests_1_1library__test_1_1Test__Catalogue.html">Test_Catalogue</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="../../d7/d7c/classpyShelf_1_1src_1_1backend_1_1tests_1_1library__test_1_1Test__Catalogue-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">pyShelf.src.backend.tests.library_test.Test_Catalogue Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="../../closed.png" alt="+"/> Inheritance diagram for pyShelf.src.backend.tests.library_test.Test_Catalogue:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center">
<img src="../../d4/d5d/classpyShelf_1_1src_1_1backend_1_1tests_1_1library__test_1_1Test__Catalogue.png" usemap="#pyShelf.src.backend.tests.library_5Ftest.Test_5FCatalogue_map" alt=""/>
<map id="pyShelf.src.backend.tests.library_5Ftest.Test_5FCatalogue_map" name="pyShelf.src.backend.tests.library_5Ftest.Test_5FCatalogue_map">
<area href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html" alt="pyShelf.src.backend.lib.library.Catalogue" shape="rect" coords="0,0,316,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:a1efda7a2db594af425f24b186f7a39b0"><td class="memItemLeft" align="right" valign="top"><a id="a1efda7a2db594af425f24b186f7a39b0"></a>
def&#160;</td><td class="memItemRight" valign="bottom"><b>__init__</b> (self)</td></tr>
<tr class="separator:a1efda7a2db594af425f24b186f7a39b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2a6c936f7902c6e9287f551fa274edf"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d5d/classpyShelf_1_1src_1_1backend_1_1tests_1_1library__test_1_1Test__Catalogue.html#aa2a6c936f7902c6e9287f551fa274edf">filter_books</a> (self)</td></tr>
<tr class="separator:aa2a6c936f7902c6e9287f551fa274edf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a18784d69536167a50258ce9b1737b1"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#a5a18784d69536167a50258ce9b1737b1">scan_folder</a> (self, _path=None)</td></tr>
<tr class="separator:a5a18784d69536167a50258ce9b1737b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97f42f90efb06225637e28555b37ca01"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#a97f42f90efb06225637e28555b37ca01">extract_metadata</a> (self, book)</td></tr>
<tr class="separator:a97f42f90efb06225637e28555b37ca01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa292917545d1569ddb8caf65577a8a57"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#aa292917545d1569ddb8caf65577a8a57">extract_content</a> (self, book_zip, book)</td></tr>
<tr class="separator:aa292917545d1569ddb8caf65577a8a57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c306bfe05990039b81731992b6f31d6"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#a4c306bfe05990039b81731992b6f31d6">extract_cover_html</a> (self, book_zip, book)</td></tr>
<tr class="separator:a4c306bfe05990039b81731992b6f31d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abeffa733c446b5a367a4225d6a6b5a1e"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#abeffa733c446b5a367a4225d6a6b5a1e">extract_cover_image</a> (self, book_zip, book)</td></tr>
<tr class="separator:abeffa733c446b5a367a4225d6a6b5a1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1463e646d864f5ee4710bec71990995a"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#a1463e646d864f5ee4710bec71990995a">compare_shelf_current</a> (self)</td></tr>
<tr class="separator:a1463e646d864f5ee4710bec71990995a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10be990c40894e3ec45b475e2d89fe96"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#a10be990c40894e3ec45b475e2d89fe96">import_books</a> (self, list=None)</td></tr>
<tr class="separator:a10be990c40894e3ec45b475e2d89fe96"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a84b765167953466756502d0071c69331"><td class="memItemLeft" align="right" valign="top">def&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#a84b765167953466756502d0071c69331">process_book</a> (book)</td></tr>
<tr class="separator:a84b765167953466756502d0071c69331"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:afc2ac20fb58c372546c69df0e5556a5d"><td class="memItemLeft" align="right" valign="top"><a id="afc2ac20fb58c372546c69df0e5556a5d"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>book_shelf</b></td></tr>
<tr class="separator:afc2ac20fb58c372546c69df0e5556a5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f3ebef642b34188c7ad49cff076db55"><td class="memItemLeft" align="right" valign="top"><a id="a1f3ebef642b34188c7ad49cff076db55"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>file_list</b></td></tr>
<tr class="separator:a1f3ebef642b34188c7ad49cff076db55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b23b2c4bfa2d4bb2e2b369cbf8833f9"><td class="memItemLeft" align="right" valign="top"><a id="a2b23b2c4bfa2d4bb2e2b369cbf8833f9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>opf_regx</b></td></tr>
<tr class="separator:a2b23b2c4bfa2d4bb2e2b369cbf8833f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbffe01e963e4ece27a608da5fb49e32"><td class="memItemLeft" align="right" valign="top"><a id="acbffe01e963e4ece27a608da5fb49e32"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>cover_regx</b></td></tr>
<tr class="separator:acbffe01e963e4ece27a608da5fb49e32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2891f397d927169a8650847f615d402"><td class="memItemLeft" align="right" valign="top"><a id="ad2891f397d927169a8650847f615d402"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>html_regx</b></td></tr>
<tr class="separator:ad2891f397d927169a8650847f615d402"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8b3da5a79b942fb03f151d65c673a8f"><td class="memItemLeft" align="right" valign="top"><a id="ac8b3da5a79b942fb03f151d65c673a8f"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>root_dir</b></td></tr>
<tr class="separator:ac8b3da5a79b942fb03f151d65c673a8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a519afd6144e843d57172d7aad5020919"><td class="memItemLeft" align="right" valign="top"><a id="a519afd6144e843d57172d7aad5020919"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>book_folder</b></td></tr>
<tr class="separator:a519afd6144e843d57172d7aad5020919"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a159ee5951ae71faeae71a52b662f502c"><td class="memItemLeft" align="right" valign="top"><a id="a159ee5951ae71faeae71a52b662f502c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>books</b></td></tr>
<tr class="separator:a159ee5951ae71faeae71a52b662f502c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1064beb1ffc07daf754eab4ca59d2575"><td class="memItemLeft" align="right" valign="top"><a id="a1064beb1ffc07daf754eab4ca59d2575"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>db_pointer</b></td></tr>
<tr class="separator:a1064beb1ffc07daf754eab4ca59d2575"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a603e0c7f6f867b54cb8255c2b0bb650b"><td class="memItemLeft" align="right" valign="top"><a id="a603e0c7f6f867b54cb8255c2b0bb650b"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>config</b></td></tr>
<tr class="separator:a603e0c7f6f867b54cb8255c2b0bb650b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"></div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a1463e646d864f5ee4710bec71990995a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1463e646d864f5ee4710bec71990995a">&#9670;&nbsp;</a></span>compare_shelf_current()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.compare_shelf_current </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Calls storage system, gets list of books stored and compares against files on disk
</pre>
</div>
</div>
<a id="aa292917545d1569ddb8caf65577a8a57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa292917545d1569ddb8caf65577a8a57">&#9670;&nbsp;</a></span>extract_content()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.extract_content </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book_zip</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Opens epub as zip file filters then stores as list any files matching opf_regx
</pre>
</div>
</div>
<a id="a4c306bfe05990039b81731992b6f31d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c306bfe05990039b81731992b6f31d6">&#9670;&nbsp;</a></span>extract_cover_html()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.extract_cover_html </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book_zip</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Opens epub as zip file filters then stores as list any files matching html_regx
</pre>
</div>
</div>
<a id="abeffa733c446b5a367a4225d6a6b5a1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abeffa733c446b5a367a4225d6a6b5a1e">&#9670;&nbsp;</a></span>extract_cover_image()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.extract_cover_image </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book_zip</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Opens epub as zip file filters then stores as list any files matching cover_regx
</pre>
</div>
</div>
<a id="a97f42f90efb06225637e28555b37ca01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97f42f90efb06225637e28555b37ca01">&#9670;&nbsp;</a></span>extract_metadata()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.extract_metadata </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Return extracted metadata and cover picture
book['path'] == Full path to ebook file
book['files'] == list of files from self.process_book(book)
</pre>
</div>
</div>
<a id="aa2a6c936f7902c6e9287f551fa274edf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2a6c936f7902c6e9287f551fa274edf">&#9670;&nbsp;</a></span>filter_books()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.tests.library_test.Test_Catalogue.filter_books </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Calls scan_folder and filters out book files
Proceeds to call process_book
:returns self._book_list_expanded: json string containing all book metadata
</pre>
<p>Reimplemented from <a class="el" href="../../d4/d49/classpyShelf_1_1src_1_1backend_1_1lib_1_1library_1_1Catalogue.html#ab4ba5b4c097789855ded4e7cb05ee0db">pyShelf.src.backend.lib.library.Catalogue</a>.</p>
</div>
</div>
<a id="a10be990c40894e3ec45b475e2d89fe96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a10be990c40894e3ec45b475e2d89fe96">&#9670;&nbsp;</a></span>import_books()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.import_books </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>list</em> = <code>None</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Main entry point for import operations.
Gets a list of new files via compare_shelf_current.
Iterates over list and inserts new books into database.
</pre>
</div>
</div>
<a id="a84b765167953466756502d0071c69331"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84b765167953466756502d0071c69331">&#9670;&nbsp;</a></span>process_book()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.process_book </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>book</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Return dictionary of epub file contents</pre>
</div>
</div>
<a id="a5a18784d69536167a50258ce9b1737b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a18784d69536167a50258ce9b1737b1">&#9670;&nbsp;</a></span>scan_folder()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">def pyShelf.src.backend.lib.library.Catalogue.scan_folder </td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname"><em>_path</em> = <code>None</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Scan folder by _path, allows recurisive scanning
</pre>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/backend/tests/<a class="el" href="../../">library_test.py</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Dec 15 2019 12:54:07 for pyShelf Open Source Ebook Server by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.16
</small></address>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB