1 package DBIx::Class::Schema::Loader::DBObject::Informix;
5 use base 'DBIx::Class::Schema::Loader::DBObject';
10 DBIx::Class::Schema::Loader::DBObject::Informix - Class for Database Objects for
11 Informix Such as Tables and Views in L<DBIx::Class::Schema::Loader>
15 This is a subclass of L<DBIx::Class::Schema::Loader::DBObject> that adds
16 support for fully qualified objects in Informix including both L</database>
17 and L<schema|DBIx::Class::Schema::Loader::DBObject/schema> of the form:
19 database:owner.object_name
25 The database name this object belongs to.
28 L<ignore_schema|DBIx::Class::Schema::Loader::DBObject/ignore_schema> is set.
32 __PACKAGE__->mk_group_accessors(simple => qw/
39 my $self = $class->next::method(@_);
41 $self->{_database} = delete $self->{database};
49 return $self->_database(@_) unless $self->ignore_schema;
56 Returns the properly quoted full identifier with L</database>,
57 L<schema|DBIx::Class::Schema::Loader::DBObject/schema> and
58 L<name|DBIx::Class::Schema::Loader::DBObject/name>.
65 my $name_sep = $self->loader->name_sep;
67 if ($self->database) {
68 return $self->_quote($self->database)
70 . $self->_quote($self->schema)
72 . $self->_quote($self->name);
75 return $self->next::method(@_);
81 my $name_sep = $self->loader->name_sep;
83 if ($self->loader->qualify_objects && $self->_database) {
84 if ($self->_database =~ /\W/
85 || $self->_schema =~ /\W/ || $self->name =~ /\W/) {
87 return \ $self->sql_name;
90 return $self->_database . ':' . $self->_schema . $name_sep . $self->name;
93 return $self->next::method(@_);
98 L<DBIx::Class::Schema::Loader::Table::Informix>,
99 L<DBIx::Class::Schema::Loader::DBObject>,
100 L<DBIx::Class::Schema::Loader::Table>, L<DBIx::Class::Schema::Loader>,
101 L<DBIx::Class::Schema::Loader::Base>
105 See L<DBIx::Class::Schema::Loader/AUTHOR> and L<DBIx::Class::Schema::Loader/CONTRIBUTORS>.
109 This library is free software; you can redistribute it and/or modify it under
110 the same terms as Perl itself.
115 # vim:et sts=4 sw=4 tw=0: