Class: Swagger::Schema

Inherits:
Object
  • Object
show all
Extended by:
SchemaAccessor
Includes:
HandleServers
Defined in:
lib/swagger/schema.rb,
lib/swagger/schema/util.rb,
lib/swagger/schema/header.rb,
lib/swagger/schema/server.rb,
lib/swagger/schema/content.rb,
lib/swagger/schema/headers.rb,
lib/swagger/schema/response.rb,
lib/swagger/schema/component.rb,
lib/swagger/schema/operation.rb,
lib/swagger/schema/parameter.rb,
lib/swagger/schema/path_item.rb,
lib/swagger/schema/responses.rb,
lib/swagger/schema/components.rb,
lib/swagger/schema/media_type.rb,
lib/swagger/schema/parameters.rb,
lib/swagger/schema/request_body.rb,
lib/swagger/schema/component_set.rb,
lib/swagger/schema/handle_servers.rb,
lib/swagger/schema/parameter_base.rb,
lib/swagger/schema/schema_accessor.rb,
lib/swagger/schema/media_type/validator.rb,
lib/swagger/schema/parameters/validator.rb,
lib/swagger/schema/media_type/deserializer.rb,
lib/swagger/schema/parameters/deserializer.rb

Defined Under Namespace

Modules: HandleServers, SchemaAccessor Classes: Component, ComponentSet, Components, Content, Header, Headers, MediaType, Operation, Parameter, ParameterBase, Parameters, PathItem, RequestBody, Response, Responses, Server, Util

Class Attribute Summary collapse

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from HandleServers

#server, #server_by_description, #servers

Constructor Details

#initialize(schema) ⇒ Schema

Returns a new instance of Schema.



28
29
30
# File 'lib/swagger/schema.rb', line 28

def initialize(schema)
  @schema = schema
end

Class Attribute Details

.currentObject

Returns the value of attribute current.



17
18
19
# File 'lib/swagger/schema.rb', line 17

def current
  @current
end

Instance Attribute Details

#lazy_schemaObject (readonly)

Returns the value of attribute lazy_schema.



14
15
16
# File 'lib/swagger/schema.rb', line 14

def lazy_schema
  @lazy_schema
end

#schemaObject (readonly)

Returns the value of attribute schema.



13
14
15
# File 'lib/swagger/schema.rb', line 13

def schema
  @schema
end

Class Method Details

.load_file(filepath) ⇒ Object



19
20
21
# File 'lib/swagger/schema.rb', line 19

def load_file(filepath)
  new(YAML.load_file(filepath)) # rubocop:disable Airbnb/UnsafeYamlMarshal
end

.load_file_to_current(file_path) ⇒ Object



23
24
25
# File 'lib/swagger/schema.rb', line 23

def load_file_to_current(file_path)
  @current = load_file(file_path)
end

Instance Method Details

#componentsObject



39
40
41
42
# File 'lib/swagger/schema.rb', line 39

def components
  components = Util.try_hash(@schema, 'components')
  Components.new(components) if components
end

#path(path) ⇒ Object



34
35
36
37
# File 'lib/swagger/schema.rb', line 34

def path(path)
  path_item = Util.try_hash(paths, path)
  PathItem.new(path_item) if path_item
end