[Jifty-commit] r3490 - Jifty-DBI/trunk/lib/Jifty/DBI

jifty-commit at lists.jifty.org jifty-commit at lists.jifty.org
Thu Jun 14 17:26:48 EDT 2007


Author: ruz
Date: Thu Jun 14 17:26:48 2007
New Revision: 3490

Modified:
   Jifty-DBI/trunk/lib/Jifty/DBI/Handle.pm

Log:
* use $meta local var to simplify code
* store type of join in meta

Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Handle.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Handle.pm	(original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Handle.pm	Thu Jun 14 17:26:48 2007
@@ -818,8 +818,6 @@
         @_
     );
 
-    my $string;
-
     my $alias;
 
     #If we're handed in an alias2, we need to go remove it from the
@@ -879,15 +877,18 @@
 
     }
 
+    my $meta = $args{'collection'}->{'leftjoins'}{ $alias } ||= {};
     if ( $args{'type'} =~ /LEFT/i ) {
-
-        $string = " LEFT JOIN " . $args{'table2'} . " $alias ";
+        $meta->{'alias_string'} = " LEFT JOIN " . $args{'table2'} . " $alias ";
+        $meta->{'type'} = 'LEFT';
 
     } else {
-
-        $string = " JOIN " . $args{'table2'} . " $alias ";
-
+        $meta->{'alias_string'} = " JOIN " . $args{'table2'} . " $alias ";
+        $meta->{'type'} = 'NORMAL';
     }
+    $meta->{'depends_on'} = $args{'alias1'};
+    $meta->{'entry_aggregator'} = $args{'entry_aggregator'}
+        if $args{'entry_aggregator'};
 
     my $criterion;
     if ( $args{'expression'} ) {
@@ -895,15 +896,7 @@
     } else {
         $criterion = $args{'alias1'} . "." . $args{'column1'};
     }
-
-    $args{'collection'}->{'leftjoins'}{"$alias"}{'alias_string'} = $string;
-    $args{'collection'}->{'leftjoins'}{"$alias"}{'entry_aggregator'}
-        = $args{'entry_aggregator'}
-        if ( $args{'entry_aggregator'} );
-    $args{'collection'}->{'leftjoins'}{"$alias"}{'depends_on'}
-        = $args{'alias1'};
-    $args{'collection'}->{'leftjoins'}{"$alias"}{'criteria'}
-        { 'criterion' . $args{'collection'}->{'criteria_count'}++ }
+    $meta->{'criteria'}{ 'criterion' . $args{'collection'}->{'criteria_count'}++ }
         = " $criterion $args{'operator'} $alias.$args{'column2'}";
 
     return ($alias);


More information about the Jifty-commit mailing list