From e93d262aabcf66e9c103dccb5a4a3eeb00316aee Mon Sep 17 00:00:00 2001 From: franck cuny Date: Tue, 8 Jun 2010 17:30:55 +0200 Subject: add dispatcher for viewing content; update help --- lib/Net/HTTP/Console/Role/API.pm | 34 ++++++++++++++++++++++------------ lib/Net/HTTP/Console/Role/Plugins.pm | 4 ++-- 2 files changed, 24 insertions(+), 14 deletions(-) (limited to 'lib/Net/HTTP/Console/Role') diff --git a/lib/Net/HTTP/Console/Role/API.pm b/lib/Net/HTTP/Console/Role/API.pm index 0b99796..c6ea1f2 100644 --- a/lib/Net/HTTP/Console/Role/API.pm +++ b/lib/Net/HTTP/Console/Role/API.pm @@ -4,6 +4,8 @@ use MooseX::Declare; role Net::HTTP::Console::Role::API { + use Try::Tiny; + has api_lib => ( isa => 'Str', is => 'rw', @@ -21,21 +23,29 @@ role Net::HTTP::Console::Role::API { ); method load_api_lib($lib) { - Class::MOP::load_class($lib); - $self->api_lib($lib); - my $o = $lib->new(); - $o->api_base_url($self->url) if $self->has_url; - $o->api_format($self->format) if $self->has_format; - $o->api_format_mode($self->format_mode) if $self->has_format_mode; - $o; + try { + Class::MOP::load_class($lib); + $self->api_lib($lib); + my $o = $lib->new(); + $o->api_base_url($self->url) if $self->has_url; + $o->api_format($self->format) if $self->has_format; + $o->api_format_mode($self->format_mode) if $self->has_format_mode; + $o; + }catch{ + # XXX ERROR + } } method new_anonymous_method ($http_method, $path) { - $self->api_object->meta->add_net_api_method( - 'anonymous', - method => $http_method, - path => $path, - ); + try { + $self->api_object->meta->add_net_api_method( + 'anonymous', + method => $http_method, + path => $path, + ); + }catch { + # XXX ERROR + } } } diff --git a/lib/Net/HTTP/Console/Role/Plugins.pm b/lib/Net/HTTP/Console/Role/Plugins.pm index d7bf7b5..2bddccd 100644 --- a/lib/Net/HTTP/Console/Role/Plugins.pm +++ b/lib/Net/HTTP/Console/Role/Plugins.pm @@ -5,7 +5,7 @@ use MooseX::Declare; role Net::HTTP::Console::Role::Plugins { use Try::Tiny; - + has dispatchers => ( is => 'rw', isa => 'ArrayRef[Str]', @@ -13,7 +13,7 @@ role Net::HTTP::Console::Role::Plugins { lazy => 1, auto_deref => 1, default => sub { - [qw/Load HTTP Help Method Set/], + [qw/Load HTTP Help Method Set View/], } ); -- cgit 1.4.1