Class: Airtable::ORM::Schema

Inherits:
Object
  • Object
show all
Defined in:
lib/airtable/orm/schema.rb

Constant Summary collapse

CACHE_KEY =
"airtable:schema"
CACHE_EXPIRY =
24.hours

Class Method Summary collapse

Class Method Details

.clear_cache(base_id) ⇒ Object



16
17
18
# File 'lib/airtable/orm/schema.rb', line 16

def clear_cache(base_id)
  cache.delete(cache_key(base_id))
end

.fetch(base_id, force_refresh: false) ⇒ Object



10
11
12
13
14
# File 'lib/airtable/orm/schema.rb', line 10

def fetch(base_id, force_refresh: false)
  clear_cache(base_id) if force_refresh

  cache.fetch(cache_key(base_id), expires_in: CACHE_EXPIRY) { fetch_from_api(base_id) }
end