GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  DBIX::CONNECTOR::DRIVER (3)

.ds Aq ’

Name

DBIx::Connector::Driver - Database-specific connection interface

CONTENTS

Description

Some of the things that DBIx::Connector does are implemented differently by different drivers, or the official interface provided by the DBI may not be implemented for a particular driver. The driver-specific code therefore is encapsulated in this separate driver class.

Most of the DBI drivers work uniformly, so in most cases the implementation provided here in DBIx::Connector::Driver will work just fine. It’s only when something is different that a driver subclass needs to be added. In such a case, the subclass’s name is the same as the DBI driver. For example the driver for DBD::Pg is DBIx::Connector::Driver::Pg and the driver for DBD::mysql is DBIx::Connector::Driver::mysql.

If you’re just a user of DBIx::Connector, you can ignore the driver classes. DBIx::Connector uses them internally to do its magic, so you needn’t worry about them.

Interface

In case you need to implement a driver, here’s the interface you can modify.

    Constructor

new



  my $driver = DBIx::Connector::Driver->new( $driver );



Constructs and returns a driver object. Each driver class is implemented as a singleton, so the same driver object is always returned for the same driver. The driver parameter should be a Perl DBI driver name, such as Pg for DBD::Pg or SQLite for DBD::SQLite. If a subclass has been defined for $driver, then the object will be of that class. Otherwise it will be an instance of the driver base class.

    Instance Methods

ping



  $driver->ping($dbh);



Calls $dbh->ping. Override if for some reason the DBI driver doesn’t do it right.

begin_work



  $driver->begin_work($dbh);



Calls $dbh->begin_work. Override if for some reason the DBI driver doesn’t do it right.

commit



  $driver->commit($dbh);



Calls $dbh->commit. Override if for some reason the DBI driver doesn’t do it right.

rollback



  $driver->rollback($dbh);



Calls $dbh->rollback. Override if for some reason the DBI driver doesn’t do it right.

savepoint



  $driver->savepoint($dbh, $name);



A no-op. Override if your database does in fact support savepoints. The driver subclass should create a savepoint with the given $name. See the implementations in DBIx::Connector::Driver::Pg and DBIx::Connector::Driver::Oracle for examples.

release



  $driver->release($dbh, $name);



A no-op. Override if your database does in fact support savepoints. The driver subclass should release the savepoint with the given $name. See the implementations in DBIx::Connector::Driver::Pg and DBIx::Connector::Driver::Oracle for examples.

rollback_to



  $driver->rollback_to($dbh, $name);



A no-op. Override if your database does in fact support savepoints. The driver subclass should rollback to the savepoint with the given $name. See the implementations in DBIx::Connector::Driver::Pg and DBIx::Connector::Driver::Oracle for examples.

Authors

This module was written and is maintained by:
David E. Wheeler <david@kineticode.com>
It is based on code written by:
Matt S. Trout <mst@shadowcatsystems.co.uk>
Peter Rabbitson <rabbit+dbic@rabbit.us>

Copyright and License

Copyright (c) 2009-2010 David E. Wheeler. Some Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 DBIX::CONNECTOR::DRIVER (3) 2016-03-17

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.