The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

WebService::Mattermost::V4::API::Object::Role::APIMethods

DESCRIPTION

Mark methods as available for use from a result object.

USAGE

package SomeResultObj;

use Moo;

extends 'WebService::Mattermost::V4::API::Object';
with    'WebService::Mattermost::V4::API::Object::Role::APIMethods';

sub BUILD {
    my $self = shift;

    # e.g. user
    $self->api_resource_name('lower case name of the API resource');

    $self->set_available_api_methods([ qw(
        method_name
        another_method_name
        yet_another_method_name
    ) ]);
}

1;

METHODS

call()

Call an API method which is available to this class.

$object->call('method_name', {
    some => 'arguments',
});
set_available_api_methods()
$self->set_available_api_methods([ qw(foo bar baz) ]);
method_is_valid()

Checks whether the given method is set as permitted.

my $valid = $self->method_is_valid('foo'); # 1 or 0