Method: Rack::Prerender#before_render

Defined in:
lib/prerender_rails.rb

#before_render(env) ⇒ Object



222
223
224
225
226
227
228
229
230
231
232
233
234
# File 'lib/prerender_rails.rb', line 222

def before_render(env)
  return nil unless @options[:before_render]

  cached_render = @options[:before_render].call(env)

  if cached_render && cached_render.is_a?(String)
    Rack::Response.new(cached_render, 200, { 'Content-Type' => 'text/html; charset=utf-8' })
  elsif cached_render && cached_render.is_a?(Rack::Response)
    cached_render
  else
    nil
  end
end