8f59106143155cf4c336e6061b41aadbc4ee7c2a
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / CDBICompat / AbstractSearch.pm
1 package # hide form PAUSE
2     DBIx::Class::CDBICompat::AbstractSearch;
3
4 use strict;
5 use warnings;
6
7 =head1 NAME
8
9 DBIx::Class::CDBICompat::AbstractSearch - Emulates Class::DBI::AbstractSearch
10
11 =head1 SYNOPSIS
12
13 See DBIx::Class::CDBICompat for usage directions.
14
15 =head1 DESCRIPTION
16
17 Emulates L<Class::DBI::AbstractSearch>.
18
19 =cut
20
21 # The keys are mostly the same.
22 my %cdbi2dbix = (
23     limit               => 'rows',
24 );
25
26 sub search_where {
27     my $class = shift;
28     my $where = (ref $_[0]) ? $_[0] : { @_ };
29     my $attr  = (ref $_[0]) ? $_[1] : {};
30
31     # Translate the keys
32     $attr->{$cdbi2dbix{$_}} = delete $attr->{$_} for keys %cdbi2dbix;
33
34     return $class->resultset_instance->search($where, $attr);
35 }
36
37 =head1 FURTHER QUESTIONS?
38
39 Check the list of L<additional DBIC resources|DBIx::Class/GETTING HELP/SUPPORT>.
40
41 =head1 COPYRIGHT AND LICENSE
42
43 This module is free software L<copyright|DBIx::Class/COPYRIGHT AND LICENSE>
44 by the L<DBIx::Class (DBIC) authors|DBIx::Class/AUTHORS>. You can
45 redistribute it and/or modify it under the same terms as the
46 L<DBIx::Class library|DBIx::Class/COPYRIGHT AND LICENSE>.
47
48 =cut
49
50 1;