Commit graph

55 commits

Author SHA1 Message Date
a8bc7ecc47 Make FileHeaderData cloneable 2015-11-24 19:27:57 +01:00
2ed2b17b85 Refactor get_file_by_id() into smaller functions 2015-11-24 16:47:01 +01:00
1b1f0678cb Refactor: File::from_parser_result() shouldnt do error handling, do this in calling code 2015-11-24 16:34:03 +01:00
b6af948c0e Implement Storage::get_file_by_id() 2015-11-24 10:59:30 +01:00
176183e718 Refactor helpers for more fine-grained possibilities 2015-11-24 10:59:16 +01:00
4464c32b98 Add helper to build file from Parser return value 2015-11-24 10:58:54 +01:00
8808e911c8 Implement Storage::update_file() 2015-11-24 10:48:30 +01:00
14ae6d623b Refactor: Outsource filepath building 2015-11-24 10:30:52 +01:00
f498ffa54c Implement Storage::put_file() 2015-11-24 10:27:42 +01:00
616e0b789b Make Parser::write() public 2015-11-24 10:27:34 +01:00
c2135b5c6c Add getter methods for File object contents 2015-11-24 10:27:20 +01:00
da792694c5 Add StorageBackend builder 2015-11-23 19:54:08 +01:00
14d92d8b2f Add some functions to File, so we can generate file instances with content 2015-11-23 19:27:54 +01:00
91de245836 Rename function to match naming scheme 2015-11-23 19:26:02 +01:00
b8fa7c5696 Reset and restart implementation 2015-11-23 19:25:27 +01:00
e623b74139 Implement: Storage::createFile() 2015-11-23 19:17:46 +01:00
263a3b7780 Store the file handle in our internal File type 2015-11-23 19:17:46 +01:00
7faa693d5c Move implementation to get a new file on the FS
Now we have a function which creates a new file on the FS and returns
the handle and the FileID object.
2015-11-23 19:17:46 +01:00
48fd3e66f5 Add implementation for Storage::createEmpty() 2015-11-23 19:17:46 +01:00
25de1c6c2a We should use the FileID type in the File 2015-11-23 18:46:09 +01:00
bff2bf68c6 We dont need to pass the module here 2015-11-23 18:45:31 +01:00
9aced858ac Outsource file id parsing 2015-11-23 18:42:55 +01:00
b0e5f28528 Implement getFileList() 2015-11-23 18:28:24 +01:00
68c6c35f54 Add getFileList(self) to list files from basepath 2015-11-20 15:34:40 +01:00
2af5f404f4 Fix typo in StorageBackend::new() 2015-11-20 15:34:06 +01:00
e59fbd52c3 Add fn to extract id from path string 2015-11-20 15:33:24 +01:00
42ac04c1a8 Implement StorageBackend::new() 2015-11-10 20:53:35 +01:00
9cff6772c8 Implement StorageBackendError 2015-11-10 20:43:55 +01:00
f4dbec72ee Add storage/backend setup 2015-11-10 20:43:30 +01:00
159b363d58 Remove the concept of DataParser and Abstract Data types
We use String as type for Data, so we don't have problems with parsing
things and the whole templating foo in the parser gets a lot simpler.
2015-11-10 20:31:05 +01:00
e3afb3c0f3 Implement Serialization for FileHeaderData 2015-11-09 18:35:07 +01:00
e8e82f6844 Make functions public 2015-11-09 18:35:07 +01:00
fd35a00381 Implement JSON to FileHeaderData parser 2015-11-09 18:35:07 +01:00
b211862602 Add json deserializer 2015-11-09 18:35:02 +01:00
aa94852e84 Add unimplemented macro in match_header_spec() 2015-11-07 23:40:03 +01:00
d260ef20e3 Minify Parser.write() 2015-11-07 23:39:53 +01:00
44994487c6 Minify Parser.read() 2015-11-07 23:39:47 +01:00
2c940d0ca8 Add missing "pub" 2015-11-07 23:39:39 +01:00
850b4579a8 Add type "File" to load a file from disk 2015-11-07 23:39:30 +01:00
b123144202 Fix types
* We can use a str for the key name
* We don't need a box if we have a vec
2015-10-30 18:26:42 +01:00
d0af1a493b Make storage modules public 2015-10-30 18:26:42 +01:00
1c2c52fa37 Add "Map" type to FileHeaderSpec and FileHeaderData 2015-10-30 18:09:01 +01:00
9dde3e4f72 Remove path member from MatchError
At this point, this is too complicated to implement for me.
2015-10-30 17:46:25 +01:00
10697feb8a Add error generating
Which required adding of lifetimes
2015-10-30 17:35:21 +01:00
caee02c333 Add algorithm to match spec on data 2015-10-30 16:52:02 +01:00
f9cc0e41ce Implement Display for FileHeaderSpec 2015-10-30 16:50:02 +01:00
96ca9637d1 Add type MatchError 2015-10-30 16:48:48 +01:00
e6fb2f232d FileHeaderSpec, FileHeaderData can derive Debug 2015-10-30 16:47:04 +01:00
d54825de6b Move divide_text() into scope of impl Parser 2015-10-30 15:23:29 +01:00
b6d52b2616 Implement: Error, Debug, Display for ParserError 2015-10-30 15:22:11 +01:00