4
%% Copyright Ericsson AB 2001-2009. All Rights Reserved.
4
%% Copyright Ericsson AB 2001-2010. All Rights Reserved.
6
6
%% The contents of this file are subject to the Erlang Public License,
7
7
%% Version 1.1, (the "License"); you may not use this file except in
8
8
%% compliance with the License. You should have received a copy of the
9
9
%% Erlang Public License along with this software. If not, it can be
10
10
%% retrieved online at http://www.erlang.org/.
12
12
%% Software distributed under the License is distributed on an "AS IS"
13
13
%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
14
14
%% the License for the specific language governing rights and limitations
15
15
%% under the License.
180
180
%% Purpose: Called to change the internal state
181
181
%% Returns: {ok, NewState}
182
182
%%----------------------------------------------------------------------
183
%% code_change({down, _Vsn}, #state{conf = Conf} = State, downgrade_to_pre_3_8) ->
184
%% Port = downgrade_flex_scanner(Conf),
185
%% {ok, State#state{conf = {flex, Port}}};
184
code_change({down, _Vsn}, #state{conf = Conf} = State, downgrade_to_pre_3_13_1) ->
185
NewPorts = bump_flex_scanner(Conf),
186
{ok, State#state{conf = {flex, NewPorts}}};
188
code_change(_Vsn, #state{conf = Conf} = State, upgrade_from_pre_3_13_1) ->
189
NewPorts = bump_flex_scanner(Conf),
190
{ok, State#state{conf = {flex, NewPorts}}};
187
192
code_change(_Vsn, State, _Extra) ->
190
%% downgrade_flex_scanner({flex, Port}) when is_port(Port) ->
192
%% downgrade_flex_scanner({flex, [Port]}) when is_port(Port) ->
194
%% downgrade_flex_scanner({flex, Ports}) when is_list(Ports) ->
195
%% megaco_flex_scanner:stop(Ports),
196
%% case megaco_flex_scanner:start() of
202
%% downgrade_flex_scanner(BadConfig) ->
203
%% exit({invalid_config, BadConfig}).
195
bump_flex_scanner({flex, Ports}) ->
196
megaco_flex_scanner:stop(Ports),
197
case start_flex_scanners() of
203
bump_flex_scanner(BadConfig) ->
204
exit({invalid_config, BadConfig}).
206
207
%%%----------------------------------------------------------------------