Mercurial > pub > Impl
view Lib/IMPL/Web/Handler/JSONView.pm @ 215:77a9934a44af
sync, migrating to XML::Compile
| author | cin | 
|---|---|
| date | Sun, 19 Aug 2012 22:27:43 +0400 | 
| parents | c8fe3f84feba | 
| children | 3cebcf6fdb9b | 
line wrap: on
 line source
package IMPL::Web::Handler::JSONView; use strict; use JSON; use IMPL::lang qw(:declare :constants); use IMPL::declare { base => { 'IMPL::Object' => undef, 'IMPL::Object::Serializable' => undef, 'IMPL::Object::Autofill' => '@_' } }; sub contentType { 'application/json' } sub Invoke { my ($this,$action,$next) = @_; my $result = $next ? $next->($action) : undef; $result = [$result] unless ref $result; $action->response->contentType($this->contentType); my $hout = $action->response->streamBody; print $hout JSON->new->utf8->pretty->encode($result); } 1; __END__ =pod =head1 =cut
