NAME

Message::Passing::Role::CLIComponent - Role providing 'foo' and 'foo_options' attributes

SYNOPSIS

package My::Message::Passing::Script;
use Moose;

with
    'Message::Passing::Role::CLIComponent' => { name => 'input', default => 'STDIN' },
    qw/
        Message::Passing::Role::Script
        MooseX::Getopt
    /;

sub build_chain {
    my $self = shift;
    message_chain {
        input example => ( %{ $self->input_options }, output_to => 'test_out', class => $self->input, );
        output test_out => ( ... );
    };
}

__PACKAGE__->start unless caller;
1;

DESCRIPTION

A MooseX::Role::Parameterized role, which is used to provide a pair of attributes for name/options as per the message-pass script.

ROLE PARAMETERS

name

The name of the main attribute. An additional attribute called "${name}_options" will also be added, which coerces a hashref from JSON.

default

A default value for the main attribute. If this is not supplied, than the attribute will be required.

SPONSORSHIP

This module exists due to the wonderful people at Suretec Systems Ltd. <http://www.suretecsystems.com/> who sponsored its development for its VoIP division called SureVoIP <http://www.surevoip.co.uk/> for use with the SureVoIP API - <http://www.surevoip.co.uk/support/wiki/api_documentation>

AUTHOR, COPYRIGHT AND LICENSE

See Message::Passing.