1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
package DBIx::Class::CDBICompat;
use strict;
use warnings;
use base qw/DBIx::Class::Core DBIx::Class::DB/;
use Carp::Clan qw/^DBIx::Class/;
eval {
require Class::Trigger;
require DBIx::ContextualFetch;
};
croak "Class::Trigger and DBIx::ContextualFetch is required for CDBICompat" if $@;
__PACKAGE__->load_own_components(qw/
Constraints
Triggers
ReadOnly
GetSet
LiveObjectIndex
AttributeAPI
Stringify
DestroyWarning
Constructor
AccessorMapping
ColumnCase
HasA
HasMany
MightHave
LazyLoading
AutoUpdate
TempColumns
Retrieve
Pager
ColumnGroups
ImaDBI/);
#DBIx::Class::ObjIndexStubs
1;
=head1 NAME
DBIx::Class::CDBICompat - Class::DBI Compatibility layer.
=head1 SYNOPSIS
use base qw/DBIx::Class/;
__PACKAGE__->load_components(qw/CDBICompat Core DB/);
=head1 DESCRIPTION
DBIx::Class features a fully featured compatibility layer with L<Class::DBI>
to ease transition for existing CDBI users. In fact, this class is just a
receipe containing all the features emulated. If you like, you can choose
which features to emulate by building your own class and loading it like
this:
__PACKAGE__->load_own_components(qw/CDBICompat/);
this will automatically load the features included in My::DB::CDBICompat,
provided it looks something like this:
package My::DB::CDBICompat;
__PACKAGE__->load_components(qw/
CDBICompat::ColumnGroups
CDBICompat::Retrieve
CDBICompat::HasA
CDBICompat::HasMany
CDBICompat::MightHave
/);
=head1 COMPONENTS
=over 4
=item AccessorMapping
=item AttributeAPI
=item AutoUpdate
Allows you to turn on automatic updates for column values.
=item ColumnCase
=item ColumnGroups
=item Constraints
=item Constructor
=item DestroyWarning
=item GetSet
=item HasA
=item HasMany
=item ImaDBI
=item LazyLoading
=item LiveObjectIndex
The live object index tries to ensure there is only one version of a object
in the perl interpreter.
=item MightHave
=item ObjIndexStubs
=item ReadOnly
=item Retrieve
=item Stringify
=item TempColumns
=item Triggers
=item PassThrough
=back
=head1 AUTHORS
Matt S. Trout <mst@shadowcatsystems.co.uk>
=head1 LICENSE
You may distribute this code under the same terms as Perl itself.
=cut
|