summary refs log tree commit diff
path: root/lib/Net/HTTP/Console/Dispatcher.pm
blob: 052e4933debeb27eec8c9ff3a9b19f15ed19df05 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package Net::HTTP::Console::Dispatcher;

use Moose::Role;

has application => (is => 'rw', isa => 'Net::HTTP::Console');

requires qw/dispatch pattern/;

around dispatch => sub {
    my $orig = shift;
    my $self = shift;
    my $in   = shift;

    if (my $r = $self->pattern($in)) {
        return $self->$orig($r);
    }else{
        return undef;
    }
};

1;