Data-ObjectDriver

 view release on metacpan or  search on metacpan

lib/Data/ObjectDriver/Driver/Partition.pm  view on Meta::CPAN


=head1 USAGE

=head2 C<Data::ObjectDriver::Driver::Partition-E<gt>new(%params)>

Creates a new partitioning driver. The required members of C<%params> are:

=over 4

=item * C<get_driver>

A reference to a function to be used to retrieve for a given object or set of
search terms. Your function is invoked as either:

=over 4

=item * C<get_driver(\%terms, \%args)>

Return a driver based on the given C<search()> parameters.

=item * C<get_driver($id)>

Return a driver based on the given object ID. Note that C<$id> may be an
arrayref, if the class was defined with a complex primary key.

=back

=item * C<pk_generator>

A reference to a function that, given a data object, generates a primary key
for it. This is the same C<pk_generator> given to C<Data::ObjectDriver>'s
constructor.

=back

=head2 C<$driver-E<gt>search($class, $terms, $args)>

=head2 C<$driver-E<gt>lookup($class, $id)>

=head2 C<$driver-E<gt>lookup_multi($class, @ids)>

=head2 C<$driver-E<gt>exists($obj)>

=head2 C<$driver-E<gt>insert($obj)>

=head2 C<$driver-E<gt>update($obj)>

=head2 C<$driver-E<gt>remove($obj)>

=head2 C<$driver-E<gt>fetch_data($what)>

Performs the named action, by passing these methods through to the appropriate
database driver as determined by C<$driver>'s C<get_driver> function.

=head1 DIAGNOSTICS

No errors are created by I<Data::ObjectDriver::Driver::Partition> itself.
Errors may come from a specific partitioning subclass or the driver for a
particular database.

=head1 BUGS AND LIMITATIONS

There are no known bugs in this module.

=head1 SEE ALSO

I<Data::ObjectDriver::Driver::SimplePartition>

=head1 LICENSE

I<Data::ObjectDriver> is free software; you may redistribute it and/or modify
it under the same terms as Perl itself.

=head1 AUTHOR & COPYRIGHT

Except where otherwise noted, I<Data::ObjectDriver> is Copyright 2005-2006
Six Apart, cpan@sixapart.com. All rights reserved.

=cut



( run in 1.193 second using v1.01-cache-2.11-cpan-39bf76dae61 )