remove Base
[dbsrgits/DBIx-Class-Journal.git] / lib / DBIx / Class / Schema / Journal / DB / AuditLog.pm
1 package DBIx::Class::Schema::Journal::DB::AuditLog;
2
3 use base 'DBIx::Class';
4
5 sub journal_define_table {
6     my ( $class, $source ) = @_;
7
8     $class->load_components(qw(Core));
9
10     $class->table($source->name . "_audit_history");
11
12     $class->add_columns(
13         create_id => {
14             data_type => 'integer',
15             is_nullable => 0,
16             is_foreign_key => 1,
17         },
18         delete_id => {
19             data_type => 'integer',
20             is_nullable => 1,
21             is_foreign_key => 1,
22         }
23     );
24
25     foreach my $column ( $source->primary_columns ) {
26         $class->add_column( $column => { %{ $source->column_info($column) } } );
27     }
28
29     $class->set_primary_key( $source->primary_columns );
30
31     $class->belongs_to('created', 'DBIx::Class::Schema::Journal::DB::ChangeLog', 'create_id');
32     $class->belongs_to('deleted', 'DBIx::Class::Schema::Journal::DB::ChangeLog', 'delete_id');
33 }
34
35 1;