Module: CriticalPathCss

Defined in:
lib/critical-path-css-rails.rb,
lib/critical_path_css/css_fetcher.rb,
lib/critical_path_css/rails/engine.rb,
lib/critical_path_css/configuration.rb,
lib/generators/critical_path_css/install_generator.rb

Defined Under Namespace

Modules: Rails Classes: Configuration, CssFetcher, InstallGenerator

Constant Summary collapse

CACHE_NAMESPACE =
'critical-path-css'

Class Method Summary collapse

Class Method Details

.clear(route) ⇒ Object



21
22
23
# File 'lib/critical-path-css-rails.rb', line 21

def self.clear(route)
  Rails.cache.delete(route, namespace: CACHE_NAMESPACE)
end

.clear_matched(routes) ⇒ Object



25
26
27
# File 'lib/critical-path-css-rails.rb', line 25

def self.clear_matched(routes)
  Rails.cache.delete_matched(routes, namespace: CACHE_NAMESPACE)
end

.fetch(route) ⇒ Object



29
30
31
# File 'lib/critical-path-css-rails.rb', line 29

def self.fetch(route)
  Rails.cache.read(route, namespace: CACHE_NAMESPACE) || ''
end

.generate(route) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/critical-path-css-rails.rb', line 6

def self.generate(route)
  Rails.cache.write(
    route,
    CssFetcher.new.fetch_route(route),
    namespace: CACHE_NAMESPACE,
    expires_in: nil
  )
end

.generate_allObject



15
16
17
18
19
# File 'lib/critical-path-css-rails.rb', line 15

def self.generate_all
  CssFetcher.new.fetch.each do |route, css|
    Rails.cache.write(route, css, namespace: CACHE_NAMESPACE, expires_in: nil)
  end
end