/[Frey]/trunk/lib/Frey/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

Annotation of /trunk/lib/Frey/SQL.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 493 - (hide annotations)
Mon Nov 24 20:47:56 2008 UTC (15 years, 5 months ago) by dpavlin
File size: 936 byte(s)
fix left-over from rename
1 dpavlin 370 package Frey::SQL;
2     use Moose;
3 dpavlin 414 extends 'Frey';
4 dpavlin 370
5 dpavlin 455 with 'Frey::Web';
6    
7 dpavlin 370 use MooseX::Types::Moose qw(Str Int ArrayRef);
8     use MooseX::Types::Structured qw/Dict/;
9    
10     use DBI;
11     use Data::Dump qw/dump/;
12    
13     has 'query' => (
14     is => 'rw',
15     isa => 'Str',
16     required => 1,
17 dpavlin 371 default => 'select * from sponge',
18 dpavlin 374 documentation => 'SQL query to filter data',
19 dpavlin 370 );
20    
21     has table => (
22     is => 'rw',
23     isa => 'Str',
24     required => 1,
25     default => 'sponge',
26 dpavlin 374 documentation => 'Name of table to create from sponge data',
27 dpavlin 370 );
28    
29     has 'sponge' => (
30     is => 'rw',
31     isa => Dict[
32     rows => ArrayRef[ArrayRef],
33     NAME => ArrayRef[Str],
34     ],
35     required => 1,
36     );
37    
38 dpavlin 455 sub as_data {
39 dpavlin 370 my ($self) = @_;
40    
41     my $dbh=DBI->connect('dbi:AnyData(RaiseError=>1):');
42    
43 dpavlin 493 my $data = $self->sponge->{rows};
44     unshift @$data, $self->sponge->{NAME};
45 dpavlin 370
46 dpavlin 414 warn "# data = ",dump( $data ) if $self->debug;
47 dpavlin 370
48     $dbh->func( $self->table, 'ARRAY', $data, 'ad_import' );
49    
50     return $dbh->selectall_arrayref( $self->query );
51     }
52    
53     1;

  ViewVC Help
Powered by ViewVC 1.1.26