use strict; use warnings; package Data::Remember::DBM; use base qw/ Data::Remember::Memory /; use Carp; use DBM::Deep; =head1 NAME Data::Remember::DBM - a long-term memory brain plugin for Data::Remember =head1 SYNOPSIS use Data::Remember DBM => file => 'brain.db'; remember something => 'what?'; =head1 DESCRIPTION This is a brain plugin module for L that persists everything stored using L. To use this module you must specify the "file" argument to tell the module where to store the files. =head1 METHODS =head2 new file => FILENAME Pass the name of the file to use to store the persistent data in. The "file" argument is required. =cut sub new { my $class = shift; my %args = @_; croak 'You must specify a "file" to store the data in.' unless $args{file}; bless { brain => DBM::Deep->new( $args{file} ) }, $class; } =head2 dbm If you need to do any locking or additional work with L directly, use this method to get a reference to the current instance. my $dbm = brain->dbm; =cut sub dbm { my $self = shift; return $self->{brain}; } =head1 SEE ALSO L, L =head1 AUTHOR Andrew Sterling Hanenkamp C<< >> =head1 COPYRIGHT AND LICENSE Copyright 2007 Boomer Consulting, Inc. All Rights Reserved. This program is free software and may be modified and distributed under the same terms as Perl itself. =cut 1;