class ActiveFacts::Metamodel::AccessPath

Public Instance Methods

position_in_index(component) click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 1732
def position_in_index component
  all_index_field.sort_by(&:ordinal).map(&:component).index(component)
end
show_trace() click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 1716
def show_trace
  trace :composition, inspect do
    if is_a?(ForeignKey)
      # First list any fields in a foreign key
      all_foreign_key_field.sort_by(&:ordinal).each do |fkf|
        $stderr.puts "Internal error: Foreign key field to #{fkf.component.column_name} is in #{fkf.component.root.mapping.name} not #{source_composite.mapping.name}!" if fkf.component.root != source_composite
        trace :composition, fkf.inspect
      end
    end
    # Now list the fields in the primary key
    all_index_field.sort_by(&:ordinal).each do |ak|
      trace :composition, ak.inspect
    end
  end
end