X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FPK%2FAuto%2FPg.pm;h=00cd24fd303bf726aa4bb138f0375f2a88d57738;hb=0a8462d4fedc5392edec025bae67abd9c044d69e;hp=ad12dfa4325622ac1d86d0ef496b84bc8f4c59a5;hpb=0ceac5e1cf9d39d6bf733f36a2461ba3f2fc0023;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/PK/Auto/Pg.pm b/lib/DBIx/Class/PK/Auto/Pg.pm index ad12dfa..00cd24f 100644 --- a/lib/DBIx/Class/PK/Auto/Pg.pm +++ b/lib/DBIx/Class/PK/Auto/Pg.pm @@ -7,54 +7,19 @@ use base qw/DBIx::Class/; __PACKAGE__->load_components(qw/PK::Auto/); -sub last_insert_id { - my $self = shift; - $self->get_autoinc_seq unless $self->{_autoinc_seq}; - $self->result_source->storage->dbh->last_insert_id(undef,undef,undef,undef, - {sequence=>$self->{_autoinc_seq}}); -} - -sub get_autoinc_seq { - my $self = shift; - - # return the user-defined sequence if known - if ($self->sequence) { - return $self->{_autoinc_seq} = $self->sequence; - } - - my @pri = $self->primary_columns; - my $dbh = $self->result_source->storage->dbh; - my ($schema,$table) = $self->table =~ /^(.+)\.(.+)$/ ? ($1,$2) : (undef,$self->table); - while (my $col = shift @pri) { - my $info = $dbh->column_info(undef,$schema,$table,$col)->fetchrow_arrayref; - if (defined $info->[12] and $info->[12] =~ - /^nextval\('"?([^"']+)"?'::(?:text|regclass)\)/) - { - $self->{_autoinc_seq} = $1; - last; - } - } -} - 1; =head1 NAME -DBIx::Class::PK::Auto::Pg - Automatic primary key class for PostgreSQL +DBIx::Class::PK::Auto::Pg - (DEPRECATED) Automatic primary key class for Pg =head1 SYNOPSIS - # In your table classes - __PACKAGE__->load_components(qw/PK::Auto::Pg Core/); - __PACKAGE__->set_primary_key('id'); - -=head1 DESCRIPTION - -This class implements autoincrements for PostgreSQL. +Just load PK::Auto instead; auto-inc is now handled by Storage. =head1 AUTHORS -Marcus Ramberg +Matt S Trout =head1 LICENSE