/[A3C]/lib/A3C/SQL.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/A3C/SQL.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 160 by dpavlin, Sun Jun 15 16:10:13 2008 UTC revision 162 by dpavlin, Sun Jun 15 17:47:39 2008 UTC
# Line 4  use strict; Line 4  use strict;
4  use warnings;  use warnings;
5    
6  use base qw(Jifty::Object Class::Accessor::Fast);  use base qw(Jifty::Object Class::Accessor::Fast);
7  __PACKAGE__->mk_accessors( qw(query arguments dbh) );  __PACKAGE__->mk_accessors( qw(query arguments dbh encoding) );
8    
9  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
10    
# Line 28  specify it like this: Line 28  specify it like this:
28    my $sql = A3C::SQL->new({    my $sql = A3C::SQL->new({
29          query => 'select now()',          query => 'select now()',
30          dbh => $my_dbh,          dbh => $my_dbh,
31            encoding => 'UTF-8',
32    });    });
33    
34  =head2 sth  =head2 sth
# Line 65  sub next { Line 66  sub next {
66          my $self = shift;          my $self = shift;
67          my $row = $self->sth->fetchrow_hashref;          my $row = $self->sth->fetchrow_hashref;
68          return unless defined $row;          return unless defined $row;
69          return A3C::SQL::row->new( $row );          return A3C::SQL::row->new( $row, $self->encoding );
70  }  }
71    
72  =head2 count  =head2 count
# Line 107  sub new { Line 108  sub new {
108          my $class = ref($that) || $that;          my $class = ref($that) || $that;
109          my $self = shift;          my $self = shift;
110          bless $self, $class;          bless $self, $class;
111            $self->{__encoding} = shift || 'UTF-8';
112          return $self;          return $self;
113  }    }  
114    
# Line 116  sub AUTOLOAD { Line 118  sub AUTOLOAD {
118          my $name = $AUTOLOAD;          my $name = $AUTOLOAD;
119          $name =~ s/.*://;          $name =~ s/.*://;
120          Jifty->log->error("SQL: $name doesn't exist") unless defined($self->{$name});          Jifty->log->error("SQL: $name doesn't exist") unless defined($self->{$name});
121          return decode('UTF-8', $self->{$name});          return decode( $self->{__encoding}, $self->{$name} );
122  }  }
123    
124  sub DESTROY {}  sub DESTROY {}

Legend:
Removed from v.160  
changed lines
  Added in v.162

  ViewVC Help
Powered by ViewVC 1.1.26