summaryrefslogtreecommitdiff
path: root/lib/Net/HTTP/Console/Role/DefaultMethod.pm
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lib/Net/HTTP/Console/Role/DefaultMethod.pm20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/Net/HTTP/Console/Role/DefaultMethod.pm b/lib/Net/HTTP/Console/Role/DefaultMethod.pm
new file mode 100644
index 0000000..c8f858e
--- /dev/null
+++ b/lib/Net/HTTP/Console/Role/DefaultMethod.pm
@@ -0,0 +1,20 @@
+package Net::HTTP::Console::Role::DefaultMethod;
+
+use Moose::Role;
+use JSON;
+use Method::Signatures::Simple;
+use namespace::autoclean;
+
+with qw/Net::HTTP::Console::Role::HTTP/;
+
+method from_lib {
+ my $input = shift;
+ $input =~ /^(\w+)\s(.*)$/;
+ my $method = $1;
+ my $args = $2;
+ my $o = $self->lib->new();
+ my ($content, $response) = $o->$method(%{JSON::decode_json($args)});
+ $self->_set_and_show($content, $response);
+}
+
+1;