Skip to content

Commit

Permalink
Now uses a more aggressive removal of recursive constraints.
Browse files Browse the repository at this point in the history
  • Loading branch information
johncurrier committed Aug 30, 2006
1 parent 3540e6c commit ee6c341
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions src/net/sourceforge/schemaspy/model/Table.java
Original file line number Diff line number Diff line change
Expand Up @@ -405,10 +405,13 @@ public boolean isLeaf() {
public ForeignKeyConstraint removeSelfReferencingConstraint() {
ForeignKeyConstraint recursiveConstraint = getSelfReferencingConstraint();
if (recursiveConstraint != null) {
TableColumn childColumn = (TableColumn)recursiveConstraint.getChildColumns().get(0);
TableColumn parentColumn = (TableColumn)recursiveConstraint.getParentColumns().get(0);
childColumn.removeParent(parentColumn);
parentColumn.removeChild(childColumn);
// more drastic removal solution by Remke Rutgers:
for (int i = 0; i < recursiveConstraint.getChildColumns().size(); i++) {
TableColumn childColumn = (TableColumn)recursiveConstraint.getChildColumns().get(i);
TableColumn parentColumn = (TableColumn)recursiveConstraint.getParentColumns().get(i);
childColumn.removeParent(parentColumn);
parentColumn.removeChild(childColumn);
}
return recursiveConstraint;
}

Expand Down

0 comments on commit ee6c341

Please sign in to comment.