module Deimos::Utils::SchemaControllerMixin::ClassMethods

Public Instance Methods

namespace(name) click to toggle source

Set the namespace for both requests and responses. @param name [String]

# File lib/deimos/utils/schema_controller_mixin.rb, line 52
def namespace(name)
  request_namespace(name)
  response_namespace(name)
end
namespaces() click to toggle source

@return [Hash<Symbol, String>]

# File lib/deimos/utils/schema_controller_mixin.rb, line 46
def namespaces
  @namespaces ||= {}
end
request_namespace(name) click to toggle source

Set the namespace for requests. @param name [String]

# File lib/deimos/utils/schema_controller_mixin.rb, line 59
def request_namespace(name)
  namespaces[:request] = name
end
response_namespace(name) click to toggle source

Set the namespace for repsonses. @param name [String]

# File lib/deimos/utils/schema_controller_mixin.rb, line 65
def response_namespace(name)
  namespaces[:response] = name
end
schema_mapping() click to toggle source

@return [Hash<String, Hash<Symbol, String>>]

# File lib/deimos/utils/schema_controller_mixin.rb, line 25
def schema_mapping
  @schema_mapping ||= {}
end
schemas(*actions, request: nil, response: nil, **kwactions) click to toggle source

Indicate which schemas should be assigned to actions. @param actions [Symbol] @param kwactions [String] @param request [String] @param response [String]

# File lib/deimos/utils/schema_controller_mixin.rb, line 34
def schemas(*actions, request: nil, response: nil, **kwactions)
  actions.each do |action|
    request ||= action.to_s.titleize
    response ||= action.to_s.titleize
    schema_mapping[action.to_s] = { request: request, response: response }
  end
  kwactions.each do |key, val|
    schema_mapping[key.to_s] = { request: val, response: val }
  end
end