Class: SchemaSherlock::Analyzers::ForeignKeyDetector

Inherits:
BaseAnalyzer
  • Object
show all
Defined in:
lib/schema_sherlock/analyzers/foreign_key_detector.rb

Constant Summary collapse

INTEGER_TYPES =

Common integer types that can reference each other

%w[integer bigint].freeze
UUID_TYPES =

UUID types that can reference each other

%w[uuid].freeze
STRING_TYPES =

String types that might be used for UUIDs

%w[string text].freeze

Instance Attribute Summary

Attributes inherited from BaseAnalyzer

#model_class, #results

Instance Method Summary collapse

Methods inherited from BaseAnalyzer

#initialize

Constructor Details

This class inherits a constructor from SchemaSherlock::Analyzers::BaseAnalyzer

Instance Method Details

#analyzeObject



15
16
17
18
19
20
21
# File 'lib/schema_sherlock/analyzers/foreign_key_detector.rb', line 15

def analyze
  @results = {
    missing_associations: find_missing_associations,
    orphaned_foreign_keys: find_orphaned_foreign_keys,
    usage_stats: get_usage_stats
  }
end