refactor(persistent_session): clean up code in termination

This commit is contained in:
Tobias Lindahl 2021-11-01 10:28:39 +01:00
parent bb040ed95e
commit 03309ccd7c
1 changed files with 9 additions and 5 deletions

View File

@ -1190,11 +1190,15 @@ terminate(Reason, Channel = #channel{will_msg = WillMsg}) ->
run_terminate_hook(Reason, Channel).
persist_if_session(#channel{session = Session} = Channel) ->
_ = [emqx_persistent_session:persist(Channel#channel.clientinfo,
Channel#channel.conninfo,
Channel#channel.session)
|| emqx_session:is_session(Session)],
ok.
case emqx_session:is_session(Session) of
true ->
_ = emqx_persistent_session:persist(Channel#channel.clientinfo,
Channel#channel.conninfo,
Channel#channel.session),
ok;
false ->
ok
end.
run_terminate_hook(_Reason, #channel{session = undefined}) -> ok;
run_terminate_hook(Reason, #channel{clientinfo = ClientInfo, session = Session}) ->