NAME

Class::PObject::Driver::DBM - Base class for DBM-related pobject drivers

SYNOPSIS

use Class::PObject::Driver::DBM;
@ISA = ('Class::PObject::Driver::DBM');

sub dbh {
    my ($self, $pobject_name, $properties) = @_;
    ...
}

ABSTRACT

Class::PObject::Driver::DBM is a base class for all the DBM-related
pobject drivers. Class::PObject::Driver::DBM is a direct subclass of
Class::PObject::Driver.

DESCRIPTION

Class::PObject::Driver::DBM is a direct subclass of Class::PObject::Driver, and provides all the necessary methods common for DBM-related disk access.

METHODS

Refer to Class::PObject::Driver for the details of all the driver-specific methods. Class::PObject::Driver::DBM overrides save(), load() and remove() methods with the versions relevant to DBM-related disk access.

  • dbh($self, $pobject_name, \%properties) - called whenever base methods need database tied hash. DBM drivers should provide this method, which should return a reference to a tied hash.

  • _filename($self, $pobject_name, \%properties) - returns a name of the file to connect to. It first looks for $properties-{datasource}> and if it exists, uses the value as a directory name object file should be created in. If it's missing, defaults to systems temporary folder.

    It then returns a file name derived out of $pobject_name inside this directory.

  • _read_lock($self, $pobject_name, \%properties) - acquires a shared lock for the object file.

  • _write_lock($self, $pobject_name, \%properties) - acquires an exclusive lock for the object file.

  • _unlock() - unlocks existing lock

SEE ALSO

Class::PObject::Driver, Class::PObject::Driver::DB_File Class::PObject::Driver::DBI

AUTHOR

Sherzod B. Ruzmetov, <sherzodr@cpan.org>, http://author.handalak.com/

COPYRIGHT AND LICENSE

Copyright 2003 by Sherzod B. Ruzmetov.

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