Sha256: 8e1f070b1136bc182a51548e2f33b52fbd5de7e13fde296db94d8de1fae26cd9
Contents?: true
Size: 1.37 KB
Versions: 1
Compression:
Stored size: 1.37 KB
Contents
require "alephant/broker/errors/invalid_cache_key" require "alephant/logger" require "aws-sdk" require "ostruct" require "date" module Alephant module Broker module Response class Base include Logger attr_reader :content, :headers, :status STATUS_CODE_MAPPING = { 200 => "ok", 404 => "Not found", 500 => "Error retrieving content" } def initialize(status = 200, content_type = "text/html") @content = STATUS_CODE_MAPPING[status] @headers = { "Content-Type" => content_type } @status = status log_status setup end protected def setup; end private def log_status add_no_cache_headers if status !~ /200/ end def add_no_cache_headers headers.merge!( "Cache-Control" => "no-cache, must-revalidate", "Pragma" => "no-cache", "Expires" => Date.today.prev_year.httpdate ) log end def log logger.metric("BrokerResponse#{status}", opts) end def opts { :dimensions => { :module => "AlephantBrokerResponse", :class => "Base", :function => "log" } } end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
alephant-broker-3.5.1 | lib/alephant/broker/response/base.rb |