From 8851c50a45cfbe26aa8e7fdff7f33d39c5344814 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Mon, 25 Jul 2016 16:10:34 +0100 Subject: [PATCH] Bug 16586: Simplify code using none Signed-off-by: Jonathan Druart --- Koha/Plugins.pm | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/Koha/Plugins.pm b/Koha/Plugins.pm index d3eddcf..dcfd32f 100644 --- a/Koha/Plugins.pm +++ b/Koha/Plugins.pm @@ -21,6 +21,7 @@ use Modern::Perl; use Module::Load::Conditional qw(can_load); use Module::Pluggable search_path => ['Koha::Plugin'], except => qr/::Edifact(|::Line|::Message|::Order|::Segment|::Transport)$/; +use List::MoreUtils qw( none ); use C4::Context; use C4::Output; @@ -76,17 +77,12 @@ sub GetPlugins { my $plugin = $plugin_class->new({ enable_plugins => $self->{'enable_plugins'} }); # Limit results by method or metadata - my $ok = 1; next if $method && !$plugin->can($method); my $plugin_metadata = $plugin->get_metadata; - foreach my $key ( keys %$req_metadata ) { - if( !$plugin_metadata->{$key} || - $plugin_metadata->{$key} ne $req_metadata->{$key} ) { - $ok = 0; - last; - } - } - push( @plugins, $plugin ) if $ok; + next if $plugin_metadata + and %$req_metadata + and none { exists $plugin_metadata->{$_} and $plugin_metadata->{$_} eq $req_metadata->{$_} } keys %$req_metadata; + push @plugins, $plugin; } } return @plugins; -- 2.8.1