rename args to driverconf
This commit is contained in:
@@ -13,45 +13,45 @@ Dancer::Factory::Hook->instance->install_hooks(
|
|||||||
);
|
);
|
||||||
|
|
||||||
register 'register_core_driver' => sub {
|
register 'register_core_driver' => sub {
|
||||||
my ($self, $args, $code) = @_;
|
my ($self, $driverconf, $code) = @_;
|
||||||
return error "bad param to register_core_driver"
|
return error "bad param to register_core_driver"
|
||||||
unless (ref sub {} eq ref $code) and (ref {} eq ref $args)
|
unless ((ref sub {} eq ref $code) and (ref {} eq ref $driverconf)
|
||||||
and exists $args->{phase} and exists $args->{driver}
|
and exists $driverconf->{phase} and exists $driverconf->{driver}
|
||||||
and Dancer::Factory::Hook->instance->hook_is_registered($args->{phase});
|
and Dancer::Factory::Hook->instance->hook_is_registered($driverconf->{phase}));
|
||||||
|
|
||||||
my $no = (exists $args->{no} ? $args->{no} : undef);
|
my $no = (exists $driverconf->{no} ? $driverconf->{no} : undef);
|
||||||
my $only = (exists $args->{only} ? $args->{only} : undef);
|
my $only = (exists $driverconf->{only} ? $driverconf->{only} : undef);
|
||||||
$args->{plugin} = (caller)[0];
|
$driverconf->{plugin} = (caller)[0];
|
||||||
|
|
||||||
my $hook = sub {
|
my $hook = sub {
|
||||||
my ($device, $userconf) = @_;
|
my ($device, $userconf) = @_;
|
||||||
return false unless (ref $device and (ref {} eq ref $userconf));
|
return false unless (ref $device and (ref {} eq ref $userconf));
|
||||||
|
|
||||||
# first check internal (args) exclusion/inclusion criteria
|
# first check internal (driverconf) exclusion/inclusion criteria
|
||||||
return false if ($no and check_acl_no($device, $no));
|
return false if ($no and check_acl_no($device, $no));
|
||||||
return false if ($only and not (exists $userconf->{driver})
|
return false if ($only and not (exists $userconf->{driver})
|
||||||
and not check_acl_only($device, $only));
|
and not check_acl_only($device, $only));
|
||||||
|
|
||||||
# then check external (userconf) exclusion/inclusion criteria
|
# then check external (userconf) exclusion/inclusion criteria
|
||||||
return false if exists $userconf->{phase}
|
return false if exists $userconf->{phase}
|
||||||
and (($userconf->{phase} || '') ne $args->{phase});
|
and (($userconf->{phase} || '') ne $driverconf->{phase});
|
||||||
|
|
||||||
return false if exists $userconf->{driver}
|
return false if exists $userconf->{driver}
|
||||||
and (($userconf->{driver} || '') ne $args->{driver});
|
and (($userconf->{driver} || '') ne $driverconf->{driver});
|
||||||
|
|
||||||
return false if exists $userconf->{plugin}
|
return false if exists $userconf->{plugin}
|
||||||
and (($userconf->{plugin} || '') ne $args->{plugin});
|
and (($userconf->{plugin} || '') ne $driverconf->{plugin});
|
||||||
|
|
||||||
my $happy = false;
|
my $happy = false;
|
||||||
try {
|
try {
|
||||||
$code->($device, $args, $userconf);
|
$code->($device, $driverconf, $userconf);
|
||||||
$happy = true;
|
$happy = true;
|
||||||
}
|
}
|
||||||
catch { debug $_ };
|
catch { debug $_ };
|
||||||
return $happy;
|
return $happy;
|
||||||
};
|
};
|
||||||
|
|
||||||
Dancer::Factory::Hook->instance->register_hook($args->{phase}, $hook);
|
Dancer::Factory::Hook->instance->register_hook($driverconf->{phase}, $hook);
|
||||||
};
|
};
|
||||||
|
|
||||||
register_plugin;
|
register_plugin;
|
||||||
@@ -103,7 +103,7 @@ C<App::Netdisco::Core::Plugin::Discover::WirelessServices::UniFi> package.
|
|||||||
|
|
||||||
If an entry in the list starts with a "C<+>" (plus) sign then Netdisco attemps
|
If an entry in the list starts with a "C<+>" (plus) sign then Netdisco attemps
|
||||||
to load the module as-is, without prepending anything to the name. This allows
|
to load the module as-is, without prepending anything to the name. This allows
|
||||||
you to have App::Netdiso web UI plugins in other namespaces.
|
you to have App::Netdiso Core plugins in other namespaces.
|
||||||
|
|
||||||
Plugin modules can either ship with the App::Netdisco distribution itself, or
|
Plugin modules can either ship with the App::Netdisco distribution itself, or
|
||||||
be installed separately. Perl uses the standard C<@INC> path searching
|
be installed separately. Perl uses the standard C<@INC> path searching
|
||||||
|
|||||||
Reference in New Issue
Block a user