Apache2-Controller
view release on metacpan or search on metacpan
lib/Apache2/Controller/Directives.pm view on Meta::CPAN
A2C_Session_Opts LockDirectory /var/lock/sessions
},
},
{
name => 'A2C_Session_Secret',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::RAW_ARGS,
errmsg => q{
# specify a constant secret for continuity across server restarts
A2C_Session_Secret foobar
# if no parameters, server startup will generate a secret,
# but this won't work for cluster farms etc.
A2C_Session_Secret
},
},
{
name => 'A2C_Session_Always_Save',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::NO_ARGS,
errmsg => 'example: A2C_Session_Always_Save',
},
{
name => 'A2C_Session_Cookie_Opts',
func => __PACKAGE__.'::A2C_Session_Cookie_Opts',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::ITERATE2,
errmsg => q{
# specify Apache2::Cookie options for session cookie.
# example:
A2C_Session_Cookie_Opts name myapp_sessionid
A2C_Session_Cookie_Opts expires +3M
},
},
# A2C:Methods
{
name => 'A2C_Skip_Bogus_Cookies',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::NO_ARGS,
errmsg => 'example: A2C_Skip_Bogus_Cookies',
},
# A2C:DBI::Connector
{
name => 'A2C_DBI_DSN',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_DBI_DSN DBI:mysql:database=foo',
},
{
name => 'A2C_DBI_User',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_DBI_User database_username',
},
{
name => 'A2C_DBI_Password',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_DBI_Password database_password',
},
{
name => 'A2C_DBI_Options',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::ITERATE2,
errmsg => q{
# specify DBI connect() options:
A2C_DBI_Options RaiseError 1
A2C_DBI_Options AutoCommit 0
},
},
{
name => 'A2C_DBI_Cleanup',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_DBI_Cleanup 1',
},
{
name => 'A2C_DBI_Class',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_DBI_Class MyApp::DBI',
},
{
name => 'A2C_DBI_Pnotes_Name',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_DBI_Pnotes_Name reader',
},
# A2C:Auth::OpenID
{
name => 'A2C_Auth_OpenID_Login',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_Auth_OpenID_Login /myapp/login',
},
{
name => 'A2C_Auth_OpenID_Logout',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_Auth_OpenID_Logout /myapp/logout',
},
{
name => 'A2C_Auth_OpenID_Register',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_Auth_OpenID_Register /myapp/register',
},
{
name => 'A2C_Auth_OpenID_Timeout',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_Auth_OpenID_Timeout +1h',
},
{
name => 'A2C_Auth_OpenID_Table',
req_override => Apache2::Const::OR_ALL,
args_how => Apache2::Const::TAKE1,
errmsg => 'example: A2C_Auth_OpenID_Table openid',
lib/Apache2/Controller/Directives.pm view on Meta::CPAN
$self->hash_assign('A2C_Session_Cookie_Opts', $key, $val);
return;
}
=head1 Apache2::Controller::Methods
Misc. directives that apply to most A2C objects that inherit
L<Apache2::Controller::Methods>.
=head2 A2C_Skip_Bogus_Cookies
A2C_Skip_Bogus_Cookies
Takes no arguments. If present, cookie jar will be constructed
using C<< eval { } >> that skips NOTOKEN errors.
See L<Apache2::Controller::Methods/get_cookie_jar>.
=cut
sub A2C_Skip_Bogus_Cookies {
my ($self, $parms) = @_;
$self->{A2C_Skip_Bogus_Cookies} = 1;
}
=head1 Apache2::Controller::DBI::Connector
See L<Apache2::Controller::DBI::Connector>.
=head2 A2C_DBI_DSN
A2C_DBI_DSN DBI:mysql:database=foobar;host=localhost
Single argument, the DSN string. L<DBI>
=cut
sub A2C_DBI_DSN {
my ($self, $parms, $dsn) = @_;
($dsn) = $dsn =~ m{ \A (.*) \z }mxs;
$self->{A2C_DBI_DSN} = $dsn;
}
=head2 A2C_DBI_User
A2C_DBI_User heebee
Single argument, the DBI username.
=cut
sub A2C_DBI_User {
my ($self, $parms, $user) = @_;
($user) = $user =~ m{ \A (.*) \z }mxs;
$self->{A2C_DBI_User} = $user;
}
=head2 A2C_DBI_Password
A2C_DBI_Password jeebee
Single argument, the DBI password.
=cut
sub A2C_DBI_Password {
my ($self, $parms, $password) = @_;
($password) = $password =~ m{ \A (.*) \z }mxs;
$self->{A2C_DBI_Password} = $password;
}
=head2 A2C_DBI_Options
Multiple arguments.
A2C_DBI_Options RaiseError 1
A2C_DBI_Options AutoCommit 0
=cut
sub A2C_DBI_Options {
my ($self, $parms, $key, $val) = @_;
$self->hash_assign('A2C_DBI_Options', $key, $val);
return;
}
=head2 A2C_DBI_Cleanup
Boolean.
A2C_DBI_Cleanup 1
=cut
sub A2C_DBI_Cleanup {
my ($self, $parms, $val) = @_;
($val) = $val =~ m{ \A (.*) \z }mxs;
$self->{A2C_DBI_Cleanup} = $val;
return;
}
=head2 A2C_DBI_Pnotes_Name
String value.
A2C_DBI_Pnotes_Name reader
=cut
sub A2C_DBI_Pnotes_Name {
my ($self, $parms, $val) = @_;
($val) = $val =~ m{ \A (.*) \z }mxs;
$self->{A2C_DBI_Pnotes_Name} = $val;
return;
}
=head2 A2C_DBI_Class
If you subclass DBI, specify the name of your DBI subclass here.
A2C_DBI_Class MyApp::DBI
Note that this is connected with a string eval which is slow.
If you don't use it, it uses a block eval to connect DBI.
=cut
sub A2C_DBI_Class {
my ($self, $parms, $val) = @_;
( run in 0.662 second using v1.01-cache-2.11-cpan-39bf76dae61 )