Class: Jsapi::Meta::Server

Inherits:
Jsapi::Model::Base show all
Includes:
OpenAPI::Extensions
Defined in:
lib/jsapi/meta/server.rb

Overview

Specifies a server.

Instance Method Summary collapse

Methods included from OpenAPI::Extensions

included

Methods inherited from Jsapi::Model::Base

#==, #errors, #initialize, #inspect, model_name, #respond_to_missing?

Constructor Details

This class inherits a constructor from Jsapi::Model::Base

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Jsapi::Model::Base

Instance Method Details

#descriptionObject

:attr: description The description of the server.



12
# File 'lib/jsapi/meta/server.rb', line 12

attribute :description, String

#nameObject

:attr: name The optional unique name of the server.

Applies to OpenAPI 3.2 and higher.



19
# File 'lib/jsapi/meta/server.rb', line 19

attribute :name, String

#to_openapi(version) ⇒ Object

Returns a hash representing the OpenAPI server object.



32
33
34
35
36
37
38
39
40
41
# File 'lib/jsapi/meta/server.rb', line 32

def to_openapi(version, *)
  version = OpenAPI::Version.from(version)

  with_openapi_extensions(
    url: url,
    description: description,
    name: (name if version >= OpenAPI::V3_2),
    variables: variables.transform_values(&:to_openapi).presence
  )
end

#urlObject

:attr: url The absolute or relative URL of the server.



24
# File 'lib/jsapi/meta/server.rb', line 24

attribute :url, String

#variablesObject

:attr_reader: variables The server variables. Maps strings to ServerVariable objects.



29
# File 'lib/jsapi/meta/server.rb', line 29

attribute :variables, { String => ServerVariable }