X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FCDBICompat.pm;h=5fb1af4daf65de784d011dd37c655b898c2dc6f1;hb=75a23b3e351f37ed420f182492d441ccbdca6569;hp=c7f4c46bc07160c366124cb6b18048232794be61;hpb=656796f2088da66cc80f4eb127c39c923ef3c1dd;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/CDBICompat.pm b/lib/DBIx/Class/CDBICompat.pm index c7f4c46..5fb1af4 100644 --- a/lib/DBIx/Class/CDBICompat.pm +++ b/lib/DBIx/Class/CDBICompat.pm @@ -2,46 +2,132 @@ package DBIx::Class::CDBICompat; use strict; use warnings; -use base qw/DBIx::Class/; - -__PACKAGE__->load_components(qw/ - CDBICompat::Constraints - CDBICompat::Triggers - CDBICompat::ReadOnly - CDBICompat::GetSet - CDBICompat::LiveObjectIndex - CDBICompat::AttributeAPI - CDBICompat::Stringify - CDBICompat::DestroyWarning - CDBICompat::Constructor - CDBICompat::AccessorMapping - CDBICompat::ColumnCase - CDBICompat::MightHave - CDBICompat::HasMany - CDBICompat::HasA - CDBICompat::LazyLoading - CDBICompat::AutoUpdate - CDBICompat::TempColumns - CDBICompat::Retrieve - CDBICompat::ColumnGroups - CDBICompat::ImaDBI/); - - #DBIx::Class::CDBICompat::ObjIndexStubs +use base qw/DBIx::Class::Core DBIx::Class::DB/; + +__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 Compatability layer. +=head1 SYNOPSIS + + use base qw/DBIx::Class/; + __PACKAGE__->load_components(qw/CDBICompat Core DB/); + =head1 DESCRIPTION -This class just inherits from the various modules that makes -up the Class::DBI compability layer. +DBIx::Class features a fully featured compability layer with L +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 + +Responsible for HasA relationships. + +=item HasMany + +Responsible for HasMany relationships. + +=item ImaDBI + +=item LazyLoading + +=item LiveObjectIndex + +The live object index tries to ensure there is only one version of a object +in the perl interprenter. + +=item MightHave + +Responsible for MightHave relationships. + +=item ObjIndexStubs + +=item ReadOnly + +=item Retrieve + +=item Stringify + +=item TempColumns + +=item Triggers + +This class implements the trigger functionality. + +=item PassThrough + +=back =head1 AUTHORS -Matt S. Trout +Matt S. Trout =head1 LICENSE