1 package DBIx::Class::Schema::Loader::DBObject::Informix;
5 use base 'DBIx::Class::Schema::Loader::DBObject';
11 DBIx::Class::Schema::Loader::DBObject::Informix - Class for Database Objects for
12 Informix Such as Tables and Views in L<DBIx::Class::Schema::Loader>
16 This is a subclass of L<DBIx::Class::Schema::Loader::DBObject> that adds
17 support for fully qualified objects in Informix including both L</database>
18 and L<schema|DBIx::Class::Schema::Loader::DBObject/schema> of the form:
20 database:owner.object_name
26 The database name this object belongs to.
29 L<ignore_schema|DBIx::Class::Schema::Loader::DBObject/ignore_schema> is set.
33 __PACKAGE__->mk_group_accessors(simple => qw/
40 my $self = $class->next::method(@_);
42 $self->{_database} = delete $self->{database};
50 return $self->_database(@_) unless $self->ignore_schema;
57 Returns the properly quoted full identifier with L</database>,
58 L<schema|DBIx::Class::Schema::Loader::DBObject/schema> and
59 L<name|DBIx::Class::Schema::Loader::DBObject/name>.
66 my $name_sep = $self->loader->name_sep;
68 if ($self->database) {
69 return $self->_quote($self->database)
71 . $self->_quote($self->schema)
73 . $self->_quote($self->name);
76 return $self->next::method(@_);
82 my $name_sep = $self->loader->name_sep;
84 if ($self->loader->qualify_objects && $self->_database) {
85 if ($self->_database =~ /\W/
86 || $self->_schema =~ /\W/ || $self->name =~ /\W/) {
88 return \ $self->sql_name;
91 return $self->_database . ':' . $self->_schema . $name_sep . $self->name;
94 return $self->next::method(@_);
99 L<DBIx::Class::Schema::Loader::Table::Informix>,
100 L<DBIx::Class::Schema::Loader::DBObject>,
101 L<DBIx::Class::Schema::Loader::Table>, L<DBIx::Class::Schema::Loader>,
102 L<DBIx::Class::Schema::Loader::Base>
106 See L<DBIx::Class::Schema::Loader/AUTHOR> and L<DBIx::Class::Schema::Loader/CONTRIBUTORS>.
110 This library is free software; you can redistribute it and/or modify it under
111 the same terms as Perl itself.
116 # vim:et sts=4 sw=4 tw=0: