HHH-7031 TableSpecification.locateForeignKey impl

This commit is contained in:
Strong Liu 2012-02-08 12:05:11 -06:00
parent c134154f59
commit a096b1c874
2 changed files with 30 additions and 2 deletions

View File

@ -94,6 +94,31 @@ public ForeignKey createForeignKey(TableSpecification targetTable, String name)
return fk;
}
@Override
public ForeignKey locateForeignKey(String name) {
for ( ForeignKey fk : foreignKeys ) {
if ( fk.getName().equals( name ) ) {
return fk;
}
}
return null;
}
@Override
public Iterable<ForeignKey> locateForeignKey(TableSpecification targetTable) {
List<ForeignKey> result = null;
for ( ForeignKey fk : foreignKeys ) {
if ( fk.getTargetTable().equals( targetTable ) ) {
if ( result == null ) {
result = new ArrayList<ForeignKey>();
}
result.add( fk );
}
}
return result;
}
@Override
public PrimaryKey getPrimaryKey() {
return primaryKey;

View File

@ -86,6 +86,7 @@ public Iterable<Index> getIndexes() {
return indexes.values();
}
@Override
public Index getOrCreateIndex(String name) {
if( indexes.containsKey( name ) ){
return indexes.get( name );
@ -100,6 +101,7 @@ public Iterable<UniqueKey> getUniqueKeys() {
return uniqueKeys.values();
}
@Override
public UniqueKey getOrCreateUniqueKey(String name) {
if( uniqueKeys.containsKey( name ) ){
return uniqueKeys.get( name );
@ -109,6 +111,7 @@ public UniqueKey getOrCreateUniqueKey(String name) {
return uniqueKey;
}
@Override
public Iterable<CheckConstraint> getCheckConstraints() {
return checkConstraints;