summaryrefslogtreecommitdiff
path: root/src/perm.erl
blob: e571d2363ee15d024dc6ea4102dc73fa2460a1d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
%%% Copyright (c) 2015,2017, NORDUnet A/S.
%%% See LICENSE for licensing information.

-module(perm).

-export([start_link/2, stop/1, init_module/0]).
-export([getvalue/2, addvalue/3, commit/1, commit/2]).

start_link(Name, Filename) ->
    Module = application:get_env(plop, db_backend, fsdb),
    Options = application:get_env(plop, db_backend_opt, []),
    Module:start_link(Name, Filename, Options).

stop(Name) ->
    Module = application:get_env(plop, db_backend, fsdb),
    Module:stop(Name).

init_module() ->
    Module = application:get_env(plop, db_backend, fsdb),
    Module:init_module().

getvalue(Name, Key) ->
    Module = application:get_env(plop, db_backend, fsdb),
    Module:getvalue(Name, Key).

addvalue(Name, Key, Value) ->
    Module = application:get_env(plop, db_backend, fsdb),
    Module:addvalue(Name, Key, Value).

commit(Name) ->
    Module = application:get_env(plop, db_backend, fsdb),
    Module:commit(Name).

commit(Name, Timeout) ->
    Module = application:get_env(plop, db_backend, fsdb),
    Module:commit(Name, Timeout).