add constraints after all tables are added
[dbsrgits/SQL-Translator-2.0-ish.git] / lib / SQL / Translator / Producer / XML.pm
index 07a7308..128d582 100644 (file)
@@ -86,12 +86,12 @@ method produce {
         #
         xml_obj_children( $xml, $table,
             { tag   => 'constraint',
-#            methods => [qw/
-#                name type fields reference_table reference_fields
-#                on_delete on_update match_type expression options deferrable
-#                extra
-#            /],
-             methods => [qw/name type expression options deferrable extra/], }
+            methods => [qw/
+                name type fields reference_table reference_fields
+                on_delete on_update match_type expression options deferrable
+                extra
+            /], }
+#             methods => [qw/name type expression options deferrable extra/], }
         );
 
         #
@@ -193,9 +193,8 @@ method xml_obj_children($xml: $parent, HashRef $args?) {
 #
 my $elements_re = join("|", @MAP_AS_ELEMENTS);
 $elements_re = qr/^($elements_re)$/;
-#sub xml_obj {
+
 method xml_obj($xml: $obj, HashRef $args?) {
-#    my ($xml, $obj, %args) = @_;
     my $tag                = $args->{'tag'}              || '';
     my $end_tag            = $args->{'end_tag'}          || '';
     my @meths              = @{ $args->{'methods'} };
@@ -217,10 +216,10 @@ method xml_obj($xml: $obj, HashRef $args?) {
     $end_tag && !$child_tags
         ? $xml->emptyTag( [ $Namespace => $tag ], @attr )
         : $xml->startTag( [ $Namespace => $tag ], @attr );
-    while ( my ($name,$val) = splice @tags,0,2 ) { warn "NAME: $name, $val";
+    while ( my ($name,$val) = splice @tags,0,2 ) {
         if ( ref $val eq 'HASH' ) {
              $xml->emptyTag( [ $Namespace => $name ],
-                 map { ($_, $val->{$_}) } sort keys %$val );
+                 map { ($_, $val->{$_}) } keys %$val ); ### SORT
         }
         else {
             $xml->dataElement( [ $Namespace => $name ], $val );