[Jifty-commit] jifty branch, master, updated. 0007d4b45b203b661bb9a2310561beb93857d2c3
Jifty commits
jifty-commit at lists.jifty.org
Sun May 2 13:15:28 EDT 2010
The branch, master has been updated
via 0007d4b45b203b661bb9a2310561beb93857d2c3 (commit)
via 1d28d8d93e33d2941f7930cad03de4b3c2fd8e8d (commit)
from dd59d97f0e4eaf1daf7d95f88dda901ced83c9ab (commit)
Summary of changes:
lib/Jifty/Plugin/REST/Dispatcher.pm | 18 ++++++++++++++----
1 files changed, 14 insertions(+), 4 deletions(-)
- Log -----------------------------------------------------------------
commit 1d28d8d93e33d2941f7930cad03de4b3c2fd8e8d
Author: Chia-liang Kao <clkao at clkao.org>
Date: Mon May 3 00:56:24 2010 +0800
restore xml freezer as it's still used by outs()
diff --git a/lib/Jifty/Plugin/REST/Dispatcher.pm b/lib/Jifty/Plugin/REST/Dispatcher.pm
index 6b32289..e55a023 100644
--- a/lib/Jifty/Plugin/REST/Dispatcher.pm
+++ b/lib/Jifty/Plugin/REST/Dispatcher.pm
@@ -257,6 +257,7 @@ sub output_format2 {
format => 'XML',
extension => 'xml',
content_type => 'text/xml; charset=UTF-8',
+ freezer => \&render_as_xml,
freezer_stream => \&render_as_xml_stream,
};
}
@@ -308,6 +309,11 @@ Attempts to render DATASTRUCTURE as simple, tag-based XML.
=cut
+sub render_as_xml {
+ my $content = shift;
+ return render_as_xml_stream(undef, $content);
+}
+
sub render_as_xml_stream {
my ($writer, $content) = @_;
commit 0007d4b45b203b661bb9a2310561beb93857d2c3
Author: Chia-liang Kao <clkao at clkao.org>
Date: Mon May 3 00:59:26 2010 +0800
encode for streamy output.
diff --git a/lib/Jifty/Plugin/REST/Dispatcher.pm b/lib/Jifty/Plugin/REST/Dispatcher.pm
index e55a023..42294ce 100644
--- a/lib/Jifty/Plugin/REST/Dispatcher.pm
+++ b/lib/Jifty/Plugin/REST/Dispatcher.pm
@@ -1005,16 +1005,20 @@ sub run_action_stream {
my $res = $action->result->as_hash;
if ( $format->{freezer_stream} ) {
- my $w = Plack::Util::inline_object(%$writer,
- print => sub { $writer->write(@_)});
+ my $w = Plack::Util::inline_object
+ (%$writer,
+ print => sub {
+ $writer->write(map { Encode::is_utf8($_)
+ ? Encode::encode('utf8', $_) : $_ } @_ );
+ });
$format->{freezer_stream}->($w, $res);
$writer->close;
return;
}
for ($format->{freezer}->($res)) {
- Encode::_utf8_off($_);
- $writer->write($_);
+ $writer->write(Encode::is_utf8($_)
+ ? Encode::encode('utf8', $_) : $_);
}
$writer->close;
};
-----------------------------------------------------------------------
More information about the Jifty-commit
mailing list