Commit graph

411 commits

Author SHA1 Message Date
6455c45630 Impl FilePrinter for SimplePrinter ::print_file_custom() 2015-12-28 13:56:38 +01:00
f0c186f33b Impl FilePrinter for DebugPrinter ::print_file_custom() 2015-12-28 13:56:20 +01:00
fc42d6b4bf FilePrinter: Add print_file_custom(), print_files_custom() 2015-12-28 13:56:01 +01:00
74aab89fbb ui: Change to take Rc<RefCell<File>> instead of File 2015-12-28 13:36:44 +01:00
c8a0c1168d Initialize store in Runtime object, pass store path directly into Store object 2015-12-28 00:39:55 +01:00
656aa69bfd Implement Store::persist() 2015-12-28 00:30:25 +01:00
8145b21404 Fix: Parser::write() can get reference tuple 2015-12-28 00:29:45 +01:00
0212fb1929 Fix: Add missing dash 2015-12-28 00:29:21 +01:00
23e4152aaa Implement Store::load() 2015-12-28 00:04:54 +01:00
f29bcc7430 Store: Put file into cache, return FileID 2015-12-27 23:51:44 +01:00
470f1b1378 Save only module name in File, not whole module 2015-12-27 23:46:08 +01:00
f774effabb File: Return inner contents as references, not cloned 2015-12-27 23:26:23 +01:00
030b5fc888 Fixup Store 2015-12-27 23:18:55 +01:00
c595f5a1e8 Move File-creation code to Store 2015-12-27 23:17:51 +01:00
cb2c512440 Add Store type 2015-12-27 23:17:51 +01:00
73c7281259 Make File members pub 2015-12-27 23:17:51 +01:00
736c3784a9 Derive: Eq, PartialEq for FileID 2015-12-27 23:17:51 +01:00
6676611f4b Derive Hash for FileIDType 2015-12-27 23:02:34 +01:00
f60c540ee5 Derive: Hash for FileID 2015-12-27 23:02:20 +01:00
4c252577f2 Derive: Hash for FileHash 2015-12-27 23:02:06 +01:00
Marcel Müller
22b57d5ad9 Implement FromStr for FileIDType 2015-12-27 18:55:27 +01:00
65aa98607e Add File::persist() 2015-12-27 18:52:25 +01:00
8029057b22 Add File::edit_contents() 2015-12-27 18:52:19 +01:00
961fb27f99 Add File::edit() 2015-12-27 18:52:02 +01:00
4cac382412 Fixup Into<str> for Path -> Impl as Into<String> for Path 2015-12-27 18:00:56 +01:00
3273e77d24 Fixup Into<str> for Path 2015-12-27 18:00:56 +01:00
312bcf9703 Fixup File::get_new_file_id() 2015-12-27 18:00:56 +01:00
003efb6296 Fixup Into<str> for Path 2015-12-27 18:00:56 +01:00
71bf650653 Fixup FileIDType::parse 2015-12-27 18:00:56 +01:00
2585472349 impl Into<String> for FileID 2015-12-27 18:00:56 +01:00
1fc1c73b4a impl Into<String> for FileIDType 2015-12-27 18:00:56 +01:00
fab2dece59 When generating a new FileID, use the FileHash type 2015-12-27 18:00:31 +01:00
62150c5a61 Add missing lifetimes 2015-12-27 18:00:31 +01:00
63bbede00f Add missing 'use ...' 2015-12-27 18:00:31 +01:00
8c2af3e931 Add Path type 2015-12-27 18:00:31 +01:00
85a199ffc8 Add module file for storage 2015-12-27 18:00:31 +01:00
00d0bbf4ae Add basic interface for BM module 2015-12-27 18:00:28 +01:00
7e77d786bb Remove old code, FileIDType::NONE does not exist, we use Option<> 2015-12-21 19:28:15 +01:00
dcec155505 Move FileIDType to new module, export publicly 2015-12-21 19:20:09 +01:00
8a7d4b8aaf Add FileHash type, custom type for an ID 2015-12-21 19:20:09 +01:00
dd7b412976 Remove code 2015-12-21 19:20:09 +01:00
3212429c9e Impl Debug for Parser 2015-12-19 11:47:24 +01:00
d5af28d98d Impl {Display,Debug} for JsonHeaderParser 2015-12-19 11:47:24 +01:00
ee78c249f0 Remove leftover file from storage backend moving 2015-12-06 13:15:07 +01:00
188aacad75 Move FileHeader{Spec,Data} to own submodules 2015-12-06 13:09:51 +01:00
3b89148cd0 Move storage/file_id.rs -> storage/file/id.rs 2015-12-06 13:02:21 +01:00
95f6f2e97e Move file.rs to subdirectory 2015-12-06 13:01:02 +01:00
6e0d0058b0 Move key generating to top-level spec helpers 2015-12-06 12:49:31 +01:00
dad856ff2a Move get_tags() from BM module to module utilities 2015-12-06 12:49:31 +01:00
7d40b68407 Rename: StorageBackend -> Storage 2015-12-06 12:49:02 +01:00
da2b482bda Move Storage Backend code imag::storage::backend -> imag::storage 2015-12-06 12:47:08 +01:00
ab3ada0914 Move header helpers from module/header/ to module/helpers/ 2015-12-05 16:03:05 +01:00
c6a2d39981 Outsource header utilities into header helper 2015-12-05 16:01:30 +01:00
3a8f2b5493 Refactor: dont use helper but StorageBackendError::new() directly 2015-12-05 15:01:46 +01:00
e6a32eafc0 Outsource StorageBackendError building into helper function 2015-12-05 14:24:58 +01:00
9f59478da0 Readability fixes 2015-12-05 11:10:54 +01:00
93393751b2 Remove uneccessary variable 2015-12-05 11:06:22 +01:00
80563cb340 Move tag filtering to sub-function 2015-12-05 11:05:50 +01:00
e8c7df4593 Remove variable, use expression directly 2015-12-05 11:03:05 +01:00
166a0cf5dd bm: remove_command: Refactor into sub-functions 2015-12-05 11:00:44 +01:00
75cedc1580 Move to rust stable (1.4 atm) so we can use clap 2015-12-05 10:45:33 +01:00
230d00f35a Remove unused imports 2015-12-05 01:23:06 +01:00
1f8bdef1ed Remove unused variables 2015-12-05 01:18:12 +01:00
f7a92b6e79 Resort "use"
First comes std stuff
Second is external crates
Then we have own modules

All in alphabetical order and as few lines as possible if readability is
preserved.
2015-12-05 01:14:13 +01:00
5953563671 Refactor for readability 2015-12-04 23:39:30 +01:00
f8e870312e Outsource: ids iterator to files vector 2015-12-04 23:35:48 +01:00
55f740497b Beautify get_tags() helper 2015-12-04 23:26:08 +01:00
cd1bb88f20 Rework remove_command() 2015-12-04 23:19:18 +01:00
848fb0b4b4 Ensure we build the globstring _with_ the ID in it 2015-12-04 23:11:59 +01:00
261fbdd038 Add id getter for FileID 2015-12-04 23:11:46 +01:00
87d5852986 Ensure we dont crash if there are no files found 2015-12-04 23:01:37 +01:00
fd3d2ec8dc Fixup get_file_by_id() 2015-12-04 22:57:28 +01:00
6473b743a3 Outsource globlist -> Vec<FileID> transformation code snippet 2015-12-04 22:53:31 +01:00
dac4911ea2 (partly) Rewrite StorageBackend::get_file_by_id(), so we can get a file with a partially available ID 2015-12-04 22:49:00 +01:00
253658ece5 Fix: FileID::from() should also succeed if we pass a ID as string 2015-12-04 22:31:09 +01:00
2dfb76bd0d Reimplement: Parser::divide_text() 2015-12-04 21:56:48 +01:00
5c38e6752b Fixup glob string generating 2015-12-04 21:56:48 +01:00
08fa8f8655 Add debugging output 2015-12-04 21:56:48 +01:00
2b21d1cb47 StorageBackend::iter_files(): Add caused_by use 2015-12-04 21:56:48 +01:00
90e3f44005 StorageBackend::iter_ids(): Add caused_by() usage
Actually not, as there is no Error implementation for the error we get
to handle here.
2015-12-04 21:56:48 +01:00
87d9ca7d06 Print table only if there are entries 2015-12-04 21:56:48 +01:00
b6c1a6301f Use ParserError::with_cause() and build new ParserError object 2015-12-04 21:56:48 +01:00
3a76c05317 ParserError: Add cause 2015-12-04 21:56:47 +01:00
1aaea39b3d storage/parser::divide_text(): Add debug output 2015-12-04 21:56:33 +01:00
e72c1c68b9 Fix: Output formatting
The header-content separator dashes were completely missing. Shame on
me.
2015-12-04 21:56:33 +01:00
e31239b02b Fix wording in debug message 2015-12-04 21:56:33 +01:00
915cbd24ef Impl From<PathBuf> for FileID, using From<String> for FileID 2015-12-04 21:56:33 +01:00
db9c4e48ba ui/TablePrinter: Add debug output 2015-12-04 21:56:33 +01:00
3484858c3d Remove unused code 2015-12-04 21:56:33 +01:00
2ab025a4eb Add test: match_header_spec() testing 2015-12-04 17:52:30 +01:00
e025cf8835 Add missing Clone for FileHeaderSpec 2015-12-04 17:52:30 +01:00
04443b34bf Add test: serialize-deserialize-compare 2015-12-04 17:52:30 +01:00
3e75117d69 Add test: Deserialization without Specification should match as well 2015-12-04 17:52:30 +01:00
74a9523f45 Use box_patterns, so we can unbox in the tests 2015-12-04 17:52:30 +01:00
2dce3151bd Remove default impl for Error for ParserError 2015-12-04 17:52:30 +01:00
84e7100229 Add test for deserialization 2015-12-04 17:52:30 +01:00
d9019e408e Remove static livetime in ParserError::short() 2015-12-04 17:51:22 +01:00
03856cd3a1 Reimplement StorageBackendError::{new,build} with Into<String> 2015-12-04 15:18:52 +01:00
c1d497fa6a Add URL check before adding the "url" to the store 2015-12-04 15:09:03 +01:00
04df3fdf3c Rewrite BMModule::get_filtered_files_from_backend() with the backend speaking Result<> now instead of Option<> 2015-12-04 14:17:32 +01:00