Skip to content

Commit 64540f2

Browse files
author
Daniil Fedotov
committed
Naming
1 parent 77cf284 commit 64540f2

File tree

1 file changed

+25
-22
lines changed

1 file changed

+25
-22
lines changed

src/rabbit_plugins.erl

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
-export([validate_plugins/1, format_invalid_plugins/1]).
2525

2626
% Export for testing purpose.
27-
-export([version_support/2, validate_plugins/2]).
27+
-export([is_version_supported/2, validate_plugins/2]).
2828

2929
%%----------------------------------------------------------------------------
3030
-ifdef(use_specs).
@@ -278,10 +278,10 @@ format_invalid_plugin({Name, Errors}) ->
278278

279279
format_invalid_plugin_error({missing_dependency, Dep}) ->
280280
io_lib:format(" Dependency is missing or invalid: ~p~n", [Dep]);
281-
format_invalid_plugin_error({version_mismatch, {Version, Required}}) ->
281+
format_invalid_plugin_error({broker_version_mismatch, Version, Required}) ->
282282
io_lib:format(" Broker version is invalid."
283283
" Current version: ~p Required: ~p~n", [Version, Required]);
284-
format_invalid_plugin_error({{version_mismatch, {Version, Required}}, Name}) ->
284+
format_invalid_plugin_error({{version_mismatch, Version, Required}, Name}) ->
285285
io_lib:format(" ~p plugin version is invalid."
286286
" Current version: ~p Required: ~p~n",
287287
[Name, Version, Required]);
@@ -298,17 +298,19 @@ validate_plugins(Plugins) ->
298298

299299
validate_plugins(Plugins, RabbitVersion) ->
300300
lists:foldl(
301-
fun(#plugin{name = Name,
302-
rabbitmq_versions = RabbitmqVersions,
303-
plugins_versions = PluginsVersions} = Plugin,
301+
fun(#plugin{name = Name,
302+
broker_version_requirements = RabbitmqVersions,
303+
dependency_version_requirements = DepsVersions} = Plugin,
304304
{Plugins0, Errors}) ->
305-
case version_support(RabbitVersion, RabbitmqVersions) of
306-
{error, Err} -> {Plugins0, [{Name, [Err]} | Errors]};
307-
ok ->
308-
case check_plugins_versions(Plugins0, PluginsVersions) of
305+
case is_version_supported(RabbitVersion, RabbitmqVersions) of
306+
true ->
307+
case check_plugins_versions(Plugins0, DepsVersions) of
309308
ok -> {[Plugin | Plugins0], Errors};
310309
{error, Err} -> {Plugins0, [{Name, Err} | Errors]}
311-
end
310+
end;
311+
false ->
312+
Error = [{broker_version_mismatch, RabbitVersion, RabbitmqVersions}],
313+
{Plugins0, [{Name, Error} | Errors]}
312314
end
313315
end,
314316
{[],[]},
@@ -322,9 +324,10 @@ check_plugins_versions(AllPlugins, RequiredVersions) ->
322324
case proplists:get_value(Name, ExistingVersions) of
323325
undefined -> [{missing_dependency, Name} | Acc];
324326
Version ->
325-
case version_support(Version, Versions) of
326-
{error, Err} -> [{Err, Name} | Acc];
327-
ok -> Acc
327+
case is_version_supported(Version, Versions) of
328+
true -> Acc;
329+
false ->
330+
[{{version_mismatch, Version, Versions}, Name} | Acc]
328331
end
329332
end
330333
end,
@@ -335,16 +338,16 @@ check_plugins_versions(AllPlugins, RequiredVersions) ->
335338
_ -> {error, Problems}
336339
end.
337340

338-
version_support(_Version, []) -> ok;
339-
version_support(Version, ExpectedVersions) ->
341+
is_version_supported(_Version, []) -> true;
342+
is_version_supported(Version, ExpectedVersions) ->
340343
case lists:any(fun(ExpectedVersion) ->
341344
rabbit_misc:version_minor_equivalent(ExpectedVersion, Version)
342345
andalso
343346
rabbit_misc:version_compare(ExpectedVersion, Version, lte)
344347
end,
345348
ExpectedVersions) of
346-
true -> ok;
347-
false -> {error, {version_mismatch, {Version, ExpectedVersions}}}
349+
true -> true;
350+
false -> false
348351
end.
349352

350353
clean_plugins(Plugins) ->
@@ -419,12 +422,12 @@ mkplugin(Name, Props, Type, Location) ->
419422
Version = proplists:get_value(vsn, Props, "0"),
420423
Description = proplists:get_value(description, Props, ""),
421424
Dependencies = proplists:get_value(applications, Props, []),
422-
RabbitmqVersions = proplists:get_value(rabbitmq_versions, Props, []),
423-
PluginsVersions = proplists:get_value(plugins_versions, Props, []),
425+
RabbitmqVersions = proplists:get_value(broker_version_requirements, Props, []),
426+
DepsVersions = proplists:get_value(dependency_version_requirements, Props, []),
424427
#plugin{name = Name, version = Version, description = Description,
425428
dependencies = Dependencies, location = Location, type = Type,
426-
rabbitmq_versions = RabbitmqVersions,
427-
plugins_versions = PluginsVersions}.
429+
broker_version_requirements = RabbitmqVersions,
430+
dependency_version_requirements = DepsVersions}.
428431

429432
read_app_file(EZ) ->
430433
case zip:list_dir(EZ) of

0 commit comments

Comments
 (0)