Sha256: f5bb1ade003a47f2c59df7a6f8581bc1e9500af4efde18af7119ebc317d6077a
Contents?: true
Size: 1.17 KB
Versions: 2
Compression:
Stored size: 1.17 KB
Contents
module WestfieldSwagger class SwaggerController < WestfieldSwagger::ApplicationController rescue_from ApiSpecification::SpecificationParseError, with: :specification_parse_error rescue_from ApiSpecification::SpecificationMissing, with: :specification_missing ENV_PREFIX = %w(uat production).include?(Rails.env) ? "#{Rails.env}_" : '' def index if params[:service] # Access service swagger env_prefix = '' @service = "#{params[:service]}/" else # Access roll-up swagger env_prefix = ENV_PREFIX @service = "" end @spec = WestfieldSwagger::ApiSpecification.new(params[:version], binding, request, env_prefix) respond_to do |format| format.html format.json { render json: @spec.read } format.all { render text: "Format '#{params[:format]}' not supported", status: 404 } end end def specification_parse_error(exception) data = { error: exception.message } render json: data, status: 500 end def specification_missing(exception) data = { error: exception.message } render json: data, status: 404 end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
westfield_swagger-1.2.6 | app/controllers/westfield_swagger/swagger_controller.rb |
westfield_swagger-1.2.5 | app/controllers/westfield_swagger/swagger_controller.rb |