Module: Sequel::SchemaCaching

Included in:
Postgres::SchemaCaching
Defined in:
lib/sequel/extensions/schema_caching.rb

Instance Method Summary collapse

Instance Method Details

#dump_schema_cache(file) ⇒ Object

Dump the cached schema to the filename given in Marshal format.



53
54
55
56
57
# File 'lib/sequel/extensions/schema_caching.rb', line 53

def dump_schema_cache(file)
  sch = dumpable_schema_cache
  File.open(file, 'wb'){|f| f.write(Marshal.dump(sch))}
  nil
end

#dump_schema_cache?(file) ⇒ Boolean

Dump the cached schema to the filename given unless the file already exists.

Returns:

  • (Boolean)


61
62
63
# File 'lib/sequel/extensions/schema_caching.rb', line 61

def dump_schema_cache?(file)
  dump_schema_cache(file) unless File.exist?(file)
end

#load_schema_cache(file) ⇒ Object

Replace the schema cache with the data from the given file, which should be in Marshal format.



67
68
69
70
71
# File 'lib/sequel/extensions/schema_caching.rb', line 67

def load_schema_cache(file)
  @schemas = load_schema_cache_file(file)
  @schemas.each_value{|v| schema_post_process(v)}
  nil
end

#load_schema_cache?(file) ⇒ Boolean

Replace the schema cache with the data from the given file if the file exists.

Returns:

  • (Boolean)


75
76
77
# File 'lib/sequel/extensions/schema_caching.rb', line 75

def load_schema_cache?(file)
  load_schema_cache(file) if File.exist?(file)
end