diff --git a/apps/mq/ibmmq/mqi/custom/api.pm b/apps/mq/ibmmq/mqi/custom/api.pm index 2451bc741..8d7343428 100644 --- a/apps/mq/ibmmq/mqi/custom/api.pm +++ b/apps/mq/ibmmq/mqi/custom/api.pm @@ -161,7 +161,7 @@ sub connect { $self->{connected} = 1; - my @results = $self->execute_command(command => 'InquireQueueManager', attrs => { QAttrs => ['QMgrName'] }); + my @results = $self->execute_command(command => 'InquireQueueManager'); $self->{qmgr_name} = $results[0]->{QMgrName}; } @@ -169,15 +169,20 @@ sub execute_command { my ($self, %options) = @_; $self->connect(); - my @results; - my $method = $self->{mq_command}->can($options{command}); - if ($method) { - @results = $self->{mq_command}->$method(%{$options{attrs}}); - if (!@results) { - $self->{output}->add_option_msg(short_msg => "method '$options{command}' issue: " . $self->{mq_command}->ReasonText()); - $self->{output}->option_exit(); - } + if ($options{command} eq 'InquireQueueManager') { + @results = $self->{mq_command}->InquireQueueManager(%{$options{attrs}}); + } elsif ($options{command} eq 'InquireQueueManagerStatus') { + @results = $self->{mq_command}->InquireQueueManagerStatus(%{$options{attrs}}); + } elsif ($options{command} eq 'InquireChannelStatus') { + @results = $self->{mq_command}->InquireChannelStatus(%{$options{attrs}}); + } elsif ($options{command} eq 'InquireQueueStatus') { + @results = $self->{mq_command}->InquireQueueStatus(%{$options{attrs}}); + } + + if (!@results) { + $self->{output}->add_option_msg(short_msg => "method '$options{command}' issue: " . $self->{mq_command}->ReasonText()); + $self->{output}->option_exit(); } return @results; diff --git a/apps/mq/ibmmq/mqi/mode/channels.pm b/apps/mq/ibmmq/mqi/mode/channels.pm index 39c8f2df9..0ac4bc935 100644 --- a/apps/mq/ibmmq/mqi/mode/channels.pm +++ b/apps/mq/ibmmq/mqi/mode/channels.pm @@ -101,7 +101,7 @@ sub manage_selection { my $result = $options{custom}->execute_command( command => 'InquireChannelStatus', - attrs => { QAttrs => 'All' } + attrs => { } ); use Data::Dumper; print Data::Dumper::Dumper($result); exit(1); diff --git a/apps/mq/ibmmq/mqi/mode/queuemanager.pm b/apps/mq/ibmmq/mqi/mode/queuemanager.pm index c84790785..fa3222f91 100644 --- a/apps/mq/ibmmq/mqi/mode/queuemanager.pm +++ b/apps/mq/ibmmq/mqi/mode/queuemanager.pm @@ -82,7 +82,7 @@ sub manage_selection { my $result = $options{custom}->execute_command( command => 'InquireQueueManagerStatus', - attrs => { QAttrs => 'All' } + attrs => { } ); use Data::Dumper; print Data::Dumper::Dumper($result); diff --git a/apps/mq/ibmmq/mqi/mode/queues.pm b/apps/mq/ibmmq/mqi/mode/queues.pm index 8baddf78b..01487c053 100644 --- a/apps/mq/ibmmq/mqi/mode/queues.pm +++ b/apps/mq/ibmmq/mqi/mode/queues.pm @@ -101,7 +101,7 @@ sub manage_selection { my $result = $options{custom}->execute_command( command => 'InquireQueueStatus', - attrs => { QAttrs => 'All' } + attrs => { QStatusAttrs => ['QName', 'CurrentQDepth', 'OpenInputCount', 'OldestMsgAge'] } ); use Data::Dumper; print Data::Dumper::Dumper($result); exit(1);