NAME

Dancer2::RPCPlugin::DispatchMethodList - Class for maintaining a global methodlist.

SYNOPSIS

use Dancer2::RPCPlugin::DispatchMethodList;
my $methods = Dancer2::RPCPlugin::DispatchMethodList->new();

$methods->set_partial(
    protocol => <jsonrpc|restrpc|xmlrpc>,
    endpoint => </configured>,
    methods  => [ @method_names ],
);

# Somewhere else
my $dml = Dancer2::RPCPlugin::DispatchMethodList->new();
my $methods = $dml->list_methods(<any|jsonrpc|restrpc|xmlrpc>);

DESCRIPTION

This class implements a singleton that can hold the collection of all method names.

my $dml = Dancer2::RPCPlugin::DispatchMethodList->new()

Parameters

None!

Responses

$singleton = bless $parameters, $class;

$dml->set_partial(%parameters)

Parameters

Named, list:

protocol => <jsonrpc|restrpc|xmlrpc>
endpoint => $endpoint
methods => \@method_list

Responses

$self

$dml->list_methods(@parameters)

Method that returns information about the dispatch-table.

Parameters

Positional, list:

$protocol => undef || <any|jsonrpc|restrpc|xmlrpc>

Responses

In case of no $protocol:

{
    xmlrpc => {
        $endpoint1 => [ list ],
        $endpoint2 => [ list ],
    },
    jsonrpc => {
        $endpoint1 => [ list ],
        $endpoint2 => [ list ],
    },
}

In case of specified $protocol:

{
    $endpoint1 => [ list ],
    $endpoint2 => [ list ],
}

COPYRIGHT

(c) MMXXII - Abe Timmerman <abeltje@cpan.org>