From e97449eaa8bd3a408763057f9ca2253d93e2a3d0 Mon Sep 17 00:00:00 2001 From: franck cuny Date: Fri, 16 Jul 2010 16:10:41 +0200 Subject: rename from mx::net::api to net::http::api --- lib/Net/HTTP/API/Parser/JSON.pm | 23 +++++++++++++++++++++++ lib/Net/HTTP/API/Parser/XML.pm | 30 ++++++++++++++++++++++++++++++ lib/Net/HTTP/API/Parser/YAML.pm | 23 +++++++++++++++++++++++ 3 files changed, 76 insertions(+) create mode 100644 lib/Net/HTTP/API/Parser/JSON.pm create mode 100644 lib/Net/HTTP/API/Parser/XML.pm create mode 100644 lib/Net/HTTP/API/Parser/YAML.pm (limited to 'lib/Net/HTTP/API/Parser') diff --git a/lib/Net/HTTP/API/Parser/JSON.pm b/lib/Net/HTTP/API/Parser/JSON.pm new file mode 100644 index 0000000..be8b30e --- /dev/null +++ b/lib/Net/HTTP/API/Parser/JSON.pm @@ -0,0 +1,23 @@ +package Net::HTTP::API::Parser::JSON; + +# ABSTRACT: Parse JSON + +use JSON; +use Moose; +extends 'Net::HTTP::API::Parser'; + +sub encode { + my ($self, $content) = @_; + return JSON::encode_json($content); +} + +sub decode { + my ($self, $content) = @_; + return JSON::decode_json($content); +} + +1; + +=head1 SYNOPSIS + +=head1 DESCRIPTION diff --git a/lib/Net/HTTP/API/Parser/XML.pm b/lib/Net/HTTP/API/Parser/XML.pm new file mode 100644 index 0000000..aaedfcd --- /dev/null +++ b/lib/Net/HTTP/API/Parser/XML.pm @@ -0,0 +1,30 @@ +package Net::HTTP::API::Parser::XML; + +# ABSTRACT: Parse XML result + +use XML::Simple; +use Moose; +extends 'Net::HTTP::API::Parser'; + +has _xml_parser => ( + is => 'rw', + isa => 'XML::Simple', + lazy => 1, + default => sub { XML::SImple->new(ForceArray => 0) } +); + +sub encode { + my ($self, $content) = @_; + return $self->_xml_parser->XMLin($content); +} + +sub decode { + my ($self, $content) = @_; + return $self->_xml_parser->XMLout($content); +} + +1; + +=head1 SYNOPSIS + +=head1 DESCRIPTION diff --git a/lib/Net/HTTP/API/Parser/YAML.pm b/lib/Net/HTTP/API/Parser/YAML.pm new file mode 100644 index 0000000..f18593a --- /dev/null +++ b/lib/Net/HTTP/API/Parser/YAML.pm @@ -0,0 +1,23 @@ +package Net::HTTP::API::Parser::YAML; + +# ABSTRACT: Parse YAML + +use YAML::Syck; +use Moose; +extends 'Net::HTTP::API::Parser'; + +sub encode { + my ($self, $content) = @_; + return Dump($content); +} + +sub decode { + my ($self, $content) = @_; + return Load($content); +} + +1; + +=head1 SYNOPSIS + +=head1 DESCRIPTION -- cgit v1.2.3