r3086 - in
/packages/libparams-callbackrequest-perl/branches/upstream/current: Changes
META.yml Makefile.PL README lib/Params/Callback.pm
lib/Params/CallbackRequest.pm lib/Params/CallbackRequest/Exceptions.pm
t/06object_request.t
gregoa-guest at users.alioth.debian.org
gregoa-guest at users.alioth.debian.org
Sat Jun 17 15:41:14 UTC 2006
Author: gregoa-guest
Date: Sat Jun 17 15:41:10 2006
New Revision: 3086
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=3086
Log:
Load /tmp/tmp.iRMrO11258/libparams-callbackrequest-perl-1.15 into
packages/libparams-callbackrequest-perl/branches/upstream/current.
Modified:
packages/libparams-callbackrequest-perl/branches/upstream/current/Changes
packages/libparams-callbackrequest-perl/branches/upstream/current/META.yml
packages/libparams-callbackrequest-perl/branches/upstream/current/Makefile.PL
packages/libparams-callbackrequest-perl/branches/upstream/current/README
packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/Callback.pm
packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest.pm
packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest/Exceptions.pm
packages/libparams-callbackrequest-perl/branches/upstream/current/t/06object_request.t
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/Changes?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/Changes (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/Changes Sat Jun 17 15:41:10 2006
@@ -1,4 +1,9 @@
Revision history for Perl extension Params::CallbackRequest.
+
+1.15 2006-05-26T21:28:55
+ - Added the 'requester' attribute to Params::Callback. This can be
+ specified by passing the 'requester' paremter to request(), and can be
+ anything.
1.14 2006-03-02T20:07:28
- Removed an unnecessary eval block around the loading of Class::ISA
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/META.yml?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/META.yml (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/META.yml Sat Jun 17 15:41:10 2006
@@ -1,6 +1,6 @@
---
name: Params-CallbackRequest
-version: 1.14
+version: 1.15
author:
- 'David Wheeler <david at kineticode.com>'
abstract: Functional and object-oriented callback architecture
@@ -20,14 +20,14 @@
provides:
Params::Callback:
file: lib/Params/Callback.pm
- version: 1.14
+ version: 1.15
Params::CallbackRequest:
file: lib/Params/CallbackRequest.pm
- version: 1.14
+ version: 1.15
Params::CallbackRequest::Exceptions:
file: lib/Params/CallbackRequest/Exceptions.pm
- version: 1.14
-generated_by: Module::Build version 0.2707
+ version: 1.15
+generated_by: Module::Build version 0.2801
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.2.html
version: 1.2
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/Makefile.PL?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/Makefile.PL (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/Makefile.PL Sat Jun 17 15:41:10 2006
@@ -18,8 +18,9 @@
# Save this 'cause CPAN will chdir all over the place.
my $cwd = Cwd::cwd();
- CPAN::Shell->install('Module::Build::Compat')
- or die " *** Cannot install without Module::Build. Exiting ...\n";
+ CPAN::Shell->install('Module::Build::Compat');
+ CPAN::Shell->expand("Module", "Module::Build::Compat")->uptodate
+ or die "Couldn't install Module::Build, giving up.\n";
chdir $cwd or die "Cannot chdir() back to $cwd: $!";
}
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/README
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/README?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/README (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/README Sat Jun 17 15:41:10 2006
@@ -1,4 +1,4 @@
-Params/CallbackRequest version 1.14
+Params/CallbackRequest version 1.15
===================================
Params::CallbackRequest provides functional and object-oriented callbacks to
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/Callback.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/Callback.pm?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/Callback.pm (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/Callback.pm Sat Jun 17 15:41:10 2006
@@ -5,7 +5,7 @@
use Params::CallbackRequest::Exceptions (abbr => [qw(throw_bad_params)]);
use vars qw($VERSION);
-$VERSION = '1.14';
+$VERSION = '1.15';
use constant DEFAULT_PRIORITY => 5;
use constant REDIRECT => 302;
@@ -42,6 +42,7 @@
priority
cb_key
pkg_key
+ requester
trigger_key
value )) {
no strict 'refs';
@@ -50,50 +51,53 @@
*class_key = \&pkg_key;
}
-my %valid_params =
- ( cb_request =>
- { isa => 'Params::CallbackRequest',
+my %valid_params = (
+ cb_request => { isa => 'Params::CallbackRequest' },
+
+ params => {
+ type => Params::Validate::HASHREF,
},
- params =>
- { type => Params::Validate::HASHREF,
+ apache_req => {
+ isa => $ap_req_class,
+ optional => 1,
},
- apache_req =>
- { isa => $ap_req_class,
- optional => 1,
+ priority => {
+ type => Params::Validate::SCALAR,
+ callbacks => $is_num,
+ optional => 1,
+ desc => 'Priority'
},
- priority =>
- { type => Params::Validate::SCALAR,
- callbacks => $is_num,
- optional => 1,
- desc => 'Priority'
+ cb_key => {
+ type => Params::Validate::SCALAR,
+ optional => 1,
+ desc => 'Callback key'
},
- cb_key =>
- { type => Params::Validate::SCALAR,
- optional => 1,
- desc => 'Callback key'
+ pkg_key => {
+ type => Params::Validate::SCALAR,
+ optional => 1,
+ desc => 'Package key'
},
- pkg_key =>
- { type => Params::Validate::SCALAR,
- optional => 1,
- desc => 'Package key'
+ trigger_key => {
+ type => Params::Validate::SCALAR,
+ optional => 1,
+ desc => 'Trigger key'
},
- trigger_key =>
- { type => Params::Validate::SCALAR,
- optional => 1,
- desc => 'Trigger key'
+ value => {
+ optional => 1,
+ desc => 'Callback value'
},
- value =>
- { optional => 1,
- desc => 'Callback value'
- },
- );
+ requester => {
+ optional => 1,
+ desc => 'Requesting object'
+ }
+);
sub new {
my $proto = shift;
@@ -481,6 +485,15 @@
useful in a mod_perl environment, of course. Use Apache:FakeRequest in
tests to emmulate the behavior of an Apache request object.
+=head3 requester
+
+ my $r = $cb->requester;
+
+Returns the object that executed the callback by calling C<request()> on a
+Params::CallbackRequest object. Only available if the C<requester> parameter
+is passed to C<< Params::CallbackRequest->request >>. This can be useful for
+callbacks to get access to the object that executed the callbacks.
+
=head3 priority
my $priority = $cb->priority;
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest.pm?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest.pm (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest.pm Sat Jun 17 15:41:10 2006
@@ -7,7 +7,7 @@
throw_cb_exec)]);
use vars qw($VERSION);
-$VERSION = '1.14';
+$VERSION = '1.15';
BEGIN {
for my $attr (qw( default_priority
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest/Exceptions.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest/Exceptions.pm?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest/Exceptions.pm (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/lib/Params/CallbackRequest/Exceptions.pm Sat Jun 17 15:41:10 2006
@@ -2,7 +2,7 @@
use strict;
use vars qw($VERSION);
-$VERSION = '1.14';
+$VERSION = '1.15';
use Exception::Class ( 'Params::Callback::Exception' =>
{ description => 'Params::Callback exception',
Modified: packages/libparams-callbackrequest-perl/branches/upstream/current/t/06object_request.t
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libparams-callbackrequest-perl/branches/upstream/current/t/06object_request.t?rev=3086&op=diff
==============================================================================
--- packages/libparams-callbackrequest-perl/branches/upstream/current/t/06object_request.t (original)
+++ packages/libparams-callbackrequest-perl/branches/upstream/current/t/06object_request.t Sat Jun 17 15:41:10 2006
@@ -1,6 +1,6 @@
#!perl -w
-# $Id: 06object_request.t 682 2004-09-28 05:59:10Z theory $
+# $Id: 06object_request.t 2862 2006-05-26 21:28:17Z theory $
use strict;
use Test::More;
@@ -17,7 +17,7 @@
unless eval { require Attribute::Handlers }
and eval { require Class::ISA };
- plan tests => 44;
+ plan tests => 48;
$base_key = 'OOTester';
}
@@ -60,6 +60,13 @@
main::is($self->priority, 3, "Check default priority constant" );
my $params = $self->params;
$params->{chk_post} = 1;
+}
+
+sub requestit : Callback {
+ my $self = shift;
+ my $value = $self->value;
+ my $requester = $self->requester;
+ main::is ref $requester || $requester, $value, "Request is '$value'";
}
sub chk_post : PostCallback {
@@ -198,6 +205,15 @@
ok( $cb_request->request(\%params), "Execute attribute check callback" );
is( $params{result}, 'Attributes okay', "Check attribute check result" );
+##############################################################################
+# Check that requester is properly passed.
+%params = ("$base_key|requestit_cb" => 'foo');
+ok( $cb_request->request(\%params, requester => 'foo'),
+ "Execute request callback" );
+%params = ("$base_key|requestit_cb" => ref $cb_request );
+ok( $cb_request->request(\%params, requester => $cb_request ),
+ "Execute request as object callback" );
+
1;
__END__
More information about the Pkg-perl-cvs-commits
mailing list