File Coverage

blib/lib/Eidolon/Driver/DB/PostgreSQL.pm
Criterion Covered Total %
statement 9 17 52.9
branch n/a
condition 0 4 0.0
subroutine 3 5 60.0
pod 2 2 100.0
total 14 28 50.0


line stmt bran cond sub pod time code
1             package Eidolon::Driver::DB::PostgreSQL;
2             # ==============================================================================
3             #
4             # Eidolon
5             # Copyright (c) 2009, Atma 7
6             # ---
7             # Eidolon/Driver/DB/PostgreSQL - PostgreSQL DBMS driver
8             #
9             # ==============================================================================
10              
11 1     1   154927 use base qw/Eidolon::Driver::DB/;
  1         2  
  1         96  
12 1     1   5 use warnings;
  1         2  
  1         25  
13 1     1   5 use strict;
  1         7  
  1         212  
14              
15             our $VERSION = "0.01"; # 2008-08-23 14:21:27
16              
17             # ------------------------------------------------------------------------------
18             # \% new()
19             # constructor
20             # ------------------------------------------------------------------------------
21             sub new
22             {
23 0     0 1   my ($class, $db, $user, $password, $host, $port, $cfg, $self);
24              
25 0           ($class, $db, $user, $password, $host, $port, $cfg) = @_;
26              
27 0   0       $self = $class->SUPER::new
      0        
28             (
29             "Pg", $db, $user, $password, $host || "localhost", $port || "5432", $cfg
30             );
31              
32 0           return $self;
33             }
34              
35             # ------------------------------------------------------------------------------
36             # \@ call($function, @params)
37             # function/procedure call
38             # ------------------------------------------------------------------------------
39             sub call
40             {
41 0     0 1   my ($self, $function, @params, $query);
42              
43 0           ($self, $function, @params) = @_;
44              
45 0           $query = sprintf
46             (
47             "SELECT * FROM $function(%s)",
48             join(",", split(//, "?" x scalar @params))
49             );
50              
51 0           return $self->execute($query, @params);
52             }
53              
54             1;
55              
56             __END__