From: Tomas Doran Date: Tue, 22 Mar 2011 09:05:28 +0000 (+0000) Subject: Version 0.17 X-Git-Tag: v0.17^0 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Plugin-SubRequest.git;a=commitdiff_plain;h=d736133542185c3be61eef907c2b582547f75b45 Version 0.17 --- diff --git a/Changes b/Changes index 7c4e0ad..e09dd5a 100644 --- a/Changes +++ b/Changes @@ -1,6 +1,9 @@ Revision history for Perl extension Catalyst::Plugin::SubRequest - - Added subrequest and subrequest_response names aliased to sub_request and sub_request_response methods +0.17 2011-03-22 09:08:00 GMT + - Added subrequest and subrequest_response names aliased to + sub_request and sub_request_response methods + - Fix RT#66126 debug mode path display bug. 0.16 2010-01-28 21:09:04 GMT - Add subreq_res to get the full Catalyst::Response back diff --git a/README b/README index 71c61f0..cebed77 100644 --- a/README +++ b/README @@ -4,23 +4,52 @@ NAME SYNOPSIS use Catalyst 'SubRequest'; - $c->subreq('/test/foo/bar', { template => 'magic.tt' }); + my $res_body = $c->subreq('/test/foo/bar', { template => 'magic.tt' }); - $c->subreq( { path => '/test/foo/bar', - body => $body }, - { template => 'magic.tt' }); + my $res_body = $c->subreq( { + path => '/test/foo/bar', + body => $body + }, { + template => 'magic.tt' + }); + + # Get the full response object + my $res = $c->subreq_res('/test/foo/bar', { + template => 'mailz.tt' + }, { + param1 => 23 + }); + $c->log->warn( $res->content_type ); DESCRIPTION Make subrequests to actions in Catalyst. Uses the catalyst dispatcher, - so it will work like an external url call. + so it will work like an external url call. Methods are provided both to + get the body of the response and the full response (Catalyst::Response) + object. METHODS subreq [path as string or hash ref], [stash as hash ref], [parameters as hash ref] + subrequest sub_request - Takes a full path to a path you'd like to dispatch to. If the path - is passed as a hash ref then it can include body, action, match and - path. Any additional parameters are put into the stash. + Takes a full path to a path you'd like to dispatch to. + + If the path is passed as a hash ref then it can include body, + action, match and path. + + An optional second argument as hashref can contain data to put into + the stash of the subrequest. + + An optional third argument as hashref can contain data to pass as + parameters to the subrequest. + + Returns the body of the response. + + subreq_res [path as string or hash ref], [stash as hash ref], + [parameters as hash ref] + subrequest_response + sub_request_response + Like "sub_request()", but returns a full Catalyst::Response object. SEE ALSO Catalyst. @@ -34,7 +63,7 @@ THANK YOU SRI, for writing the awesome Catalyst framework COPYRIGHT - Copyright (c) 2005 - 2008 the Catalyst::Plugin::SubRequest "AUTHORS" as + Copyright (c) 2005 - 2011 the Catalyst::Plugin::SubRequest "AUTHORS" as listed above. LICENSE diff --git a/lib/Catalyst/Plugin/SubRequest.pm b/lib/Catalyst/Plugin/SubRequest.pm index 65aec7e..d0767f4 100644 --- a/lib/Catalyst/Plugin/SubRequest.pm +++ b/lib/Catalyst/Plugin/SubRequest.pm @@ -4,7 +4,7 @@ use strict; use warnings; use Time::HiRes qw/tv_interval/; -our $VERSION = '0.16'; +our $VERSION = '0.17'; =head1 NAME @@ -98,6 +98,7 @@ sub sub_request_response { if (ref $path eq 'HASH') { @request_mods{keys %$path} = values %$path; + $path = $path->{path}; } else { $request_mods{path} = $path; } @@ -151,7 +152,7 @@ SRI, for writing the awesome Catalyst framework =head1 COPYRIGHT -Copyright (c) 2005 - 2008 +Copyright (c) 2005 - 2011 the Catalyst::Plugin::SubRequest L as listed above.