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('inflated_column' => $col);
25 my ($class, $rel, $f_class, $f_key, @rest) = @_;
26 return $class->NEXT::ACTUAL::has_many($rel, $f_class, ( ref($f_key) ?
31 sub get_inflated_column {
32 my ($class, $get, @rest) = @_;
33 return $class->NEXT::ACTUAL::get_inflated_column(lc($get), @rest);
36 sub store_inflated_column {
37 my ($class, $set, @rest) = @_;
38 return $class->NEXT::ACTUAL::store_inflated_column(lc($set), @rest);
41 sub set_inflated_column {
42 my ($class, $set, @rest) = @_;
43 return $class->NEXT::ACTUAL::set_inflated_column(lc($set), @rest);
47 my ($class, $get, @rest) = @_;
48 return $class->NEXT::ACTUAL::get_column(lc($get), @rest);
52 my ($class, $set, @rest) = @_;
53 return $class->NEXT::ACTUAL::set_column(lc($set), @rest);
57 my ($class, $set, @rest) = @_;
58 return $class->NEXT::ACTUAL::store_column(lc($set), @rest);
62 my ($class, $col) = @_;
63 return $class->NEXT::ACTUAL::find_column(lc($col));
66 sub _mk_group_accessors {
67 my ($class, $type, $group, @fields) = @_;
68 #warn join(', ', map { ref $_ ? (@$_) : ($_) } @fields);
71 my ($acc, $field) = ref $_ ? @$_ : ($_, $_);
72 #warn "$acc ".lc($acc)." $field";
73 next if defined &{"${class}::${acc}"};
74 push(@extra, [ lc $acc => $field ]);
76 return $class->NEXT::ACTUAL::_mk_group_accessors($type, $group,
81 my ($class, $attrs, $key, @rest) = @_;
82 return $class->NEXT::ACTUAL::_cond_key($attrs, lc($key), @rest);
86 my ($class, $attrs, $key, @rest) = @_;
87 return $class->NEXT::ACTUAL::_cond_value($attrs, lc($key), @rest);
91 my ($class, $attrs, @rest) = @_;
93 $att{lc $_} = $attrs->{$_} for keys %$attrs;
94 return $class->NEXT::ACTUAL::new(\%att, @rest);