Remove resume_session/1,
This commit is contained in:
parent
7c14ba11d6
commit
3cea06f88f
|
@ -47,7 +47,7 @@
|
||||||
-export([info/1, attrs/1]).
|
-export([info/1, attrs/1]).
|
||||||
-export([stats/1]).
|
-export([stats/1]).
|
||||||
-export([resume/2, discard/2]).
|
-export([resume/2, discard/2]).
|
||||||
-export([update_expiry_interval/2, update_misc/2]).
|
-export([update_expiry_interval/2]).
|
||||||
-export([subscribe/2, subscribe/4]).
|
-export([subscribe/2, subscribe/4]).
|
||||||
-export([publish/3]).
|
-export([publish/3]).
|
||||||
-export([puback/2, puback/3]).
|
-export([puback/2, puback/3]).
|
||||||
|
@ -324,9 +324,6 @@ discard(SPid, ByPid) ->
|
||||||
update_expiry_interval(SPid, Interval) ->
|
update_expiry_interval(SPid, Interval) ->
|
||||||
gen_server:cast(SPid, {expiry_interval, Interval}).
|
gen_server:cast(SPid, {expiry_interval, Interval}).
|
||||||
|
|
||||||
update_misc(SPid, Misc) ->
|
|
||||||
gen_server:cast(SPid, {update_misc, Misc}).
|
|
||||||
|
|
||||||
-spec(close(spid()) -> ok).
|
-spec(close(spid()) -> ok).
|
||||||
close(SPid) ->
|
close(SPid) ->
|
||||||
gen_server:call(SPid, close, infinity).
|
gen_server:call(SPid, close, infinity).
|
||||||
|
@ -519,7 +516,9 @@ handle_cast({pubcomp, PacketId, _ReasonCode}, State = #state{inflight = Inflight
|
||||||
%% RESUME:
|
%% RESUME:
|
||||||
handle_cast({resume, #{conn_pid := ConnPid,
|
handle_cast({resume, #{conn_pid := ConnPid,
|
||||||
will_msg := WillMsg,
|
will_msg := WillMsg,
|
||||||
expiry_interval := SessionExpiryInterval}}, State = #state{client_id = ClientId,
|
expiry_interval := SessionExpiryInterval,
|
||||||
|
max_inflight := MaxInflight,
|
||||||
|
topic_alias_maximum := TopicAliasMaximum}}, State = #state{client_id = ClientId,
|
||||||
conn_pid = OldConnPid,
|
conn_pid = OldConnPid,
|
||||||
clean_start = CleanStart,
|
clean_start = CleanStart,
|
||||||
retry_timer = RetryTimer,
|
retry_timer = RetryTimer,
|
||||||
|
@ -548,6 +547,8 @@ handle_cast({resume, #{conn_pid := ConnPid,
|
||||||
await_rel_timer = undefined,
|
await_rel_timer = undefined,
|
||||||
expiry_timer = undefined,
|
expiry_timer = undefined,
|
||||||
expiry_interval = SessionExpiryInterval,
|
expiry_interval = SessionExpiryInterval,
|
||||||
|
inflight = emqx_inflight:update_size(MaxInflight, State#state.inflight),
|
||||||
|
topic_alias_maximum = TopicAliasMaximum,
|
||||||
will_delay_timer = undefined,
|
will_delay_timer = undefined,
|
||||||
will_msg = WillMsg},
|
will_msg = WillMsg},
|
||||||
|
|
||||||
|
@ -562,10 +563,6 @@ handle_cast({resume, #{conn_pid := ConnPid,
|
||||||
handle_cast({expiry_interval, Interval}, State) ->
|
handle_cast({expiry_interval, Interval}, State) ->
|
||||||
{noreply, State#state{expiry_interval = Interval}};
|
{noreply, State#state{expiry_interval = Interval}};
|
||||||
|
|
||||||
handle_cast({update_misc, #{max_inflight := MaxInflight, topic_alias_maximum := TopicAliasMaximum}}, State) ->
|
|
||||||
{noreply, State#state{inflight = emqx_inflight:update_size(MaxInflight, State#state.inflight),
|
|
||||||
topic_alias_maximum = TopicAliasMaximum}};
|
|
||||||
|
|
||||||
handle_cast(Msg, State) ->
|
handle_cast(Msg, State) ->
|
||||||
emqx_logger:error("[Session] unexpected cast: ~p", [Msg]),
|
emqx_logger:error("[Session] unexpected cast: ~p", [Msg]),
|
||||||
{noreply, State}.
|
{noreply, State}.
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
|
|
||||||
-export([open_session/1, close_session/1]).
|
-export([open_session/1, close_session/1]).
|
||||||
-export([lookup_session/1, lookup_session_pid/1]).
|
-export([lookup_session/1, lookup_session_pid/1]).
|
||||||
-export([resume_session/1, resume_session/2]).
|
-export([resume_session/2]).
|
||||||
-export([discard_session/1, discard_session/2]).
|
-export([discard_session/1, discard_session/2]).
|
||||||
-export([register_session/2, unregister_session/1]).
|
-export([register_session/2, unregister_session/1]).
|
||||||
-export([get_session_attrs/1, set_session_attrs/2]).
|
-export([get_session_attrs/1, set_session_attrs/2]).
|
||||||
|
@ -66,7 +66,6 @@ open_session(SessAttrs = #{clean_start := false,
|
||||||
ResumeStart = fun(_) ->
|
ResumeStart = fun(_) ->
|
||||||
case resume_session(ClientId, SessAttrs) of
|
case resume_session(ClientId, SessAttrs) of
|
||||||
{ok, SPid} ->
|
{ok, SPid} ->
|
||||||
emqx_session:update_misc(SPid, #{max_inflight => MaxInflight, topic_alias_maximum => TopicAliasMaximum}),
|
|
||||||
{ok, SPid, true};
|
{ok, SPid, true};
|
||||||
{error, not_found} ->
|
{error, not_found} ->
|
||||||
emqx_session_sup:start_session(SessAttrs)
|
emqx_session_sup:start_session(SessAttrs)
|
||||||
|
@ -89,10 +88,7 @@ discard_session(ClientId, ConnPid) when is_binary(ClientId) ->
|
||||||
end, lookup_session(ClientId)).
|
end, lookup_session(ClientId)).
|
||||||
|
|
||||||
%% @doc Try to resume a session.
|
%% @doc Try to resume a session.
|
||||||
-spec(resume_session(emqx_types:client_id()) -> {ok, pid()} | {error, term()}).
|
-spec(resume_session(emqx_types:client_id(), map()) -> {ok, pid()} | {error, term()}).
|
||||||
resume_session(ClientId) ->
|
|
||||||
resume_session(ClientId, #{conn_pid => self(), will_msg => undefined}).
|
|
||||||
|
|
||||||
resume_session(ClientId, SessAttrs = #{conn_pid := ConnPid}) ->
|
resume_session(ClientId, SessAttrs = #{conn_pid := ConnPid}) ->
|
||||||
case lookup_session(ClientId) of
|
case lookup_session(ClientId) of
|
||||||
[] -> {error, not_found};
|
[] -> {error, not_found};
|
||||||
|
|
Loading…
Reference in New Issue