Commit graph

657 commits

Author SHA1 Message Date
927205dfcc Fix test: lazy_file_with_file 2016-01-18 18:30:55 +01:00
Marcel Müller
9d0afade98 iQIcBAABCgAGBQJWnR7yAAoJEN1O030MrHbien4P/2ixFj7HRpWLZDARUTOy1f0I
E/WY5FhCD5Nx2EAu1urJhZORwAeOyJurQVjoSC8FfcayK87Co3Hw9bt9CDB5uIxt
 aQlkA5YkamSlL1FQlOmcEqBUBISGmRtXB89zWeDWscRTrHb9pAPFZmrKpnklfa5r
 Lye3dAT7yrpTsPp2HxY2ojw5qHRb5Ojp57SKvAX27bYyEjk8PIREC2ZIgk08Mw1h
 kmx2QsIvWKGGTkOoBj/Lw+rL1aW+b6E6VdVngeZ04l9qU+3JOtHUkFyfvaiJvf7V
 0HDiQIEHDjLCeZwvjVgzxBxQE/pANpMtno6y3LF99FdgfQtQy6hswaUpMilk2N9X
 Mq+kZ1bWaz6Q2Oo3GSFhWeAOgM/en1MHuxRQhjUMZVxp1tsqLo3piq5Ywi1kg/yR
 Dsxvw/AmQbkV8S77RhbIN+aRbSg6kBs6QmaAy4fVB4f+fnp6WKHIZ4yselZMtwUI
 AHVsXCvlQwmDm4BG4khJfKEd36x9hJAWnpKkNCprGhedN8QRgV7GmHZ4b3LBtODB
 UI338SX6ZyZmnYQV3mNgJ5mvzffnjZF0xup5rMLOg3SyNjKoirjYdlbb2SH7tNLp
 +EwBIJGCaFbiVFRoh1iHTvxtbKj218NPjP6ZU+UowBM5mlysRpVtCAYVGPprl+u7
 aOtLp8WQDjnf8ysBL5pk
 =ZLhc
 -----END PGP SIGNATURE-----

Use tempdir in tests
2016-01-18 18:20:50 +01:00
Marcel Müller
5d3cb4a3af iQIcBAABCgAGBQJWnRh+AAoJEN1O030MrHbiUHQQAJ3bhzz4O7qytq9X4WUkW80W
A+Dk5Oyzm4QajdMDw1lW+FJT1LHAA4q14nTKTZlCZKT0doxZYbQENrBjzhAQaKin
 kIZSrCmKulziAVLIuXGq9wmaz6CJ4kHb+GWlC82U575yIb8XBpqpIjUAwboP9xZk
 xHaGT8l9+KPMUCXd9zU3KCJHg3ZO3ckOJm0gmG4JvmvaUX+r38cgO3zwRPpdVLVW
 cnQ/aPLkaeLfP2auSdRDeVOkhcl5uWgdQcvnqTkPUb+gQUXV01WpqzoxmVhEPVv1
 kLWIGRzFEmxrNadAqJTC9AE5DBnoRM7/cge2QZ9vVtJsdcwRYwjw4qSunvPAusdb
 lXmA0+1aJPpkGMHVywNBHYq5fR89etrQBZ3Roz9LAp2eKNAsXyJYg0CT6PgzmEhp
 cPVOCHizXWwCLFRZI0zn9WSWS9EFm0H2FJDGfSDAoNPyO2RAmtu+8tXU+vgwvox+
 B3j5jEQmF8c8A+SE0Qeh7IloQWMXCfnJrgeo7sbhYq8w0WPTLhiX7BEtu3K3Nvi6
 bG00BHihvOD2wu1DiTIzPTJkP3rMK4VD6sZmXSUFjEVtzn1rN9l2hYjkyMQj/xlG
 RATEMP4TvB/eVktfZ+nFr5XtGGFAY1hsVBd5FnV874J6OHGD6zqt21lgxGCF0MUw
 cwqyKk6K+l6Ljf8UAdvx
 =Ni+I
 -----END PGP SIGNATURE-----

Add file creation
2016-01-18 17:53:18 +01:00
Homu
bec97f8fc2 Auto merge of #111 - neithernut:impl-store-delete, r=matthiasbeyer
Implement `Store::delete()`

Targets #106.
2016-01-17 10:12:30 -08:00
Julian Ganz
82ed978e90 Styling: remove some whitespace and a scope 2016-01-17 19:08:15 +01:00
Julian Ganz
e6c05e4f5b Implement Store::delete() 2016-01-17 18:50:03 +01:00
Julian Ganz
bcebe86546 Add new error type for low-level file system errors 2016-01-17 18:45:26 +01:00
Julian Ganz
78701c7332 Add error type for communicating that an entry is locked
We need this error type to let the user know when she is trying to
remove an item which is currently edited.
2016-01-17 18:45:26 +01:00
Homu
c4711d2508 Auto merge of #109 - matthiasbeyer:libimagstore/remove-unused-imports, r=matthiasbeyer
Remove unused imports

@TheNeikos
2016-01-18 00:29:49 +09:00
Julian Ganz
66daa255a9 Remove methods which are not needed anymore
These methods were intended for managing cached entries. Sice it was
decided not to serve caching in the store, these methods are no longer
needed.
2016-01-17 16:25:14 +01:00
48071fbc7b Remove unused imports 2016-01-17 16:23:35 +01:00
345e1bffeb Add Store::new() 2016-01-17 16:04:31 +01:00
Marcel Müller
6ec2b02792
Replace Option with enum of presence 2016-01-17 15:28:25 +01:00
Marcel Müller
cfc6e860b1
Add documentation to src/store.rs 2016-01-17 15:28:24 +01:00
Marcel Müller
313a0f9d7e
Add missing pub modifiers to Store impl 2016-01-17 15:28:24 +01:00
Marcel Müller
463c182bcc
Use StoreEntry instead of a tuple 2016-01-17 15:28:24 +01:00
Marcel Müller
d4c850ef17
Remove export of types 2016-01-17 15:28:24 +01:00
Marcel Müller
dcdd67db9e
Add whitespace between implementations 2016-01-17 15:28:24 +01:00
Marcel Müller
418ab5b9eb
Rename path arguments to id 2016-01-17 15:28:24 +01:00
Marcel Müller
044c19f0cc
Add storeid 2016-01-17 15:28:23 +01:00
Marcel Müller
0b7ad4e2fd
Fix inconsistency 2016-01-17 15:26:04 +01:00
Marcel Müller
34f2d4c1f1
Add Drop to FileLockEntry 2016-01-17 15:25:59 +01:00
Marcel Müller
5b1af2bebd
Add missing Debug, Clone impl 2016-01-16 19:16:41 +01:00
Marcel Müller
3c80180df0
Revert "Make "Store" a trait"
This reverts commit 912c84e663.
2016-01-16 19:04:15 +01:00
Marcel Müller
676dc9073f
Update Store and FSStore to use FileLockEntry 2016-01-16 18:32:57 +01:00
Marcel Müller
5ab6327d97
Rename read to retrieve 2016-01-16 18:29:04 +01:00
Marcel Müller
52f70e5b71
Add FileLockEntry 2016-01-16 18:25:48 +01:00
Marcel Müller
5289547873
Add missing method retrieve_copy 2016-01-16 18:25:22 +01:00
Marcel Müller
9d7f20b68e
Merge branch 'neithernut/init-libstore-alt' into add-libstore 2016-01-16 18:08:21 +01:00
Julian Ganz
70883409aa Allow to update an item multiple times 2016-01-16 15:12:10 +01:00
Julian Ganz
ba0ef701e9 Use strings correctly 2016-01-16 15:11:20 +01:00
Julian Ganz
6bb48f53f4 Add missing inclusion of SingeUseLock type 2016-01-16 15:08:01 +01:00
Julian Ganz
43b6dbec3e Pull in the modules in lib.rs 2016-01-16 15:03:24 +01:00
86e7dde4b7 Derive Debug for StoreError 2016-01-16 14:29:09 +01:00
f36615940a Do not impl Debug but derive 2016-01-16 14:26:29 +01:00
0ace28897f derive Copy in StoreErrorKind 2016-01-16 14:18:49 +01:00
e7c43c2c9d Rename: StoreErrorType -> StoreErrorKind 2016-01-16 14:09:34 +01:00
e467c1e8ec Remove StoreError::expl member 2016-01-16 14:08:39 +01:00
b74e0f713f Remove From<StoreErrorType> for String and provide private helper for that functionality 2016-01-16 14:06:55 +01:00
791995f8fc Remove "Unknown" error type 2016-01-16 13:50:10 +01:00
180eab2652 Pass error members on ::new() 2016-01-16 13:39:53 +01:00
48c3cc5f5d Introduce StoreErrorType enum for simple Error type identification 2016-01-16 13:36:19 +01:00
Julian Ganz
a7d1cdadc0 Add initial version of store interface
The interface enables users to both create and remove entries. It also
features methods for retrieval of both unlocked and lockes entries and a
method for writing back the latter one only.
2016-01-16 07:15:49 +01:00
Julian Ganz
6c2962efe9 Add trait for single unlocking of an item
Add a trait serving a lock which features only an irreversible unlocking
of an item. Such a type may be used to pass around locked items while
permitting the user to unlock them and perform any operation with a copy
of the original item.
2016-01-16 06:58:30 +01:00
3f20028bac Add interface impl for FSStore 2016-01-13 22:04:06 +01:00
912c84e663 Make "Store" a trait 2016-01-13 22:03:53 +01:00
d23e2f920d impl Drop for Store 2016-01-13 21:51:40 +01:00
92f03edf2b Add extern crate fs2 2016-01-13 21:48:24 +01:00
fff41b447a Add store-internal cache 2016-01-13 21:47:23 +01:00
4f8aacfa5a Fixup: Store type: read() should return Arc<RWLock<>>, update() should take that 2016-01-13 11:53:56 +01:00
33f097d662 Add Entry type for store 2016-01-12 18:52:47 +01:00
39fab39f97 Add modules in lib.rs 2016-01-12 18:52:47 +01:00
b1ace253c8 Add Store type for store 2016-01-12 18:52:47 +01:00
f198c5d125 Add EntryContent type for store 2016-01-12 18:52:40 +01:00
4640ae8963 Add error type for store 2016-01-12 18:52:40 +01:00
ac1dd3e7f3 Add EntryHeader type for store 2016-01-12 18:52:34 +01:00
f35029a3d0 Add: libimagstore 2016-01-09 23:51:31 +01:00