mirror of
https://git.proxmox.com/git/pve-common
synced 2025-08-05 00:29:51 +00:00
PVE::RESTHandler::generate_usage_str - new static method to generate usage from $info
This is useful to generate usage information with pveclient, where we do not have handler classes at all. Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
This commit is contained in:
parent
c850b99883
commit
c03b750906
@ -566,7 +566,7 @@ my $compute_param_mapping_hash = sub {
|
||||
|
||||
# generate usage information for command line tools
|
||||
#
|
||||
# $name ... the name of the method
|
||||
# $info ... method info
|
||||
# $prefix ... usually something like "$exename $cmd" ('pvesm add')
|
||||
# $arg_param ... list of parameters we want to get as ordered arguments
|
||||
# on the command line (or single parameter name for lists)
|
||||
@ -577,13 +577,13 @@ my $compute_param_mapping_hash = sub {
|
||||
# 'full' ... text, include description
|
||||
# 'asciidoc' ... generate asciidoc for man pages (like 'full')
|
||||
# $param_cb ... mapping for string parameters to file path parameters
|
||||
sub usage_str {
|
||||
my ($self, $name, $prefix, $arg_param, $fixed_param, $format, $param_cb) = @_;
|
||||
sub getopt_usage {
|
||||
my ($info, $prefix, $arg_param, $fixed_param, $format, $param_cb) = @_;
|
||||
|
||||
$format = 'long' if !$format;
|
||||
|
||||
my $info = $self->map_method_by_name($name);
|
||||
my $schema = $info->{parameters};
|
||||
my $name = $info->{name};
|
||||
my $prop = $schema->{properties};
|
||||
|
||||
my $out = '';
|
||||
@ -679,6 +679,14 @@ sub usage_str {
|
||||
return $out;
|
||||
}
|
||||
|
||||
sub usage_str {
|
||||
my ($self, $name, $prefix, $arg_param, $fixed_param, $format, $param_cb) = @_;
|
||||
|
||||
my $info = $self->map_method_by_name($name);
|
||||
|
||||
return getopt_usage($info, $prefix, $arg_param, $fixed_param, $format, $param_cb);
|
||||
}
|
||||
|
||||
# generate docs from JSON schema properties
|
||||
sub dump_properties {
|
||||
my ($prop, $format, $style, $filterFn) = @_;
|
||||
|
Loading…
Reference in New Issue
Block a user