af1bd1399e4442f56f0bd4150bdca4f8b7c1f766
[dbsrgits/SQL-Translator-2.0-ish.git] / lib / SQL / Translator / Object / ForeignKey.pm
1 use MooseX::Declare;
2 class SQL::Translator::Object::ForeignKey {
3     use MooseX::Types::Moose qw(ArrayRef Maybe Undef Str);
4     extends 'SQL::Translator::Object::Constraint';
5     
6     has '+type' => (
7         default => 'FOREIGN KEY',
8     );
9     
10     has 'reference_columns' => (
11          isa => ArrayRef | Undef,
12          is => 'rw',
13          auto_deref => 1
14     );
15
16     has 'on_delete' => (
17         isa => Maybe[Str],
18         is => 'rw',
19     );
20
21     has 'on_update' => (
22         isa => Maybe[Str],
23         is => 'rw',
24     );
25
26     has 'reference_table' => (
27         isa => Str,
28         is => 'rw',
29     );
30
31     method reference_fields { return $self->reference_columns }
32 }