class Skeleton::Operation

Attributes

describe[RW]
description[RW]
id[RW]
identify[RW]
responses[R]
summarize[RW]
summary[RW]

Public Class Methods

new() click to toggle source
# File lib/skeleton/operation.rb, line 9
def initialize
  @responses = {}
  @tags = {}
  @consumes = {}
  @produces = {}
  @parameters = Skeleton::Parameters.new
end

Public Instance Methods

consume(*values) click to toggle source
# File lib/skeleton/operation.rb, line 41
def consume(*values)
  values.each { |t| @consumes[t.to_s] = true }
end
consumes() click to toggle source
# File lib/skeleton/operation.rb, line 45
def consumes
  @consumes.map { |s, _| s }
end
consumes?() click to toggle source
# File lib/skeleton/operation.rb, line 49
def consumes?
  !@consumes.empty?
end
deprecate() click to toggle source
# File lib/skeleton/operation.rb, line 21
def deprecate
  @deprecated = true
end
deprecated?() click to toggle source
# File lib/skeleton/operation.rb, line 25
def deprecated?
  !!@deprecated
end
id?() click to toggle source
# File lib/skeleton/operation.rb, line 29
def id?
  !!@id
end
parameters(location=:query, &block) click to toggle source
# File lib/skeleton/operation.rb, line 72
def parameters(location=:query, &block)
  params = Skeleton::Parameters.new
  params.instance_eval(&block) if block
  params.each do |p|
    p.location = location
    @parameters.add(p)
  end
  @parameters
end
parameters?() click to toggle source
# File lib/skeleton/operation.rb, line 82
def parameters?
  !@parameters.empty?
end
produce(*values) click to toggle source
# File lib/skeleton/operation.rb, line 53
def produce(*values)
  values.each { |t| @produces[t.to_s] = true }
end
produces() click to toggle source
# File lib/skeleton/operation.rb, line 57
def produces
  @produces.map { |s, _| s }
end
produces?() click to toggle source
# File lib/skeleton/operation.rb, line 61
def produces?
  !@produces.empty?
end
response(value, options={}, &block) click to toggle source
# File lib/skeleton/operation.rb, line 65
def response(value, options={}, &block)
  @responses[value] = Skeleton::Response.new
  @responses[value].instance_eval(&block) if block
  @responses[:default] = @responses[value] if options[:default]
  @responses[value]
end
tag(*values) click to toggle source
# File lib/skeleton/operation.rb, line 33
def tag(*values)
  values.each { |v| @tags[v] = true }
end
tags() click to toggle source
# File lib/skeleton/operation.rb, line 37
def tags
  @tags.map { |t,_| t.to_s }
end