summary refs log tree commit diff
diff options
context:
space:
mode:
authorfranck cuny <franck@lumberjaph.net>2010-06-08 18:01:03 +0200
committerfranck cuny <franck@lumberjaph.net>2010-06-08 18:01:03 +0200
commitd0958fca7e5b21131857f40c1aac60a59893ed63 (patch)
tree9d05f271ba956b366298b2739321884775130542
parentrole to log and write (diff)
downloadnet-http-console-d0958fca7e5b21131857f40c1aac60a59893ed63.tar.gz
fix loading lib; rename print to message
-rw-r--r--lib/Net/HTTP/Console/Dispatcher/Help.pm58
-rw-r--r--lib/Net/HTTP/Console/Dispatcher/Set.pm4
-rw-r--r--lib/Net/HTTP/Console/Dispatcher/View.pm2
-rw-r--r--lib/Net/HTTP/Console/Role/API.pm30
-rw-r--r--lib/Net/HTTP/Console/Role/HTTP/Response.pm4
-rw-r--r--lib/Net/HTTP/Console/Role/Message.pm2
-rw-r--r--lib/Net/HTTP/Console/Role/Plugins.pm2
7 files changed, 55 insertions, 47 deletions
diff --git a/lib/Net/HTTP/Console/Dispatcher/Help.pm b/lib/Net/HTTP/Console/Dispatcher/Help.pm
index 6218676..3868d73 100644
--- a/lib/Net/HTTP/Console/Dispatcher/Help.pm
+++ b/lib/Net/HTTP/Console/Dispatcher/Help.pm
@@ -4,6 +4,10 @@ use MooseX::Declare;
 
 class Net::HTTP::Console::Dispatcher::Help with Net::HTTP::Console::Dispatcher {
 
+    method pattern($input) {
+        $input =~ /^help/ ? return $input : return 0;
+    }
+
     method dispatch($input) {
         (my $cmd, my $cmd_name) = $input =~ /^help\s(\w+)?\s?(\w+)?/;
 
@@ -29,10 +33,6 @@ class Net::HTTP::Console::Dispatcher::Help with Net::HTTP::Console::Dispatcher {
         1;
     }
 
-    method pattern($input) {
-        $input =~ /^help/ ? return $input : return 0;
-    }
-
     method _display_help {
         print <<EOF
 help command    -  help about a command
@@ -43,31 +43,6 @@ help load       -  help on how to load a lib
 EOF
     }
 
-    method _list_commands {
-        my @methods =
-          $self->application->api_object->meta->get_all_net_api_methods();
-
-        if (!@methods) {
-            print "no method available\n";
-            return;
-        }
-
-        print "available commands:\n";
-        map { print "- " . $_ . "\n" } @methods;
-    }
-
-    method _get_help_for_command($cmd_name) {
-        my $method =
-          $self->application->api_object->meta->find_net_api_method_by_name($cmd_name);
-
-        if (!$method) {
-            print "unknown method " . $cmd_name . "\n";
-            return;
-        }
-
-        print $method->documentation;
-    }
-
     method _help_about_view {
         print <<EOF
 view headers         -  show the headers of the last request
@@ -93,6 +68,31 @@ EOF
 load libname    -  load a MooseX::Net::API library
 EOF
     }
+
+    method _list_commands {
+        my @methods =
+          $self->application->api_object->meta->get_all_net_api_methods();
+
+        if (!@methods) {
+            print "no method available\n";
+            return;
+        }
+
+        print "available commands:\n";
+        map { print "- " . $_ . "\n" } @methods;
+    }
+
+    method _get_help_for_command($cmd_name) {
+        my $method =
+          $self->application->api_object->meta->find_net_api_method_by_name($cmd_name);
+
+        if (!$method) {
+            print "unknown method " . $cmd_name . "\n";
+            return;
+        }
+
+        print $method->documentation;
+    }
 }
 
 1;
diff --git a/lib/Net/HTTP/Console/Dispatcher/Set.pm b/lib/Net/HTTP/Console/Dispatcher/Set.pm
index d514f37..c72b09b 100644
--- a/lib/Net/HTTP/Console/Dispatcher/Set.pm
+++ b/lib/Net/HTTP/Console/Dispatcher/Set.pm
@@ -21,12 +21,12 @@ class Net::HTTP::Console::Dispatcher::Set with Net::HTTP::Console::Dispatcher {
 
     method _set_header($header, $value) {
         $self->application->set_header($header, $value);
-        $self->application->print("header $header set to $value");
+        $self->application->message("header $header set to $value");
     }
 
     method _unset_header($header) {
         $self->application->delete_header($header);
-        $self->application->print("header $header unset");
+        $self->application->message("header $header unset");
     }
 }
 
diff --git a/lib/Net/HTTP/Console/Dispatcher/View.pm b/lib/Net/HTTP/Console/Dispatcher/View.pm
index 5b52fc0..bfc50f0 100644
--- a/lib/Net/HTTP/Console/Dispatcher/View.pm
+++ b/lib/Net/HTTP/Console/Dispatcher/View.pm
@@ -19,7 +19,7 @@ class Net::HTTP::Console::Dispatcher::View with Net::HTTP::Console::Dispatcher {
         }
         elsif ($key eq 'defined_headers') {
             foreach ($self->application->all_headers) {
-                $self->application->print( $_->[0] . ': ' . $_->[1]);
+                $self->application->message( $_->[0] . ': ' . $_->[1]);
             }
         }
     }
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: ".$_);
         }
     }
 }
diff --git a/lib/Net/HTTP/Console/Role/HTTP/Response.pm b/lib/Net/HTTP/Console/Role/HTTP/Response.pm
index 27f6925..38e35b2 100644
--- a/lib/Net/HTTP/Console/Role/HTTP/Response.pm
+++ b/lib/Net/HTTP/Console/Role/HTTP/Response.pm
@@ -24,12 +24,12 @@ role Net::HTTP::Console::Role::HTTP::Response {
     );
 
     method _show_last_content {
-        $self->print($self->_last_http_content);
+        $self->message($self->_last_http_content);
     }
 
     method _show_last_headers {
         foreach my $k (keys %{$self->_last_http_response->headers}) {
-            $self->print("$k: ".$self->_last_http_response->header($k));
+            $self->message("$k: ".$self->_last_http_response->header($k));
         }
     }
 
diff --git a/lib/Net/HTTP/Console/Role/Message.pm b/lib/Net/HTTP/Console/Role/Message.pm
index 4b3fce6..1fcac63 100644
--- a/lib/Net/HTTP/Console/Role/Message.pm
+++ b/lib/Net/HTTP/Console/Role/Message.pm
@@ -9,7 +9,7 @@ role Net::HTTP::Console::Role::Message {
         print "[".uc($level)."] ".$message."\n";
     }
 
-    method print($message) {
+    method message($message) {
         print $message."\n";
     }
 
diff --git a/lib/Net/HTTP/Console/Role/Plugins.pm b/lib/Net/HTTP/Console/Role/Plugins.pm
index 8486cdb..07e1eeb 100644
--- a/lib/Net/HTTP/Console/Role/Plugins.pm
+++ b/lib/Net/HTTP/Console/Role/Plugins.pm
@@ -43,7 +43,7 @@ role Net::HTTP::Console::Role::Plugins {
                 last if ($result = $_->dispatch($input));
             }
         }catch{
-            $self->application->logger('error', $_);
+            $self->logger('error', $_);
         };
     }
 }