package Net::HTTP::Console::Dispatcher::Help; use MooseX::Declare; class Net::HTTP::Console::Dispatcher::Help with Net::HTTP::Console::Dispatcher { method pattern($input) { $input =~ /^help/ ? return $input : return 0; } method dispatch($input) { (my $cmd, my $cmd_name) = $input =~ /^help\s(\w+)?\s?(\w+)?/; if ($cmd) { if ($cmd eq 'command' && $cmd_name) { $self->_get_help_for_command($cmd_name); } elsif ($cmd eq 'command') { $self->_list_commands(); }elsif($cmd eq 'view') { $self->_help_about_view(); }elsif($cmd eq 'set') { $self->_help_about_set(); }elsif($cmd eq 'request') { $self->_help_about_request(); }elsif($cmd eq 'load') { $self->_help_about_load(); } } else { $self->_display_help(); } 1; } method _display_help { print <application->api_object->meta->find_net_api_method_by_name($cmd_name); if (!$method) { print "unknown method " . $cmd_name . "\n"; return; } print $method->documentation; } } 1;