1
0
Fork 0
mirror of https://github.com/KingDuckZ/dindexer.git synced 2024-12-05 02:35:41 +00:00
Commit graph

351 commits

Author SHA1 Message Date
346946340d First implementation of set_listing.
Trying to move the depth-first iteration logic into
an iterator-like interface. Work in progress WiP
2016-02-09 21:35:13 +01:00
f20d73bdab Update year on copyright notice. 2016-02-05 21:02:40 +01:00
58c7e917c5 Buildfix on ARM raspberry pi 2016-02-02 20:56:27 +01:00
c5824c36bd List directories first in the output of ls. 2016-01-29 23:30:59 +00:00
f40600d6e2 Implement ls into subdirectories 2016-01-29 20:15:16 +01:00
362a5d3128 Modernize AutomemBase and add some assertions 2016-01-28 19:02:15 +01:00
394ae7672a Optimization - replace inner vector with static mem container in dbsource. 2016-01-28 18:13:13 +01:00
8cbd9560ec Implement listing sets from the db (ls) 2016-01-27 19:18:10 +01:00
9071b25dec Rename DirManager to GenericPath. 2016-01-26 23:06:36 +01:00
138f112254 Implement cd and pwd commands 2016-01-26 22:53:30 +01:00
c455582a4e Provide some wrappers so adding commands is more convenient. 2016-01-22 19:54:32 +00:00
99732f6dd8 Add stub for new navigate command. 2016-01-22 15:55:19 +00:00
588d735593 Add missing $3 for the new app_name parameter.
Fixes crash after scanning a disk.
2016-01-22 15:54:39 +00:00
eb618f0842 Remove stray cout. 2016-01-22 09:52:34 +00:00
9ee89b815a Fix mimetype retrieval and make code a bit more readable. 2016-01-22 09:45:20 +00:00
913cdbd59d Add app_name column to sets. 2016-01-21 20:30:38 +00:00
9f3b27f0b5 Fix scan hanging after listing directories. 2016-01-21 16:56:54 +00:00
e2438f77fd Fix inserting new files into db. 2016-01-11 14:20:05 +00:00
4c97105d97 Buildfix - pthread is needed when building in Release. 2016-01-11 12:53:37 +00:00
7e737f56a2 Tell libpqtypes to not make copies of strings it receives.
The wrapper now copies boost::string_ref into std::string so
it's always safe to pass a string ref, even when it's not
null-terminated.
2016-01-11 12:53:37 +00:00
fa12bb2d74 Bugfix - don't store absolute paths to files in the DB.
This was introduced in a previous commit.
2016-01-11 12:53:37 +00:00
3f48d00ad9 Add new str_path_size() method.
Refactor code to allow an easier implementation.
2016-01-11 12:53:37 +00:00
5c0a8e0725 Warning fix in Release. 2016-01-07 15:13:03 +00:00
1077661e50 Implement searching for sets by name.
Searching for sets also prints the total count of files and
directories in that set.
2016-01-07 15:13:03 +00:00
2593d46ed7 Now there is a cpp for pq_type_helpers.hpp so move code there. 2016-01-07 14:52:32 +00:00
2655ea5f5c Add support for std::vectors as arrays.
Nested vectors are not supported.
2016-01-07 12:57:06 +00:00
f82659e370 Add move semantics. 2016-01-06 13:12:00 +00:00
6edfb08383 Store mime type and charset in the db. 2016-01-06 02:18:42 +00:00
839b9dd49a Generate a table scheme with some valid username.
Have main prog print the new build time constant.
2016-01-05 14:12:36 +00:00
c7b44f6368 Use parametric queries. 2016-01-05 13:30:17 +00:00
f5356e0c29 Change namespace in machinery to mchlib. 2016-01-05 12:49:27 +00:00
4e29200b47 Move scan's core code into new machinery lib. 2016-01-05 12:35:46 +00:00
487b8efe61 Refactor Indexer so that writing to the db is done outside. 2016-01-05 11:24:23 +00:00
c4a2433a04 Move libpqtypes template helpers out to a new header. 2015-12-31 01:20:56 +00:00
ed0fbac5e1 connection.hpp is a public header. 2015-12-31 01:13:26 +00:00
1532d3c083 Fix reading values from ResultSet/Row.
Send correct group_id to the db in a safer way.
2015-12-31 00:38:44 +00:00
9bb5689d48 Remove query_void() methods. query() is just fine. 2015-12-30 10:20:52 +00:00
43bec4711e Clarify PGresult ownership and lifetime. 2015-12-30 10:15:36 +00:00
c6f034d98e Replace spirit phoenix with standalone phoenix includes. 2015-12-29 19:02:56 +00:00
a3f44bce8d Use new parametric query_void() instead of manual insert into sets. 2015-12-29 18:11:15 +00:00
390b69e150 Use parametric sql functions to insert new files.
Refactoring so that there are no extra copies of data being inserted.
2015-12-29 17:32:22 +00:00
a91e75829f Fix libpqtypes as external project.
Note: due to a bug in cmake/ninja, this change introduces
problems when building with ninja. See:
https://cmake.org/Bug/view.php?id=15256
2015-12-27 03:09:08 +00:00
d8f3578497 Add libpqtypes from http://libpqtypes.esilo.com/ 2015-12-26 22:16:51 +00:00
c409a3e0a2 Make main dindexer show options used to build. 2015-12-26 14:51:49 +00:00
05979e24a2 Add split_mime() function. 2015-12-26 14:50:40 +00:00
148b60ee97 Add retrieving the mime type.
This is not being stored to the db yet.
2015-12-15 11:26:04 +00:00
2b7d8a6783 Don't scatter the casted type throughout the code. 2015-12-14 13:05:13 +00:00
45e5b7bc8d Implement "locate" action. 2015-12-14 13:00:10 +00:00
cc5bb9bc34 Sort commands printed in help output.
Also fix const-correctness. Hopefully.
2015-12-14 11:55:22 +00:00
57d925034d Begin working on the "query" action. 2015-12-13 16:46:42 +00:00
93a5130cc5 Move ValidationError to commonlib. 2015-12-13 16:33:58 +00:00
986f0c8db3 Buildfix and minor changes 2015-12-13 16:14:05 +00:00
bef901c56c Print git revision in --version. 2015-12-12 20:27:31 +00:00
861ea2c809 Implement deleting sets from the db. 2015-12-12 20:20:57 +00:00
4a0ddb4beb Hide expand() implementation into settings.cpp. 2015-12-12 20:02:42 +00:00
74afa9f502 Rename settings stuff as it got moved to commonlib. 2015-12-12 17:41:34 +00:00
6e7176be10 Move DBSettings to common lib. 2015-12-12 17:23:50 +00:00
8a4afa241e Begin work on the new delete action. 2015-12-12 16:53:09 +00:00
10b9be1f85 Print human-readable autodetected media type. 2015-12-10 16:31:11 +00:00
6c30621400 Put some common stuff into a separate library. 2015-12-10 15:33:38 +00:00
a0b87e6a2d Manage read errors.
If instructed to continue on errors, store info correctly in the db.
2015-12-10 12:13:16 +00:00
ed3dea8f2c More assertions and more explicit code. 2015-12-09 18:36:46 +00:00
3a4c11ad4c Buildfix when blkid.h is not available. 2015-12-08 16:13:36 +00:00
2cdf0cb3b9 Allow disabling media autodetection at build time.
Use DINDEXER_WITH_MEDIA_AUTODETECT.
2015-12-08 16:07:21 +00:00
97de157724 Refactor the new media type autodetection code. 2015-12-08 16:03:30 +00:00
c82b41207e Enable more warnings (and fix some). 2015-12-08 13:57:12 +00:00
fe2ea40c4f Implement autodetect set type.
Only supports HardDisk, Directory, CdRom, DVD, BluRay for now.
2015-12-08 13:56:46 +00:00
87bc031e65 Rename update action to scan. 2015-12-04 19:40:02 +00:00
20ebc10b0c Dynamically build the type list for the help message. 2015-12-04 19:32:57 +00:00
8708ef9503 Add dispatcher program.
Invoke like dindexer <action> a b c and it will exec
ACTIONS_PATH/dindexer-<action> a b c
or
ACTIONS_PATH/<action>/dindexer-<action> a b c
2015-12-04 16:32:32 +00:00
fca9b94afd Make one more empty target that only carries include paths. 2015-12-04 16:30:41 +00:00
3899680544 Pull lengthof definition into a different header. 2015-12-04 13:48:20 +00:00
d8be48d2e8 Reorganize source code in directories. 2015-12-04 12:58:13 +00:00
3c1b7108f3 Allow type "C" (for CD-Rom) 2015-12-04 12:30:48 +00:00
5f8756ef1b Store access time and modify time in the db. 2015-12-01 16:35:46 +00:00
f1c3deea63 Group parameters in a struct when calling filesearcher's callback. 2015-12-01 16:34:22 +00:00
8b9241757d Don't save to DB if the disk has been added already. 2015-11-27 20:41:36 +00:00
e957fde12c Enable uppercase hash-to-string conversion. 2015-11-27 20:34:42 +00:00
51d0bfdf7a Avoid messages clashing on stdout in debug.
This quickfix completely disables progress output in debug.
2015-11-27 19:54:03 +00:00
f6c638e6e4 Fix wrong assertion. 2015-11-27 19:49:29 +00:00
56735c9d86 Get the config file path from cmake. 2015-11-13 19:25:32 +00:00
f48626960d Improve progress output. 2015-11-13 15:45:28 +00:00
f7441292bc Add optional verbose mode that shows the number of hashed files. 2015-11-12 14:07:26 +00:00
a82ab4a4ed Bugfix in Release. 2015-11-11 20:13:03 +00:00
49a9702115 Make a macro for verbosity. 2015-11-11 20:12:55 +00:00
911da3bb00 Add column 'type' to sets and take its value on command line. 2015-11-11 20:06:14 +00:00
585c7f45b7 Allow passing set name and search path as command line parameters. 2015-11-11 19:24:10 +00:00
9a25846880 Fix release build. 2015-11-11 17:14:51 +00:00
292e32b38f Read db connection parameters from a yml file. 2015-11-11 17:08:17 +00:00
413bf0444b Update DB tables and insert set along with new files. 2015-11-11 13:30:41 +00:00
444d2a2fa3 Limit insertion to 100 records per query, but this is still suboptimal. 2015-11-11 12:35:52 +00:00
4236b2ece8 Fix hashing and db insertion. 2015-11-11 12:28:04 +00:00
bd9ce0ef54 Send data to the database. 2015-11-11 02:01:37 +00:00
a00d30b0ee Calculate hash for all entries. 2015-11-10 17:48:22 +00:00
1dee8e0f83 Implement SSE2 Tiger hashing. 2015-11-09 16:50:56 +00:00
d07dc9a7da New Indexer class. 2015-11-06 19:48:38 +00:00
4fcc2cf25c New make_relative_path() function. 2015-11-06 19:48:18 +00:00
3f8cda06aa Improve interface and add some getters. 2015-11-06 19:48:02 +00:00
485796db48 Keep paths in a string pool. 2015-11-06 17:57:07 +00:00
109ce9b82a Use string_ref instead of string and implement join(). 2015-11-05 17:22:34 +01:00
31a70945bb First import 2015-11-05 15:32:31 +01:00