refactor(alarm): Export transaction functions

This commit is contained in:
ieQu1 2022-08-18 12:10:34 +02:00
parent cdde392d6e
commit 5c260dfbd0
1 changed files with 16 additions and 10 deletions

View File

@ -54,6 +54,12 @@
code_change/3 code_change/3
]). ]).
%% Internal exports (RPC)
-export([
create_activate_alarm/3,
do_get_alarms/0
]).
-record(activated_alarm, { -record(activated_alarm, {
name :: binary() | atom(), name :: binary() | atom(),
details :: map() | list(), details :: map() | list(),
@ -210,7 +216,7 @@ init([]) ->
handle_call({activate_alarm, Name, Details, Message}, _From, State) -> handle_call({activate_alarm, Name, Details, Message}, _From, State) ->
Res = mria:transaction( Res = mria:transaction(
mria:local_content_shard(), mria:local_content_shard(),
fun create_activate_alarm/3, fun ?MODULE:create_activate_alarm/3,
[Name, Details, Message] [Name, Details, Message]
), ),
case Res of case Res of
@ -234,15 +240,7 @@ handle_call(delete_all_deactivated_alarms, _From, State) ->
handle_call({get_alarms, all}, _From, State) -> handle_call({get_alarms, all}, _From, State) ->
{atomic, Alarms} = {atomic, Alarms} =
mria:ro_transaction( mria:ro_transaction(
mria:local_content_shard(), mria:local_content_shard(), fun ?MODULE:do_get_alarms/0
fun() ->
[
normalize(Alarm)
|| Alarm <-
ets:tab2list(?ACTIVATED_ALARM) ++
ets:tab2list(?DEACTIVATED_ALARM)
]
end
), ),
{reply, Alarms, State, get_validity_period()}; {reply, Alarms, State, get_validity_period()};
handle_call({get_alarms, activated}, _From, State) -> handle_call({get_alarms, activated}, _From, State) ->
@ -295,6 +293,14 @@ create_activate_alarm(Name, Details, Message) ->
Alarm Alarm
end. end.
do_get_alarms() ->
[
normalize(Alarm)
|| Alarm <-
ets:tab2list(?ACTIVATED_ALARM) ++
ets:tab2list(?DEACTIVATED_ALARM)
].
deactivate_alarm( deactivate_alarm(
#activated_alarm{ #activated_alarm{
activate_at = ActivateAt, activate_at = ActivateAt,