Sha256: 514f63032663aaae32b97ba0de11a5f3fefa670d3fd90d6edb6df25bfdb297d6

Contents?: true

Size: 606 Bytes

Versions: 2

Compression:

Stored size: 606 Bytes

Contents

module JSONAPIonify::Api
  module Resource::Definitions::ResponseHeaders

    def self.extended(klass)
      klass.class_eval do
        extend JSONAPIonify::InheritedAttributes
        inherited_hash_attribute :response_header_definitions

        context(:response_headers) do |context|
          self.class.response_header_definitions.each_with_object({}) do |(name, block), headers|
            headers[name.to_s] = instance_exec(context, &block)
          end
        end
      end
    end

    def response_header(name, &block)
      self.response_header_definitions[name] = block
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
jsonapionify-0.9.0 lib/jsonapionify/api/resource/definitions/response_headers.rb
jsonapionify-0.0.1.pre lib/jsonapionify/api/resource/definitions/response_headers.rb