class Dox::DSL::Action

Attributes

desc[W]
name[W]
params[W]
path[W]
query_params[W]
request_schema[W]
response_schema_fail[W]
response_schema_success[W]
verb[W]

Public Class Methods

new(name, &block) click to toggle source
# File lib/dox/dsl/action.rb, line 16
def initialize(name, &block)
  self.name = name
  instance_eval(&block) if block_given?

  raise(Dox::Errors::InvalidActionError, 'Action name is required!') if @name.blank?
end

Public Instance Methods

config() click to toggle source
# File lib/dox/dsl/action.rb, line 23
def config
  { action_request_schema: @request_schema.presence,
    action_response_schema_success: @response_schema_success.presence,
    action_response_schema_fail: @response_schema_fail.presence,
    action_name: @name.presence,
    action_verb: @verb.presence,
    action_path: @path.presence,
    action_desc: @desc.presence || '',
    action_params: @params,
    action_query_params: @query_params.presence || [] }
end