Commit Graph

1842 Commits

Author SHA1 Message Date
Matthias Beyer 9bf9f96ab1 Fix: ModuleError::mk() -> pub ModuleError::new() 2015-12-02 12:24:05 +01:00
Matthias Beyer 18ea01b854 Pass StorageBackend to subcommand function 2015-12-02 12:24:05 +01:00
Matthias Beyer 3f19aba7b2 Add subcommand calling code in main() 2015-12-02 12:24:05 +01:00
Matthias Beyer 4a73a317d4 Move submodule commands/mod.rs to commands.rs 2015-12-02 12:24:05 +01:00
Matthias Beyer e10d1bcb65 Reimplement commands for bm 2015-12-02 12:24:05 +01:00
Matthias Beyer 24a6e961af Change get_commands() for latest trait change 2015-12-02 12:24:05 +01:00
Matthias Beyer 8af9ba48c0 We dont need the command traits anymore 2015-12-02 12:24:05 +01:00
Matthias Beyer 84571bef0a get_commands() can return a HashMap<str, fn()>, which is command name -> command function 2015-12-02 12:24:05 +01:00
Matthias Beyer a24d3175dd We do not have Module::execute() anymore 2015-12-02 12:24:05 +01:00
Matthias Beyer 8404303dbd Remove BMModule::execute() which is not required by the trait anymore 2015-12-02 12:24:05 +01:00
Matthias Beyer 168852714a Add modules for commands of BM module 2015-12-02 12:24:05 +01:00
Matthias Beyer 55361f71fe Add struct for passing environment of command to command execute function 2015-12-02 12:24:05 +01:00
Matthias Beyer a9a33321f7 Make command submodule public 2015-12-02 12:24:05 +01:00
Matthias Beyer f94f8870e9 The exec() function of an ExecutableCommand should get the CLI matches as well 2015-12-02 12:24:05 +01:00
Matthias Beyer 4af971a5d0 Make these types public 2015-12-02 12:24:05 +01:00
Matthias Beyer cbd85b3d8e Module should only provide functionality to get a list of commands it can execute
These commands can then be executed.
2015-12-02 12:24:05 +01:00
Matthias Beyer 86286cce1b Remove livetimes 2015-12-02 12:24:05 +01:00
Matthias Beyer bfccbc32c5 Add BMModule::add() implementation 2015-12-02 12:24:05 +01:00
Matthias Beyer 0896f2093b Fixed inverted logic in get_tags() 2015-12-02 12:24:05 +01:00
Matthias Beyer 006724a184 Refactor get_tags to return no Option 2015-12-02 12:24:05 +01:00
Matthias Beyer 51f6af6346 We should really use String here 2015-12-02 12:24:05 +01:00
Matthias Beyer cd72295c1a Add function to build header content 2015-12-02 12:24:05 +01:00
Matthias Beyer 9f29f0e1b7 Reject tasks if they contain spaces 2015-12-02 12:24:05 +01:00
Matthias Beyer 8cffdddab2 Split header spec into smaller functions 2015-12-02 12:24:05 +01:00
Matthias Beyer b76d38f4c6 Rewrite Bookmark FileHeaderSpec
One file is one bookmark, so we should have the appropriate header spec
for this.
2015-12-02 12:24:05 +01:00
Matthias Beyer 07f223bb8a Add header module with spec 2015-12-02 12:24:05 +01:00
Matthias Beyer de843541f1 Add some debugging output in bm module 2015-12-02 12:24:05 +01:00
Matthias Beyer 15a2480604 Add information on what gets done 2015-12-02 12:24:05 +01:00
Matthias Beyer 750f4cd31c Start adding the BM submodule 2015-12-02 12:24:05 +01:00
Matthias Beyer 2246ae42e8 Add dep: prettytable 2015-12-02 12:23:58 +01:00
Matthias Beyer 5003b25215 Merge branch 'ui' into master-merger 2015-12-02 12:21:14 +01:00
Matthias Beyer efe1577f02 TablePrinter should be pub 2015-12-02 12:20:54 +01:00
Matthias Beyer c3397d5238 Use prettytable to implement TablePrinter 2015-12-02 12:20:52 +01:00
Matthias Beyer 918016368e Add file printer helpers 2015-12-02 12:20:23 +01:00
Matthias Beyer 78aeddb42e Merge branch 'storage' into master 2015-12-02 12:07:40 +01:00
Matthias Beyer 2bab3d48e6 Fix JsonHeaderParser::serialize() 2015-12-02 12:00:20 +01:00
Matthias Beyer 7549db4ffc Fix JsonHeaderParser::visit_json() 2015-12-02 12:00:20 +01:00
Matthias Beyer 500fb281a0 JsonHeaderParser: Make spec optional 2015-12-02 12:00:20 +01:00
Matthias Beyer 34cf5076f9 Reimplement JsonHeaderParser::write() 2015-12-02 12:00:19 +01:00
Matthias Beyer df18071d9a Move JsonHeaderParser::new() out of trait implementation 2015-12-02 12:00:19 +01:00
Matthias Beyer cf196b2492 Fixup: get_file_ids() - use prefix_of_files_for_module() 2015-12-02 12:00:19 +01:00
Matthias Beyer 0e4a56fe68 Reimplement StorageBackend::new(), create directory if not existing, store storepath in extra variable 2015-12-02 12:00:19 +01:00
Matthias Beyer 1e5c50bc0b Fixup: Import remove_file() 2015-12-02 12:00:19 +01:00
Matthias Beyer 0796d0ab36 Fixup: File::from_parser_result() gets module now as well 2015-12-02 12:00:19 +01:00
Matthias Beyer 9a0cc75c6f BackendOperationResult: Add optional type parameter 2015-12-02 12:00:19 +01:00
Matthias Beyer d35e89f27c Fixup: get_file_by_id() gets &Module as well, so it can use build_filepath_with_id() 2015-12-02 12:00:19 +01:00
Matthias Beyer c81800d985 Implement helpers: build_filepath_with_id(), prefix_of_files_for_module() 2015-12-02 12:00:19 +01:00
Matthias Beyer 0363075f9c Implement StorageBackend::remove_file() 2015-12-02 12:00:19 +01:00
Matthias Beyer c23a1e22ab Implement helper write_with_parser() 2015-12-02 12:00:19 +01:00
Matthias Beyer 25b26b03a6 Reimplement StorageBackend::update_file() 2015-12-02 12:00:19 +01:00