class Dbsketch::Comparison::ForeignKeyComparator

Public Instance Methods

are_equivalent?(old_key, new_key) click to toggle source
# File lib/dbsketch/comparison/foreign_key_comparator.rb, line 34
def are_equivalent? old_key, new_key
        ### Preconditions
        raise ArgumentError, "old_key is not a Dbsketch::Model::ForeignKey" unless nil == old_key or old_key.is_a? Dbsketch::Model::ForeignKey
        raise ArgumentError, "new_key is not a Dbsketch::Model::ForeignKey" unless nil == new_key or new_key.is_a? Dbsketch::Model::ForeignKey
        ###
        (nil != old_key and nil != new_key) and
                old_key.constricted_column.name == new_key.constricted_column.name and
                old_key.referenced_table.name == new_key.referenced_table.name and
                old_key.referenced_column.name == new_key.referenced_column.name
end
compare(old_key, new_key) click to toggle source
# File lib/dbsketch/comparison/foreign_key_comparator.rb, line 45
def compare old_key, new_key
        ### Preconditions
        raise ArgumentError, "old_key is not a Dbsketch::Model::ForeignKey" unless nil == old_key or old_key.is_a? Dbsketch::Model::ForeignKey
        raise ArgumentError, "new_key is not a Dbsketch::Model::ForeignKey" unless nil == new_key or new_key.is_a? Dbsketch::Model::ForeignKey
        ###
        ForeignKeyDiff.new(old_key, new_key) if not are_equivalent? old_key, new_key
end