Class: Swagger::Data::Paths

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby-swagger/data/paths.rb

Overview

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Object

attr_swagger, #bulk_set, #swagger_attributes, #to_json, #to_yaml

Constructor Details

#initializePaths

Returns a new instance of Paths.



6
7
8
# File 'lib/ruby-swagger/data/paths.rb', line 6

def initialize
  @paths = {}
end

Class Method Details

.parse(paths) ⇒ Object

Raises:

  • (ArgumentError)


10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/ruby-swagger/data/paths.rb', line 10

def self.parse(paths)
  raise ArgumentError.new('Swagger::Data::Paths#parse - paths object is nil') unless paths
  raise ArgumentError.new('Swagger::Data::Paths#parse - paths object is not an hash') unless paths.is_a?(Hash)

  pts = Swagger::Data::Paths.new

  paths.each do |path, path_obj|
    pts.add_path(path, path_obj)
  end

  pts
end

Instance Method Details

#[](path) ⇒ Object



38
39
40
# File 'lib/ruby-swagger/data/paths.rb', line 38

def [](path)
  @paths[path]
end

#add_path(path, path_obj) ⇒ Object

Raises:

  • (ArgumentError)


23
24
25
26
27
28
29
30
31
32
# File 'lib/ruby-swagger/data/paths.rb', line 23

def add_path(path, path_obj)
  raise ArgumentError.new('Swagger::Data::Paths#parse - path is nil') if path.nil? || path.empty?
  raise ArgumentError.new('Swagger::Data::Paths#parse - path object is nil') if path_obj.nil?

  unless path_obj.is_a?(Swagger::Data::Path)
    path_obj = Swagger::Data::Path.parse(path_obj)
  end

  @paths[path] = path_obj
end

#all_pathsObject



34
35
36
# File 'lib/ruby-swagger/data/paths.rb', line 34

def all_paths
  @paths.values
end

#to_swaggerObject



42
43
44
45
46
47
48
49
50
# File 'lib/ruby-swagger/data/paths.rb', line 42

def to_swagger
  swag_obj = {}

  @paths.each do |path, path_obj|
    swag_obj[path] = path_obj.to_swagger
  end

  swag_obj
end