From e71a441a81f6f1d7e61fdb3c07e2f48ee10ba97d Mon Sep 17 00:00:00 2001 From: franck cuny Date: Tue, 8 Jun 2010 15:31:32 +0200 Subject: move code to appropriate role --- lib/Net/HTTP/Console.pm | 20 -------------------- lib/Net/HTTP/Console/Dispatcher/HTTP.pm | 1 - lib/Net/HTTP/Console/Role/API.pm | 7 +++++++ lib/Net/HTTP/Console/Role/Plugins.pm | 13 +++++++++++++ 4 files changed, 20 insertions(+), 21 deletions(-) diff --git a/lib/Net/HTTP/Console.pm b/lib/Net/HTTP/Console.pm index 2036b47..eef3ba8 100644 --- a/lib/Net/HTTP/Console.pm +++ b/lib/Net/HTTP/Console.pm @@ -4,7 +4,6 @@ our $VERSION = 0.01; use MooseX::Declare; class Net::HTTP::Console { - use Try::Tiny; with 'MooseX::Getopt'; with 'Net::HTTP::Console::Role::Headers'; @@ -16,25 +15,6 @@ class Net::HTTP::Console { has url => (isa => 'Str', is => 'rw', predicate => 'has_url'); has format => (isa => 'Str', is => 'rw', predicate => 'has_format'); has format_mode => (isa => 'Str', is => 'rw', predicate => 'has_format_mode'); - - method dispatch ($input) { - my $result; - try { - foreach ($self->all_plugins) { - last if ($result = $_->dispatch($input)); - } - }catch{ - print "[ERROR]: ".$_; - }; - } - - method new_anonymous_method ($http_method, $path) { - $self->api_object->meta->add_net_api_method( - 'anonymous', - method => $http_method, - path => $path, - ); - } } 1; diff --git a/lib/Net/HTTP/Console/Dispatcher/HTTP.pm b/lib/Net/HTTP/Console/Dispatcher/HTTP.pm index 789c04c..5dc5719 100644 --- a/lib/Net/HTTP/Console/Dispatcher/HTTP.pm +++ b/lib/Net/HTTP/Console/Dispatcher/HTTP.pm @@ -30,7 +30,6 @@ class Net::HTTP::Console::Dispatcher::HTTP with Net::HTTP::Console::Dispatcher { return 1; } - method _do_request($http_method, $path) { $self->application->new_anonymous_method($http_method, $path); try { diff --git a/lib/Net/HTTP/Console/Role/API.pm b/lib/Net/HTTP/Console/Role/API.pm index f9abc30..0b99796 100644 --- a/lib/Net/HTTP/Console/Role/API.pm +++ b/lib/Net/HTTP/Console/Role/API.pm @@ -30,6 +30,13 @@ role Net::HTTP::Console::Role::API { $o; } + method new_anonymous_method ($http_method, $path) { + $self->api_object->meta->add_net_api_method( + 'anonymous', + method => $http_method, + path => $path, + ); + } } 1; diff --git a/lib/Net/HTTP/Console/Role/Plugins.pm b/lib/Net/HTTP/Console/Role/Plugins.pm index a3136f2..d7bf7b5 100644 --- a/lib/Net/HTTP/Console/Role/Plugins.pm +++ b/lib/Net/HTTP/Console/Role/Plugins.pm @@ -4,6 +4,8 @@ use MooseX::Declare; role Net::HTTP::Console::Role::Plugins { + use Try::Tiny; + has dispatchers => ( is => 'rw', isa => 'ArrayRef[Str]', @@ -33,6 +35,17 @@ role Net::HTTP::Console::Role::Plugins { \@p; }, ); + + method dispatch ($input) { + my $result; + try { + foreach ($self->all_plugins) { + last if ($result = $_->dispatch($input)); + } + }catch{ + print "[ERROR]: ".$_; + }; + } } 1; -- cgit 1.4.1