[Jifty-commit] r669 - jifty/trunk/lib

jifty-commit at lists.jifty.org jifty-commit at lists.jifty.org
Sun Mar 5 03:41:52 EST 2006


Author: jesse
Date: Sun Mar  5 03:41:51 2006
New Revision: 669

Modified:
   /   (props changed)
   jifty/trunk/lib/Jifty.pm
   jifty/trunk/lib/Jifty/Config.pm

Log:
 r25586 at truegrounds:  jesse | 2006-03-05 00:34:45 -0800
 * It's now possible to override Jifty::Record's baseclass in your app


Modified: jifty/trunk/lib/Jifty.pm
==============================================================================
--- jifty/trunk/lib/Jifty.pm	(original)
+++ jifty/trunk/lib/Jifty.pm	Sun Mar  5 03:41:51 2006
@@ -56,9 +56,9 @@
 
 =cut
 
-use Jifty::Everything;
 
 use base qw/Jifty::Object/;
+use Jifty::Everything;
 
 use vars qw/$HANDLE $CONFIG $LOGGER $DISPATCHER/;
 
@@ -103,6 +103,13 @@
     # Load the configuration. stash it in ->config
     __PACKAGE__->config( Jifty::Config->new() );
 
+    # Now that we've loaded the configuration, we can remove the temporary 
+    # Jifty::DBI::Record baseclass for records and insert our "real" baseclass,
+    # which is likely Record::Cachable or Record::Memcached
+    pop @Jifty::Record::ISA;
+    Jifty::Util->require( Jifty->config->framework('Database')->{'RecordBaseClass'});
+    push @Jifty::Record::ISA, Jifty->config->framework('Database')->{'RecordBaseClass'};
+
     __PACKAGE__->logger( Jifty::Logger->new( $args{'logger_component'} ) );
    # Get a classloader set up
    Jifty::ClassLoader->new->require;

Modified: jifty/trunk/lib/Jifty/Config.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Config.pm	(original)
+++ jifty/trunk/lib/Jifty/Config.pm	Sun Mar  5 03:41:51 2006
@@ -12,8 +12,6 @@
 
 =cut
 
-use Jifty::Everything;
-use Jifty::DBI::Handle;
 use Jifty::Util;
 use Jifty::YAML;
 use File::Spec;
@@ -222,6 +220,7 @@
                 Password => "",
                 User     => "",
                 Version  => "0.0.1",
+                RecordBaseClass => 'Jifty::DBI::Record::Cachable'
             },
             Mailer     => 'Sendmail',
             MailerArgs => [],


More information about the Jifty-commit mailing list