summaryrefslogtreecommitdiff |
diff options
author | nsensfel <SpamShield0@noot-noot.org> | 2018-07-11 18:39:48 +0200 |
---|---|---|
committer | nsensfel <SpamShield0@noot-noot.org> | 2018-07-11 18:39:48 +0200 |
commit | b6e8cc8606b288970d7cdf577c6dd36950adac91 (patch) | |
tree | c8388d48e7d3fb8c8622181e4f0a4376477278b4 /src/shared/struct/shr_db_item.erl | |
parent | acb9dd3220a3edcac93aa11d1d74d008e2fb23ed (diff) |
Separates read and write permissions.
Diffstat (limited to 'src/shared/struct/shr_db_item.erl')
-rw-r--r-- | src/shared/struct/shr_db_item.erl | 38 |
1 files changed, 27 insertions, 11 deletions
diff --git a/src/shared/struct/shr_db_item.erl b/src/shared/struct/shr_db_item.erl index 546462e..417e772 100644 --- a/src/shared/struct/shr_db_item.erl +++ b/src/shared/struct/shr_db_item.erl @@ -8,7 +8,8 @@ db_item, { id :: any(), - perm :: shr_db_user:permission(), + read_perm :: shr_db_user:permission(), + write_perm :: shr_db_user:permission(), val :: any() } ). @@ -25,13 +26,15 @@ -export ( [ - new/3, + new/4, get_id/1, - get_permission/1, + get_read_permission/1, + get_write_permission/1, get_value/1, - set_permission/2, + set_read_permission/2, + set_write_permission/2, set_value/2, get_id_field/0, @@ -47,26 +50,39 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec new (any(), shr_db_user:permission(), any()) -> type(). -new (ID, Permission, Value) -> +-spec new + ( + any(), + shr_db_user:permission(), + shr_db_user:permission(), + any() + ) -> type(). +new (ID, ReadPermission, WritePermission, Value) -> #db_item { id = ID, - perm = Permission, + read_perm = ReadPermission, + write_perm = WritePermission, val = Value }. -spec get_id (type()) -> any(). get_id (#db_item { id = Result }) -> Result. --spec get_permission (type()) -> shr_db_user:permission(). -get_permission (#db_item { perm = Result }) -> Result. +-spec get_read_permission (type()) -> shr_db_user:permission(). +get_read_permission (#db_item { read_perm = Result }) -> Result. + +-spec get_write_permission (type()) -> shr_db_user:permission(). +get_write_permission (#db_item { write_perm = Result }) -> Result. -spec get_value (type()) -> any(). get_value (#db_item { val = Result }) -> Result. --spec set_permission (shr_db_user:permission(), type()) -> type(). -set_permission (Perm, Item) -> Item#db_item{ perm = Perm }. +-spec set_read_permission (shr_db_user:permission(), type()) -> type(). +set_read_permission (Perm, Item) -> Item#db_item{ read_perm = Perm }. + +-spec set_write_permission (shr_db_user:permission(), type()) -> type(). +set_write_permission (Perm, Item) -> Item#db_item{ write_perm = Perm }. -spec set_value (any(), type()) -> type(). set_value (Value, Item) -> Item#db_item{ val = Value }. |