X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSchema.pm;h=eb3246c69966b4852275cd992148b31e9ea4984e;hb=429bd4f15b0ea80aef96873a9db11801538eb3ee;hp=72c1583460a0df7268c40bcd48002b4e43870f6a;hpb=36e58b241cab56b1c2daaf51ad0219f2129c638c;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Schema.pm b/lib/DBIx/Class/Schema.pm index 72c1583..eb3246c 100644 --- a/lib/DBIx/Class/Schema.pm +++ b/lib/DBIx/Class/Schema.pm @@ -44,6 +44,11 @@ DBIx::Class::Schema - composable schemas =head1 DESCRIPTION +Creates database classes based on a schema. This allows you to have more than +one concurrent connection using the same database classes, by making +subclasses under a new namespace for each connection. If you only need one +class, you should probably use L directly instead. + =head1 METHODS =over 4 @@ -51,7 +56,7 @@ DBIx::Class::Schema - composable schemas =item register_class Registers the class in the schema's class_registrations. This is a hash -containing components, and their representative classes. It's used by +containing database classes, keyed by their monikers. It's used by compose_connection to create/modify all the existing database classes. =cut @@ -77,9 +82,9 @@ sub registered_classes { =item load_classes [} -Uses L to find all components, unless specified explicitly. -Then it loads the component (using L), and registers them (using -B +Uses L to find all classes under the database class' namespace, +or uses the classes you select. Then it loads the component (using L), +and registers them (using B); =cut @@ -100,7 +105,12 @@ sub load_classes { } } -=item compose_connection +=item compose_connection <@db_info> + +This is the most important method in this class. it takes a target namespace, +as well as dbh connection info, and creates a L class as +well as subclasses for each of your database classes in this namespace, using +this connection. =cut @@ -131,6 +141,9 @@ sub compose_connection { =item setup_connection_class <$target> <@info> +Sets up a database connection class to inject between the schema +and the subclasses the schema creates. + =cut sub setup_connection_class {