Commit | Line | Data |
dbd7896f |
1 | package DBIx::Class::CDBICompat::ImaDBI; |
2 | |
3 | use strict; |
4 | use warnings; |
5 | |
6 | use NEXT; |
7 | |
8 | sub db_Main { |
9 | return $_[0]->_get_dbh; |
10 | } |
11 | |
12 | sub _dbi_connect { |
13 | my ($class, @info) = @_; |
14 | $info[3] = { %{ $info[3] || {}} }; |
15 | $info[3]->{RootClass} = 'DBIx::ContextualFetch'; |
16 | return $class->NEXT::_dbi_connect(@info); |
17 | } |
18 | |
19 | sub __driver { |
20 | return $_[0]->_get_dbh->{Driver}->{Name}; |
21 | } |
22 | |
a3018bd3 |
23 | sub set_sql { |
24 | my ($class, $name, $sql) = @_; |
25 | my $table = $class->_table_name; |
26 | #$sql =~ s/__TABLE__/$table/; |
27 | no strict 'refs'; |
28 | *{"${class}::sql_${name}"} = |
29 | sub { |
30 | my $sql = $sql; |
31 | my $class = shift; |
32 | my $table = $class->_table_name; |
33 | $sql =~ s/__TABLE__/$table/; |
34 | return $class->_sql_to_sth(sprintf($sql, @_)); |
35 | }; |
36 | } |
37 | |
dbd7896f |
38 | 1; |