PVE::CLIHandler::print_api_result - add $props_to_print parameter

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
This commit is contained in:
Dietmar Maurer 2018-06-25 14:42:18 +02:00 committed by Thomas Lamprecht
parent db5b22d16a
commit c1e843677d

View File

@ -540,7 +540,7 @@ sub print_api_list {
}
sub print_api_result {
my ($format, $data, $result_schema) = @_;
my ($format, $data, $result_schema, $props_to_print) = @_;
return if $result_schema->{type} eq 'null';
@ -549,14 +549,20 @@ sub print_api_result {
} elsif ($format eq 'text') {
my $type = $result_schema->{type};
if ($type eq 'object') {
foreach my $key (sort keys %$data) {
print $key . ": " . data_to_text($data->{$key}) . "\n";
if (defined($props_to_print)) {
foreach my $key (@$props_to_print) {
print $key . ": " . data_to_text($data->{$key}) . "\n";
}
} else {
foreach my $key (sort keys %$data) {
print $key . ": " . data_to_text($data->{$key}) . "\n";
}
}
} elsif ($type eq 'array') {
return if !scalar(@$data);
my $item_type = $result_schema->{items}->{type};
if ($item_type eq 'object') {
print_api_list($data, $result_schema);
print_api_list($data, $result_schema, $props_to_print);
} else {
foreach my $entry (@$data) {
print data_to_text($entry) . "\n";