module Apipie::DSL::Action

Public Instance Methods

api(method, path, desc = nil, options={}) click to toggle source

# load paths from routes and don't provide description api

# File lib/apipie/dsl_definition.rb, line 83
def api(method, path, desc = nil, options={}) #:doc:
  return unless Apipie.active_dsl?
  _apipie_dsl_data[:api] = true
  _apipie_dsl_data[:api_args] << [method, path, desc, options]
end
api!(desc = nil, options={}) click to toggle source

# load paths from routes api! “short description”,

# File lib/apipie/dsl_definition.rb, line 92
def api!(desc = nil, options={}) #:doc:
  return unless Apipie.active_dsl?
  _apipie_dsl_data[:api] = true
  _apipie_dsl_data[:api_from_routes] = { :desc => desc, :options =>options }
end
def_param_group(name, &block) click to toggle source
# File lib/apipie/dsl_definition.rb, line 75
def def_param_group(name, &block)
  Apipie.add_param_group(self, name, &block)
end
example(example) click to toggle source

Show some example of what does the described method return.

# File lib/apipie/dsl_definition.rb, line 110
def example(example) #:doc:
  return unless Apipie.active_dsl?
  _apipie_dsl_data[:examples] << example.strip_heredoc
end
resource_description(options = {}, &block) click to toggle source

Describe whole resource

Example: api :desc => “Show user profile”, :path => “/users/”, :version => '1.0 - 3.4.2012' param :id, Fixnum, :desc => “User ID”, :required => true desc <<-EOS

Long description...

EOS

# File lib/apipie/dsl_definition.rb, line 130
def resource_description(options = {}, &block) #:doc:
  return unless Apipie.active_dsl?
  raise ArgumentError, "Block expected" unless block_given?

  dsl_data = ResourceDescriptionDsl.eval_dsl(self, &block)
  versions = dsl_data[:api_versions]
  @apipie_resource_descriptions = versions.map do |version|
    Apipie.define_resource_description(self, version, dsl_data)
  end
  Apipie.set_controller_versions(self, versions)
end
see(*args) click to toggle source

Reference other similar method

api :PUT, '/articles/:id'
see "articles#create"
def update; end
# File lib/apipie/dsl_definition.rb, line 103
def see(*args)
  return unless Apipie.active_dsl?
  _apipie_dsl_data[:see] << args
end
show(show) click to toggle source

Determine if the method should be included in the documentation

# File lib/apipie/dsl_definition.rb, line 117
def show(show)
  return unless Apipie.active_dsl?
  _apipie_dsl_data[:show] = show
end