1 package DBIx::Class::CDBICompat::ColumnCase;
7 sub _register_column_group {
8 my ($class, $group, @cols) = @_;
9 return $class->NEXT::ACTUAL::_register_column_group($group => map lc, @cols);
12 sub _register_columns {
13 my ($class, @cols) = @_;
14 return $class->NEXT::ACTUAL::_register_columns(map lc, @cols);
18 my ($class, $col, @rest) = @_;
19 $class->NEXT::ACTUAL::has_a(lc($col), @rest);
20 $class->mk_group_accessors('has_a' => $col);
25 my ($class, $rel, $f_class, $f_key, @rest) = @_;
26 return $class->NEXT::ACTUAL::has_many($rel, $f_class, lc($f_key), @rest);
30 my ($class, $get, @rest) = @_;
31 return $class->NEXT::ACTUAL::get_has_a(lc($get), @rest);
35 my ($class, $set, @rest) = @_;
36 return $class->NEXT::ACTUAL::store_has_a(lc($set), @rest);
40 my ($class, $set, @rest) = @_;
41 return $class->NEXT::ACTUAL::set_has_a(lc($set), @rest);
45 my ($class, $get, @rest) = @_;
46 return $class->NEXT::ACTUAL::get_column(lc($get), @rest);
50 my ($class, $set, @rest) = @_;
51 return $class->NEXT::ACTUAL::set_column(lc($set), @rest);
55 my ($class, $set, @rest) = @_;
56 return $class->NEXT::ACTUAL::store_column(lc($set), @rest);
60 my ($class, $col) = @_;
61 return $class->NEXT::ACTUAL::find_column(lc($col));
64 sub _mk_group_accessors {
65 my ($class, $type, $group, @fields) = @_;
66 #warn join(', ', map { ref $_ ? (@$_) : ($_) } @fields);
69 my ($acc, $field) = ref $_ ? @$_ : ($_, $_);
70 #warn "$acc ".lc($acc)." $field";
71 next if defined &{"${class}::${acc}"};
72 push(@extra, [ lc $acc => $field ]);
74 return $class->NEXT::ACTUAL::_mk_group_accessors($type, $group,
79 my ($class, $attrs, $key, @rest) = @_;
80 return $class->NEXT::ACTUAL::_cond_key($attrs, lc($key), @rest);
84 my ($class, $attrs, $key, @rest) = @_;
85 return $class->NEXT::ACTUAL::_cond_value($attrs, lc($key), @rest);
89 my ($class, $attrs, @rest) = @_;
91 $att{lc $_} = $attrs->{$_} for keys %$attrs;
92 return $class->NEXT::ACTUAL::new(\%att, @rest);