Class: RamlParser::Model::Resource

Inherits:
Object
  • Object
show all
Defined in:
lib/raml_parser/model.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(absolute_uri, relative_uri, display_name = nil, description = nil, base_uri_parameters = {}, uri_parameters = {}, methods = {}, type = {}, is = {}, secured_by = []) ⇒ Resource

Returns a new instance of Resource.



26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/raml_parser/model.rb', line 26

def initialize(absolute_uri, relative_uri, display_name = nil, description = nil, base_uri_parameters = {}, uri_parameters = {}, methods = {}, type = {}, is = {}, secured_by = [])
  @absolute_uri = absolute_uri
  @relative_uri = relative_uri
  @display_name = display_name
  @description = description
  @base_uri_parameters = base_uri_parameters
  @uri_parameters = uri_parameters
  @methods = methods
  @type = type
  @is = is
  @secured_by = secured_by
end

Instance Attribute Details

#absolute_uriObject

Returns the value of attribute absolute_uri.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def absolute_uri
  @absolute_uri
end

#base_uri_parametersObject

Returns the value of attribute base_uri_parameters.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def base_uri_parameters
  @base_uri_parameters
end

#descriptionObject

Returns the value of attribute description.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def description
  @description
end

#display_nameObject

Returns the value of attribute display_name.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def display_name
  @display_name
end

#isObject

Returns the value of attribute is.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def is
  @is
end

#methodsObject

Returns the value of attribute methods.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def methods
  @methods
end

#relative_uriObject

Returns the value of attribute relative_uri.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def relative_uri
  @relative_uri
end

#secured_byObject

Returns the value of attribute secured_by.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def secured_by
  @secured_by
end

#typeObject

Returns the value of attribute type.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def type
  @type
end

#uri_parametersObject

Returns the value of attribute uri_parameters.



24
25
26
# File 'lib/raml_parser/model.rb', line 24

def uri_parameters
  @uri_parameters
end

Class Method Details

.merge(a, b) ⇒ Object



39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/raml_parser/model.rb', line 39

def self.merge(a, b)
  resource = Resource.new(b.absolute_uri, b.relative_uri)

  resource.display_name = if b.display_name then b.display_name else a.display_name end
  resource.description = if b.description then b.description else a.description end
  resource.base_uri_parameters = a.base_uri_parameters.merge(b.base_uri_parameters)
  resource.uri_parameters = a.uri_parameters.merge(b.uri_parameters)
  resource.methods = a.methods.merge(b.methods)
  resource.type = a.type.merge(b.type)
  resource.is = a.is.merge(b.is)
  resource.secured_by = (a.secured_by + b.secured_by).uniq

  resource
end