add compat methods
[dbsrgits/SQL-Translator-2.0-ish.git] / lib / SQL / Translator / Object / ForeignKey.pm
index e3ed307..af1bd13 100644 (file)
@@ -1,15 +1,32 @@
 use MooseX::Declare;
 class SQL::Translator::Object::ForeignKey {
-    use SQL::Translator::Types qw(Index PrimaryKey);
+    use MooseX::Types::Moose qw(ArrayRef Maybe Undef Str);
     extends 'SQL::Translator::Object::Constraint';
     
     has '+type' => (
-        default => 'FOREIGN_KEY',
+        default => 'FOREIGN KEY',
     );
     
-    has 'references' => (
-        isa => PrimaryKey | Index,
+    has 'reference_columns' => (
+         isa => ArrayRef | Undef,
+         is => 'rw',
+         auto_deref => 1
+    );
+
+    has 'on_delete' => (
+        isa => Maybe[Str],
+        is => 'rw',
+    );
+
+    has 'on_update' => (
+        isa => Maybe[Str],
+        is => 'rw',
+    );
+
+    has 'reference_table' => (
+        isa => Str,
         is => 'rw',
-        required => 1,
     );
+
+    method reference_fields { return $self->reference_columns }
 }