group_hosts_by: Use arg list instead of arrayref
This is more idiomatic.
This commit is contained in:
parent
64af205cfc
commit
08ccc41650
2 changed files with 10 additions and 10 deletions
18
ddclient.in
18
ddclient.in
|
@ -3458,9 +3458,9 @@ sub get_ipv6 {
|
||||||
## group_hosts_by
|
## group_hosts_by
|
||||||
######################################################################
|
######################################################################
|
||||||
sub group_hosts_by {
|
sub group_hosts_by {
|
||||||
my ($hosts, $attributes) = @_;
|
my ($hosts, @attrs) = @_;
|
||||||
my %attrs = map({ ($_ => undef); } @$attributes);
|
my %attrs = map({ ($_ => undef); } @attrs);
|
||||||
my @attrs = sort(keys(%attrs));
|
@attrs = sort(keys(%attrs));
|
||||||
my %groups;
|
my %groups;
|
||||||
my $d = Data::Dumper->new([])->Indent(0)->Sortkeys(1)->Terse(1)->Useqq(1);
|
my $d = Data::Dumper->new([])->Indent(0)->Sortkeys(1)->Terse(1)->Useqq(1);
|
||||||
for my $h (@$hosts) {
|
for my $h (@$hosts) {
|
||||||
|
@ -4011,7 +4011,7 @@ EoEXAMPLE
|
||||||
######################################################################
|
######################################################################
|
||||||
sub nic_dyndns2_update {
|
sub nic_dyndns2_update {
|
||||||
debug("\nnic_dyndns2_update -------------------");
|
debug("\nnic_dyndns2_update -------------------");
|
||||||
my %groups = group_hosts_by(\@_, [qw(login password server script static custom wildcard mx backupmx wantipv4 wantipv6)]);
|
my %groups = group_hosts_by(\@_, qw(login password server script static custom wildcard mx backupmx wantipv4 wantipv6));
|
||||||
my %errors = (
|
my %errors = (
|
||||||
'badauth' => 'Bad authorization (username or password)',
|
'badauth' => 'Bad authorization (username or password)',
|
||||||
'badsys' => 'The system parameter given was not valid',
|
'badsys' => 'The system parameter given was not valid',
|
||||||
|
@ -4289,7 +4289,7 @@ sub dnsexit2_update_host {
|
||||||
######################################################################
|
######################################################################
|
||||||
sub nic_noip_update {
|
sub nic_noip_update {
|
||||||
debug("\nnic_noip_update -------------------");
|
debug("\nnic_noip_update -------------------");
|
||||||
my %groups = group_hosts_by(\@_, [qw(login password server wantipv4 wantipv6)]);
|
my %groups = group_hosts_by(\@_, qw(login password server wantipv4 wantipv6));
|
||||||
my %errors = (
|
my %errors = (
|
||||||
'badauth' => 'Invalid username or password',
|
'badauth' => 'Invalid username or password',
|
||||||
'badagent' => 'Invalid user agent',
|
'badagent' => 'Invalid user agent',
|
||||||
|
@ -4632,7 +4632,7 @@ sub nic_zoneedit1_force_update {
|
||||||
######################################################################
|
######################################################################
|
||||||
sub nic_zoneedit1_update {
|
sub nic_zoneedit1_update {
|
||||||
debug("\nnic_zoneedit1_update -------------------");
|
debug("\nnic_zoneedit1_update -------------------");
|
||||||
my %groups = group_hosts_by(\@_, [qw(login password server zone wantip)]);
|
my %groups = group_hosts_by(\@_, qw(login password server zone wantip));
|
||||||
for my $sig (keys %groups) {
|
for my $sig (keys %groups) {
|
||||||
my @hosts = @{$groups{$sig}};
|
my @hosts = @{$groups{$sig}};
|
||||||
my $hosts = join(',', @hosts);
|
my $hosts = join(',', @hosts);
|
||||||
|
@ -5996,7 +5996,7 @@ EoEXAMPLE
|
||||||
######################################################################
|
######################################################################
|
||||||
sub nic_nsupdate_update {
|
sub nic_nsupdate_update {
|
||||||
debug("\nnic_nsupdate_update -------------------");
|
debug("\nnic_nsupdate_update -------------------");
|
||||||
my %groups = group_hosts_by(\@_, [qw(login password server tcp zone wantipv4 wantipv6)]);
|
my %groups = group_hosts_by(\@_, qw(login password server tcp zone wantipv4 wantipv6));
|
||||||
for my $sig (keys %groups) {
|
for my $sig (keys %groups) {
|
||||||
my @hosts = @{$groups{$sig}};
|
my @hosts = @{$groups{$sig}};
|
||||||
my $hosts = join(',', @hosts);
|
my $hosts = join(',', @hosts);
|
||||||
|
@ -6110,7 +6110,7 @@ EoEXAMPLE
|
||||||
######################################################################
|
######################################################################
|
||||||
sub nic_cloudflare_update {
|
sub nic_cloudflare_update {
|
||||||
debug("\nnic_cloudflare_update -------------------");
|
debug("\nnic_cloudflare_update -------------------");
|
||||||
my %groups = group_hosts_by(\@_, [qw(login password)]);
|
my %groups = group_hosts_by(\@_, qw(login password));
|
||||||
for my $sig (keys %groups) {
|
for my $sig (keys %groups) {
|
||||||
my @hosts = @{$groups{$sig}};
|
my @hosts = @{$groups{$sig}};
|
||||||
my $hosts = join(',', @hosts);
|
my $hosts = join(',', @hosts);
|
||||||
|
@ -7278,7 +7278,7 @@ EoEXAMPLE
|
||||||
}
|
}
|
||||||
|
|
||||||
sub nic_cloudns_update {
|
sub nic_cloudns_update {
|
||||||
my %groups = group_hosts_by(\@_, [qw(dynurl wantip)]);
|
my %groups = group_hosts_by(\@_, qw(dynurl wantip));
|
||||||
for my $hr (values(%groups)) {
|
for my $hr (values(%groups)) {
|
||||||
my @hosts = @$hr;
|
my @hosts = @$hr;
|
||||||
my $hosts = join(',', @hosts);
|
my $hosts = join(',', @hosts);
|
||||||
|
|
|
@ -74,7 +74,7 @@ my @test_cases = (
|
||||||
);
|
);
|
||||||
|
|
||||||
for my $tc (@test_cases) {
|
for my $tc (@test_cases) {
|
||||||
my %got = ddclient::group_hosts_by([$h1, $h2, $h3], $tc->{groupby});
|
my %got = ddclient::group_hosts_by([$h1, $h2, $h3], @{$tc->{groupby}});
|
||||||
# %got is used as a set of sets. Sort everything to make comparison easier.
|
# %got is used as a set of sets. Sort everything to make comparison easier.
|
||||||
my @got = sort({
|
my @got = sort({
|
||||||
for (my $i = 0; $i < @$a && $i < @$b; ++$i) {
|
for (my $i = 0; $i < @$a && $i < @$b; ++$i) {
|
||||||
|
|
Loading…
Reference in a new issue