5
0
mirror of git://git.proxmox.com/git/pve-common.git synced 2025-02-25 21:57:42 +03:00

fixup: don't standard mapping code in mid of cmd helpers

as it teared code which belongs together apart

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht 2018-06-19 12:18:29 +02:00
parent 0da61ab3c3
commit 37f010e7c6

View File

@ -38,6 +38,34 @@ my $cmddef;
my $exename;
my $cli_handler_class;
my $standard_mappings = {
'pve-password' => {
name => 'password',
desc => '<password>',
interactive => 1,
func => sub {
my ($value) = @_;
return $value if $value;
return PVE::PTY::get_confirmed_password();
},
},
};
sub get_standard_mapping {
my ($name, $base) = @_;
my $std = $standard_mappings->{$name};
die "no such standard mapping '$name'\n" if !$std;
my $res = $base || {};
foreach my $opt (keys %$std) {
next if defined($res->{$opt});
$res->{$opt} = $std->{$opt};
}
return $res;
}
my $assert_initialized = sub {
my @caller = caller;
die "$caller[0]:$caller[2] - not initialized\n"
@ -70,35 +98,6 @@ my $get_commands = sub {
my $complete_command_names = sub { $get_commands->($cmddef) };
my $standard_mappings = {
'pve-password' => {
name => 'password',
desc => '<password>',
interactive => 1,
func => sub {
my ($value) = @_;
return $value if $value;
return PVE::PTY::get_confirmed_password();
},
},
};
sub get_standard_mapping {
my ($name, $base) = @_;
my $std = $standard_mappings->{$name};
die "no such standard mapping '$name'\n" if !$std;
my $res = $base || {};
foreach my $opt (keys %$std) {
next if defined($res->{$opt});
$res->{$opt} = $std->{$opt};
}
return $res;
}
# traverses the command definition using the $argv array, resolving one level
# of aliases.
# Returns the matching (sub) command and its definition, and argument array for