Why not adopt me?
NAME
Querylet::Input - generic input handler for Querlet::Query
VERSION
version 0.400
SYNOPSIS
This is an abstract base class, meant for subclassing.
package Querylet::Input::Term;
use base qw(Querylet::Input);
sub default_type { 'term' }
sub handler { \&from_term }
sub from_term {
my ($query, $parameter) = @_;
print "$parameter: ";
my $input = <STDIN>;
chomp $input;
$query->{input}->{$parameter} = $input;
}
1;
Then, in a querylet:
use Querylet::Input::Term
query: SELECT * FROM users WHERE userid = ?
input: userid
Or, to override the registered type:
use Querylet::Input::Term 'stdin';
output format: stdin
DESCRIPTION
This class provides a simple way to write input handlers for Querylet, mostly by providing an import routine that will register the handler with the type-name requested by the using script.
The methods default_type
and handler
must exist, as described below.
IMPORT
Querylet::Input provides an import
method that will register the handler when the module is imported. If an argument is given, it will be used as the type name to register. Otherwise, the result of default_type
is used.
METHODS
- default_type
-
This method returns the name of the type for which the input handler will be registered if no override is given.
- handler
-
This method returns a reference to the handler, which will be used to register the handler.
AUTHOR
Ricardo SIGNES <rjbs@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2004 by Ricardo SIGNES.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.