Scroll to navigation

Data::Session::Driver::Oracle(3pm) User Contributed Perl Documentation Data::Session::Driver::Oracle(3pm)

NAME

Data::Session::Driver::Oracle - A persistent session manager

Synopsis

See Data::Session for details.

Description

Data::Session::Driver::Oracle allows Data::Session to store sessions via DBD::Oracle.

To use this module do both of these:

Case-sensitive Options

See "Case-sensitive Options" in Data::Session for important information.

Method: new()

Creates a new object of type Data::Session::Driver::Oracle.

"new()" takes a hash of key/value pairs, some of which might mandatory. Further, some combinations might be mandatory.

The keys are listed here in alphabetical order.

They are lower-case because they are (also) method names, meaning they can be called to set or get the value at any time.

Specifes the name of the column in the sessions table which holds the session data.

This key is normally passed in as Data::Session -> new(data_col_name => $string).

Default: 'a_session'.

This key is optional.

Specifies the data source (as used by DBI -> connect($data_source, $username, $password, $attr) ) to obtain a database handle.

This key is normally passed in as Data::Session -> new(data_source => $string).

Default: ''.

This key is optional, as long as a value is supplied for 'dbh'.

Specifies the attributes (as used by DBI -> connect($data_source, $username, $password, $data_source_attr) ) to obtain a database handle.

This key is normally passed in as Data::Session -> new(data_source_attr => $string).

Default: {AutoCommit => 1, PrintError => 0, RaiseError => 1}.

This key is optional.

Specifies the database handle to use to access the sessions table.

This key is normally passed in as Data::Session -> new(dbh => $dbh).

If not specified, this module will use the values of these keys to obtain a database handle:

Default: ''.

This key is optional.

Not used.
Specifes the name of the column in the sessions table which holds the session id.

This key is normally passed in as Data::Session -> new(id_col_name => $string).

Default: 'id'.

This key is optional.

Specifies the password (as used by DBI -> connect($data_source, $username, $password, $data_source_attr) ) to obtain a database handle.

This key is normally passed in as Data::Session -> new(password => $string).

Default: ''.

This key is optional.

Not used.
Not used.
Specifes the name of the sessions table.

This key is normally passed in as Data::Session -> new(table_name => $string).

Default: 'sessions'.

This key is optional.

Specifies the username (as used by DBI -> connect($data_source, $username, $password, $data_source_attr) ) to obtain a database handle.

This key is normally passed in as Data::Session -> new(username => $string).

Default: ''.

This key is optional.

Print to STDERR more or less information.

Typical values are 0, 1 and 2.

This key is normally passed in as Data::Session -> new(verbose => $integer).

This key is optional.

Method: remove($id)

Deletes from storage the session identified by $id, or dies if it can't.

Returns 1.

Method: retrieve($id)

Retrieve from storage the session identified by $id, or dies if it can't.

Returns the session.

This is a frozen session. This value must be thawed by calling the appropriate serialization driver's thaw() method.

Data::Session calls the right thaw() automatically.

Method: store($id => $data)

Writes to storage the session identified by $id, together with its data $data, or dies if it can't.

Returns 1.

Method: traverse()

Retrieves all ids from the sessions table, and for each id calls the supplied subroutine with the id as the only parameter.

$dbh -> selectall_arrayref is used, and the table is not locked.

Returns 1.

Support

Log a bug on RT: <https://rt.cpan.org/Public/Dist/Display.html?Name=Data-Session>.

Author

Data::Session was written by Ron Savage <ron@savage.net.au> in 2010.

Home page: <http://savage.net.au/index.html>.

Copyright

Australian copyright (c) 2010, Ron Savage.

        All Programs of mine are 'OSI Certified Open Source Software';
        you can redistribute them and/or modify them under the terms of
        The Artistic License, a copy of which is available at:
        http://www.opensource.org/licenses/index.html
2023-02-12 perl v5.36.0