Sha256: 5f0d32d7dc1107ac07951c7fff87a16c3a09ed4644fca043f8b2f0d508e05e80
Contents?: true
Size: 1.41 KB
Versions: 1
Compression:
Stored size: 1.41 KB
Contents
require 'swagger/swagger_object' require 'swagger/v2/parameter' require 'swagger/v2/response' module Swagger module V2 # Class representing a Swagger "Operation Object". # @see https://github.com/wordnik/swagger-spec/blob/master/versions/2.0.md#operationObject Operation Object class Operation < SwaggerObject extend Forwardable def_delegators :parent, :uri_template, :path, :host # required_field :verb, Symbol field :summary, String field :description, String field :operationId, String alias_method :operation_id, :operationId field :produces, Array[String] field :consumes, Array[String] field :tags, Array[String] field :parameters, Array[Parameter] field :responses, Hash[String => Response] field :schemes, Array[String] # TODO: Add externalDocs def api_title root.info.title end def full_name "#{api_title} - #{summary}" end def verb parent.operations.key self end def signature "#{verb.to_s.upcase} #{parent.uri_template}" end def default_response return nil if responses.values.nil? # FIXME: Swagger isn't very clear on "normal response codes" # In the examples, default is actually an error responses['200'] || responses['201'] || responses['default'] || responses.values.first end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
swagger-core-0.2.1 | lib/swagger/v2/operation.rb |