class ActiveRecord::ConnectionAdapters::SchemaReflection
Attributes
Public Class Methods
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 16 def initialize(cache_path, cache = nil) @cache = cache @cache_path = cache_path end
Public Instance Methods
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 45 def add(connection, name) cache(connection).add(connection, name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 87 def cached?(table_name) if @cache.nil? # If `check_schema_cache_dump_version` is enabled we can't load # the schema cache dump without connecting to the database. unless self.class.check_schema_cache_dump_version @cache = load_cache(nil) end end @cache&.cached?(table_name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 25 def clear! @cache = empty_cache nil end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 81 def clear_data_source_cache!(connection, name) return if @cache.nil? && !possible_cache_available? cache(connection).clear_data_source_cache!(connection, name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 53 def columns(connection, table_name) cache(connection).columns(connection, table_name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 57 def columns_hash(connection, table_name) cache(connection).columns_hash(connection, table_name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 61 def columns_hash?(connection, table_name) cache(connection).columns_hash?(connection, table_name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 41 def data_source_exists?(connection, name) cache(connection).data_source_exists?(connection, name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 49 def data_sources(connection, name) cache(connection).data_sources(connection, name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 99 def dump_to(connection, filename) fresh_cache = empty_cache fresh_cache.add_all(connection) fresh_cache.dump_to(filename) @cache = fresh_cache end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 65 def indexes(connection, table_name) cache(connection).indexes(connection, table_name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 31 def load!(connection) cache(connection) self end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 37 def primary_keys(connection, table_name) cache(connection).primary_keys(connection, table_name) end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 21 def set_schema_cache(cache) @cache = cache end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 77 def size(connection) cache(connection).size end
# File activerecord/lib/active_record/connection_adapters/schema_cache.rb, line 73 def version(connection) cache(connection).version(connection) end