diff options
| author | franck cuny <franck@lumberjaph.net> | 2010-06-08 18:01:03 +0200 |
|---|---|---|
| committer | franck cuny <franck@lumberjaph.net> | 2010-06-08 18:01:03 +0200 |
| commit | d0958fca7e5b21131857f40c1aac60a59893ed63 (patch) | |
| tree | 9d05f271ba956b366298b2739321884775130542 /lib/Net/HTTP/Console/Role/API.pm | |
| parent | role to log and write (diff) | |
| download | net-http-console-d0958fca7e5b21131857f40c1aac60a59893ed63.tar.gz | |
fix loading lib; rename print to message
Diffstat (limited to '')
| -rw-r--r-- | lib/Net/HTTP/Console/Role/API.pm | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/lib/Net/HTTP/Console/Role/API.pm b/lib/Net/HTTP/Console/Role/API.pm index c6ea1f2..cd3ba75 100644 --- a/lib/Net/HTTP/Console/Role/API.pm +++ b/lib/Net/HTTP/Console/Role/API.pm @@ -18,22 +18,30 @@ role Net::HTTP::Console::Role::API { lazy => 1, default => sub { my $self = shift; - $self->load_api_lib($self->api_lib); + $self->_load_api_lib($self->api_lib); }, ); - method load_api_lib($lib) { + method _load_api_lib($lib) { + my $api; 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 - } + $api = $lib->new(); + $api->api_base_url($self->url) if $self->has_url; + $api->api_format($self->format) if $self->has_format; + $api->api_format_mode($self->format_mode) + if $self->has_format_mode; + }catch { + $self->logger('error', "failed to load $lib: $_"); + }; + return $api if $api; + } + + method load_api_lib($lib) { + my $object = $self->_load_api_lib($lib); + $self->api_object($object); + $self->message("successfully loaded $lib"); } method new_anonymous_method ($http_method, $path) { @@ -44,7 +52,7 @@ role Net::HTTP::Console::Role::API { path => $path, ); }catch { - # XXX ERROR + $self->logger('error', "failed to add anonymous method: ".$_); } } } |
