section config: avoid unamed boolean parameter use hash

Even with just one param it's extra work to check what it refers too,
with named ones in a hash one hasn't that issue even with many params.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht 2023-11-17 09:05:36 +01:00
parent 7d6cc4f14f
commit 7ccdc805e3
2 changed files with 11 additions and 3 deletions

View File

@ -61,7 +61,7 @@ use PVE::Tools;
# calling init with `1` as its parameter like this:
#
# ```
# PVE::Dummy::BasePlugin->init(1);
# PVE::Dummy::BasePlugin->init(property_isolation => 1);
# ```
#
# With this, each plugin get's their own isolated list of properties which it
@ -326,8 +326,16 @@ sub updateSchema {
};
}
# the %param hash controls some behavior of the section config, currently the following options are
# understood:
#
# - property_isolation: if set, each child-plugin has a fully isolated property (schema) namespace.
# By default this is off, meaning all child-plugins share the schema of properties with the same
# name. Normally one wants to use oneOf schema's when enabling isolation.
sub init {
my ($class, $property_isolation) = @_;
my ($class, %param) = @_;
my $property_isolation = $param{property_isolation};
my $pdata = $class->private();

View File

@ -172,7 +172,7 @@ use Test::More;
Conf::One->register();
Conf::Two->register();
Conf->init(1);
Conf->init(property_isolation => 1);
# FIXME: allow development debug warnings?!
local $SIG{__WARN__} = sub { die @_; };