pulp_container_client 2.5.2 → 2.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -5
  3. data/docs/ContainerContainerDistribution.md +6 -6
  4. data/docs/ContainerContainerDistributionResponse.md +10 -10
  5. data/docs/ContainerContainerPushRepositoryResponse.md +2 -0
  6. data/docs/ContainerContainerRepository.md +2 -0
  7. data/docs/ContainerContainerRepositoryResponse.md +2 -0
  8. data/docs/ContentBlobsApi.md +2 -2
  9. data/docs/ContentManifestsApi.md +2 -2
  10. data/docs/ContentSummary.md +3 -3
  11. data/docs/ContentSummaryResponse.md +3 -3
  12. data/docs/ContentTagsApi.md +2 -2
  13. data/docs/PatchedcontainerContainerDistribution.md +6 -6
  14. data/docs/PatchedcontainerContainerRepository.md +2 -0
  15. data/docs/RepositoryVersionResponse.md +2 -0
  16. data/lib/pulp_container_client/api/content_blobs_api.rb +5 -5
  17. data/lib/pulp_container_client/api/content_manifests_api.rb +5 -5
  18. data/lib/pulp_container_client/api/content_tags_api.rb +5 -5
  19. data/lib/pulp_container_client/api/repositories_container_versions_api.rb +0 -40
  20. data/lib/pulp_container_client/models/container_container_distribution.rb +33 -33
  21. data/lib/pulp_container_client/models/container_container_distribution_response.rb +50 -50
  22. data/lib/pulp_container_client/models/container_container_push_repository_response.rb +27 -1
  23. data/lib/pulp_container_client/models/container_container_repository.rb +27 -1
  24. data/lib/pulp_container_client/models/container_container_repository_response.rb +27 -1
  25. data/lib/pulp_container_client/models/content_summary.rb +12 -6
  26. data/lib/pulp_container_client/models/content_summary_response.rb +12 -6
  27. data/lib/pulp_container_client/models/patchedcontainer_container_distribution.rb +28 -28
  28. data/lib/pulp_container_client/models/patchedcontainer_container_repository.rb +27 -1
  29. data/lib/pulp_container_client/models/repository_version_response.rb +10 -1
  30. data/lib/pulp_container_client/version.rb +1 -1
  31. data/spec/api/content_blobs_api_spec.rb +1 -1
  32. data/spec/api/content_manifests_api_spec.rb +1 -1
  33. data/spec/api/content_tags_api_spec.rb +1 -1
  34. data/spec/models/container_container_distribution_response_spec.rb +8 -8
  35. data/spec/models/container_container_distribution_spec.rb +6 -6
  36. data/spec/models/container_container_push_repository_response_spec.rb +6 -0
  37. data/spec/models/container_container_repository_response_spec.rb +6 -0
  38. data/spec/models/container_container_repository_spec.rb +6 -0
  39. data/spec/models/patchedcontainer_container_distribution_spec.rb +6 -6
  40. data/spec/models/patchedcontainer_container_repository_spec.rb +6 -0
  41. data/spec/models/repository_version_response_spec.rb +6 -0
  42. metadata +42 -42
@@ -15,8 +15,10 @@ require 'date'
15
15
  module PulpContainerClient
16
16
  # A serializer for ContainerDistribution.
17
17
  class ContainerContainerDistribution
18
- # The base (relative) path component of the published url. Avoid paths that overlap with other distribution base paths (e.g. \"foo\" and \"foo/bar\")
19
- attr_accessor :base_path
18
+ # The latest RepositoryVersion for this Repository will be served.
19
+ attr_accessor :repository
20
+
21
+ attr_accessor :pulp_labels
20
22
 
21
23
  # A unique name. Ex, `rawhide` and `stable`.
22
24
  attr_accessor :name
@@ -24,14 +26,12 @@ module PulpContainerClient
24
26
  # An optional content-guard. If none is specified, a default one will be used.
25
27
  attr_accessor :content_guard
26
28
 
29
+ # The base (relative) path component of the published url. Avoid paths that overlap with other distribution base paths (e.g. \"foo\" and \"foo/bar\")
30
+ attr_accessor :base_path
31
+
27
32
  # RepositoryVersion to be served
28
33
  attr_accessor :repository_version
29
34
 
30
- attr_accessor :pulp_labels
31
-
32
- # The latest RepositoryVersion for this Repository will be served.
33
- attr_accessor :repository
34
-
35
35
  # Restrict pull access to explicitly authorized users. Defaults to unrestricted pull access.
36
36
  attr_accessor :private
37
37
 
@@ -41,12 +41,12 @@ module PulpContainerClient
41
41
  # Attribute mapping from ruby-style variable name to JSON key.
42
42
  def self.attribute_map
43
43
  {
44
- :'base_path' => :'base_path',
44
+ :'repository' => :'repository',
45
+ :'pulp_labels' => :'pulp_labels',
45
46
  :'name' => :'name',
46
47
  :'content_guard' => :'content_guard',
48
+ :'base_path' => :'base_path',
47
49
  :'repository_version' => :'repository_version',
48
- :'pulp_labels' => :'pulp_labels',
49
- :'repository' => :'repository',
50
50
  :'private' => :'private',
51
51
  :'description' => :'description'
52
52
  }
@@ -55,12 +55,12 @@ module PulpContainerClient
55
55
  # Attribute type mapping.
56
56
  def self.openapi_types
57
57
  {
58
- :'base_path' => :'String',
58
+ :'repository' => :'String',
59
+ :'pulp_labels' => :'Object',
59
60
  :'name' => :'String',
60
61
  :'content_guard' => :'String',
62
+ :'base_path' => :'String',
61
63
  :'repository_version' => :'String',
62
- :'pulp_labels' => :'Object',
63
- :'repository' => :'String',
64
64
  :'private' => :'Boolean',
65
65
  :'description' => :'String'
66
66
  }
@@ -69,8 +69,8 @@ module PulpContainerClient
69
69
  # List of attributes with nullable: true
70
70
  def self.openapi_nullable
71
71
  Set.new([
72
- :'repository_version',
73
72
  :'repository',
73
+ :'repository_version',
74
74
  :'description'
75
75
  ])
76
76
  end
@@ -90,8 +90,12 @@ module PulpContainerClient
90
90
  h[k.to_sym] = v
91
91
  }
92
92
 
93
- if attributes.key?(:'base_path')
94
- self.base_path = attributes[:'base_path']
93
+ if attributes.key?(:'repository')
94
+ self.repository = attributes[:'repository']
95
+ end
96
+
97
+ if attributes.key?(:'pulp_labels')
98
+ self.pulp_labels = attributes[:'pulp_labels']
95
99
  end
96
100
 
97
101
  if attributes.key?(:'name')
@@ -102,16 +106,12 @@ module PulpContainerClient
102
106
  self.content_guard = attributes[:'content_guard']
103
107
  end
104
108
 
105
- if attributes.key?(:'repository_version')
106
- self.repository_version = attributes[:'repository_version']
107
- end
108
-
109
- if attributes.key?(:'pulp_labels')
110
- self.pulp_labels = attributes[:'pulp_labels']
109
+ if attributes.key?(:'base_path')
110
+ self.base_path = attributes[:'base_path']
111
111
  end
112
112
 
113
- if attributes.key?(:'repository')
114
- self.repository = attributes[:'repository']
113
+ if attributes.key?(:'repository_version')
114
+ self.repository_version = attributes[:'repository_version']
115
115
  end
116
116
 
117
117
  if attributes.key?(:'private')
@@ -127,22 +127,22 @@ module PulpContainerClient
127
127
  # @return Array for valid properties with the reasons
128
128
  def list_invalid_properties
129
129
  invalid_properties = Array.new
130
- if @base_path.nil?
131
- invalid_properties.push('invalid value for "base_path", base_path cannot be nil.')
132
- end
133
-
134
130
  if @name.nil?
135
131
  invalid_properties.push('invalid value for "name", name cannot be nil.')
136
132
  end
137
133
 
134
+ if @base_path.nil?
135
+ invalid_properties.push('invalid value for "base_path", base_path cannot be nil.')
136
+ end
137
+
138
138
  invalid_properties
139
139
  end
140
140
 
141
141
  # Check to see if the all the properties in the model are valid
142
142
  # @return true if the model is valid
143
143
  def valid?
144
- return false if @base_path.nil?
145
144
  return false if @name.nil?
145
+ return false if @base_path.nil?
146
146
  true
147
147
  end
148
148
 
@@ -151,12 +151,12 @@ module PulpContainerClient
151
151
  def ==(o)
152
152
  return true if self.equal?(o)
153
153
  self.class == o.class &&
154
- base_path == o.base_path &&
154
+ repository == o.repository &&
155
+ pulp_labels == o.pulp_labels &&
155
156
  name == o.name &&
156
157
  content_guard == o.content_guard &&
158
+ base_path == o.base_path &&
157
159
  repository_version == o.repository_version &&
158
- pulp_labels == o.pulp_labels &&
159
- repository == o.repository &&
160
160
  private == o.private &&
161
161
  description == o.description
162
162
  end
@@ -170,7 +170,7 @@ module PulpContainerClient
170
170
  # Calculates hash code according to all attributes.
171
171
  # @return [Integer] Hash code
172
172
  def hash
173
- [base_path, name, content_guard, repository_version, pulp_labels, repository, private, description].hash
173
+ [repository, pulp_labels, name, content_guard, base_path, repository_version, private, description].hash
174
174
  end
175
175
 
176
176
  # Builds the object from hash
@@ -15,8 +15,15 @@ require 'date'
15
15
  module PulpContainerClient
16
16
  # A serializer for ContainerDistribution.
17
17
  class ContainerContainerDistributionResponse
18
- # The base (relative) path component of the published url. Avoid paths that overlap with other distribution base paths (e.g. \"foo\" and \"foo/bar\")
19
- attr_accessor :base_path
18
+ # The latest RepositoryVersion for this Repository will be served.
19
+ attr_accessor :repository
20
+
21
+ # Timestamp of creation.
22
+ attr_accessor :pulp_created
23
+
24
+ attr_accessor :pulp_labels
25
+
26
+ attr_accessor :pulp_href
20
27
 
21
28
  # A unique name. Ex, `rawhide` and `stable`.
22
29
  attr_accessor :name
@@ -24,19 +31,12 @@ module PulpContainerClient
24
31
  # An optional content-guard. If none is specified, a default one will be used.
25
32
  attr_accessor :content_guard
26
33
 
34
+ # The base (relative) path component of the published url. Avoid paths that overlap with other distribution base paths (e.g. \"foo\" and \"foo/bar\")
35
+ attr_accessor :base_path
36
+
27
37
  # RepositoryVersion to be served
28
38
  attr_accessor :repository_version
29
39
 
30
- attr_accessor :pulp_labels
31
-
32
- # The latest RepositoryVersion for this Repository will be served.
33
- attr_accessor :repository
34
-
35
- attr_accessor :pulp_href
36
-
37
- # Timestamp of creation.
38
- attr_accessor :pulp_created
39
-
40
40
  # The Registry hostame/name/ to use with docker pull command defined by this distribution.
41
41
  attr_accessor :registry_path
42
42
 
@@ -52,14 +52,14 @@ module PulpContainerClient
52
52
  # Attribute mapping from ruby-style variable name to JSON key.
53
53
  def self.attribute_map
54
54
  {
55
- :'base_path' => :'base_path',
55
+ :'repository' => :'repository',
56
+ :'pulp_created' => :'pulp_created',
57
+ :'pulp_labels' => :'pulp_labels',
58
+ :'pulp_href' => :'pulp_href',
56
59
  :'name' => :'name',
57
60
  :'content_guard' => :'content_guard',
61
+ :'base_path' => :'base_path',
58
62
  :'repository_version' => :'repository_version',
59
- :'pulp_labels' => :'pulp_labels',
60
- :'repository' => :'repository',
61
- :'pulp_href' => :'pulp_href',
62
- :'pulp_created' => :'pulp_created',
63
63
  :'registry_path' => :'registry_path',
64
64
  :'namespace' => :'namespace',
65
65
  :'private' => :'private',
@@ -70,14 +70,14 @@ module PulpContainerClient
70
70
  # Attribute type mapping.
71
71
  def self.openapi_types
72
72
  {
73
- :'base_path' => :'String',
73
+ :'repository' => :'String',
74
+ :'pulp_created' => :'DateTime',
75
+ :'pulp_labels' => :'Object',
76
+ :'pulp_href' => :'String',
74
77
  :'name' => :'String',
75
78
  :'content_guard' => :'String',
79
+ :'base_path' => :'String',
76
80
  :'repository_version' => :'String',
77
- :'pulp_labels' => :'Object',
78
- :'repository' => :'String',
79
- :'pulp_href' => :'String',
80
- :'pulp_created' => :'DateTime',
81
81
  :'registry_path' => :'String',
82
82
  :'namespace' => :'String',
83
83
  :'private' => :'Boolean',
@@ -88,8 +88,8 @@ module PulpContainerClient
88
88
  # List of attributes with nullable: true
89
89
  def self.openapi_nullable
90
90
  Set.new([
91
- :'repository_version',
92
91
  :'repository',
92
+ :'repository_version',
93
93
  :'description'
94
94
  ])
95
95
  end
@@ -109,36 +109,36 @@ module PulpContainerClient
109
109
  h[k.to_sym] = v
110
110
  }
111
111
 
112
- if attributes.key?(:'base_path')
113
- self.base_path = attributes[:'base_path']
112
+ if attributes.key?(:'repository')
113
+ self.repository = attributes[:'repository']
114
114
  end
115
115
 
116
- if attributes.key?(:'name')
117
- self.name = attributes[:'name']
116
+ if attributes.key?(:'pulp_created')
117
+ self.pulp_created = attributes[:'pulp_created']
118
118
  end
119
119
 
120
- if attributes.key?(:'content_guard')
121
- self.content_guard = attributes[:'content_guard']
120
+ if attributes.key?(:'pulp_labels')
121
+ self.pulp_labels = attributes[:'pulp_labels']
122
122
  end
123
123
 
124
- if attributes.key?(:'repository_version')
125
- self.repository_version = attributes[:'repository_version']
124
+ if attributes.key?(:'pulp_href')
125
+ self.pulp_href = attributes[:'pulp_href']
126
126
  end
127
127
 
128
- if attributes.key?(:'pulp_labels')
129
- self.pulp_labels = attributes[:'pulp_labels']
128
+ if attributes.key?(:'name')
129
+ self.name = attributes[:'name']
130
130
  end
131
131
 
132
- if attributes.key?(:'repository')
133
- self.repository = attributes[:'repository']
132
+ if attributes.key?(:'content_guard')
133
+ self.content_guard = attributes[:'content_guard']
134
134
  end
135
135
 
136
- if attributes.key?(:'pulp_href')
137
- self.pulp_href = attributes[:'pulp_href']
136
+ if attributes.key?(:'base_path')
137
+ self.base_path = attributes[:'base_path']
138
138
  end
139
139
 
140
- if attributes.key?(:'pulp_created')
141
- self.pulp_created = attributes[:'pulp_created']
140
+ if attributes.key?(:'repository_version')
141
+ self.repository_version = attributes[:'repository_version']
142
142
  end
143
143
 
144
144
  if attributes.key?(:'registry_path')
@@ -162,22 +162,22 @@ module PulpContainerClient
162
162
  # @return Array for valid properties with the reasons
163
163
  def list_invalid_properties
164
164
  invalid_properties = Array.new
165
- if @base_path.nil?
166
- invalid_properties.push('invalid value for "base_path", base_path cannot be nil.')
167
- end
168
-
169
165
  if @name.nil?
170
166
  invalid_properties.push('invalid value for "name", name cannot be nil.')
171
167
  end
172
168
 
169
+ if @base_path.nil?
170
+ invalid_properties.push('invalid value for "base_path", base_path cannot be nil.')
171
+ end
172
+
173
173
  invalid_properties
174
174
  end
175
175
 
176
176
  # Check to see if the all the properties in the model are valid
177
177
  # @return true if the model is valid
178
178
  def valid?
179
- return false if @base_path.nil?
180
179
  return false if @name.nil?
180
+ return false if @base_path.nil?
181
181
  true
182
182
  end
183
183
 
@@ -186,14 +186,14 @@ module PulpContainerClient
186
186
  def ==(o)
187
187
  return true if self.equal?(o)
188
188
  self.class == o.class &&
189
- base_path == o.base_path &&
189
+ repository == o.repository &&
190
+ pulp_created == o.pulp_created &&
191
+ pulp_labels == o.pulp_labels &&
192
+ pulp_href == o.pulp_href &&
190
193
  name == o.name &&
191
194
  content_guard == o.content_guard &&
195
+ base_path == o.base_path &&
192
196
  repository_version == o.repository_version &&
193
- pulp_labels == o.pulp_labels &&
194
- repository == o.repository &&
195
- pulp_href == o.pulp_href &&
196
- pulp_created == o.pulp_created &&
197
197
  registry_path == o.registry_path &&
198
198
  namespace == o.namespace &&
199
199
  private == o.private &&
@@ -209,7 +209,7 @@ module PulpContainerClient
209
209
  # Calculates hash code according to all attributes.
210
210
  # @return [Integer] Hash code
211
211
  def hash
212
- [base_path, name, content_guard, repository_version, pulp_labels, repository, pulp_href, pulp_created, registry_path, namespace, private, description].hash
212
+ [repository, pulp_created, pulp_labels, pulp_href, name, content_guard, base_path, repository_version, registry_path, namespace, private, description].hash
213
213
  end
214
214
 
215
215
  # Builds the object from hash
@@ -32,6 +32,9 @@ module PulpContainerClient
32
32
  # An optional description.
33
33
  attr_accessor :description
34
34
 
35
+ # Retain X versions of the repository. Default is null which retains all versions. This is provided as a tech preview in Pulp 3 and may change in the future.
36
+ attr_accessor :retained_versions
37
+
35
38
  attr_accessor :remote
36
39
 
37
40
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -44,6 +47,7 @@ module PulpContainerClient
44
47
  :'latest_version_href' => :'latest_version_href',
45
48
  :'name' => :'name',
46
49
  :'description' => :'description',
50
+ :'retained_versions' => :'retained_versions',
47
51
  :'remote' => :'remote'
48
52
  }
49
53
  end
@@ -58,6 +62,7 @@ module PulpContainerClient
58
62
  :'latest_version_href' => :'String',
59
63
  :'name' => :'String',
60
64
  :'description' => :'String',
65
+ :'retained_versions' => :'Integer',
61
66
  :'remote' => :'String'
62
67
  }
63
68
  end
@@ -66,6 +71,7 @@ module PulpContainerClient
66
71
  def self.openapi_nullable
67
72
  Set.new([
68
73
  :'description',
74
+ :'retained_versions',
69
75
  :'remote'
70
76
  ])
71
77
  end
@@ -113,6 +119,10 @@ module PulpContainerClient
113
119
  self.description = attributes[:'description']
114
120
  end
115
121
 
122
+ if attributes.key?(:'retained_versions')
123
+ self.retained_versions = attributes[:'retained_versions']
124
+ end
125
+
116
126
  if attributes.key?(:'remote')
117
127
  self.remote = attributes[:'remote']
118
128
  end
@@ -126,6 +136,10 @@ module PulpContainerClient
126
136
  invalid_properties.push('invalid value for "name", name cannot be nil.')
127
137
  end
128
138
 
139
+ if !@retained_versions.nil? && @retained_versions < 1
140
+ invalid_properties.push('invalid value for "retained_versions", must be greater than or equal to 1.')
141
+ end
142
+
129
143
  invalid_properties
130
144
  end
131
145
 
@@ -133,9 +147,20 @@ module PulpContainerClient
133
147
  # @return true if the model is valid
134
148
  def valid?
135
149
  return false if @name.nil?
150
+ return false if !@retained_versions.nil? && @retained_versions < 1
136
151
  true
137
152
  end
138
153
 
154
+ # Custom attribute writer method with validation
155
+ # @param [Object] retained_versions Value to be assigned
156
+ def retained_versions=(retained_versions)
157
+ if !retained_versions.nil? && retained_versions < 1
158
+ fail ArgumentError, 'invalid value for "retained_versions", must be greater than or equal to 1.'
159
+ end
160
+
161
+ @retained_versions = retained_versions
162
+ end
163
+
139
164
  # Checks equality by comparing each attribute.
140
165
  # @param [Object] Object to be compared
141
166
  def ==(o)
@@ -148,6 +173,7 @@ module PulpContainerClient
148
173
  latest_version_href == o.latest_version_href &&
149
174
  name == o.name &&
150
175
  description == o.description &&
176
+ retained_versions == o.retained_versions &&
151
177
  remote == o.remote
152
178
  end
153
179
 
@@ -160,7 +186,7 @@ module PulpContainerClient
160
186
  # Calculates hash code according to all attributes.
161
187
  # @return [Integer] Hash code
162
188
  def hash
163
- [pulp_href, pulp_created, versions_href, pulp_labels, latest_version_href, name, description, remote].hash
189
+ [pulp_href, pulp_created, versions_href, pulp_labels, latest_version_href, name, description, retained_versions, remote].hash
164
190
  end
165
191
 
166
192
  # Builds the object from hash
@@ -23,6 +23,9 @@ module PulpContainerClient
23
23
  # An optional description.
24
24
  attr_accessor :description
25
25
 
26
+ # Retain X versions of the repository. Default is null which retains all versions. This is provided as a tech preview in Pulp 3 and may change in the future.
27
+ attr_accessor :retained_versions
28
+
26
29
  attr_accessor :remote
27
30
 
28
31
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -31,6 +34,7 @@ module PulpContainerClient
31
34
  :'pulp_labels' => :'pulp_labels',
32
35
  :'name' => :'name',
33
36
  :'description' => :'description',
37
+ :'retained_versions' => :'retained_versions',
34
38
  :'remote' => :'remote'
35
39
  }
36
40
  end
@@ -41,6 +45,7 @@ module PulpContainerClient
41
45
  :'pulp_labels' => :'Object',
42
46
  :'name' => :'String',
43
47
  :'description' => :'String',
48
+ :'retained_versions' => :'Integer',
44
49
  :'remote' => :'String'
45
50
  }
46
51
  end
@@ -49,6 +54,7 @@ module PulpContainerClient
49
54
  def self.openapi_nullable
50
55
  Set.new([
51
56
  :'description',
57
+ :'retained_versions',
52
58
  :'remote'
53
59
  ])
54
60
  end
@@ -80,6 +86,10 @@ module PulpContainerClient
80
86
  self.description = attributes[:'description']
81
87
  end
82
88
 
89
+ if attributes.key?(:'retained_versions')
90
+ self.retained_versions = attributes[:'retained_versions']
91
+ end
92
+
83
93
  if attributes.key?(:'remote')
84
94
  self.remote = attributes[:'remote']
85
95
  end
@@ -93,6 +103,10 @@ module PulpContainerClient
93
103
  invalid_properties.push('invalid value for "name", name cannot be nil.')
94
104
  end
95
105
 
106
+ if !@retained_versions.nil? && @retained_versions < 1
107
+ invalid_properties.push('invalid value for "retained_versions", must be greater than or equal to 1.')
108
+ end
109
+
96
110
  invalid_properties
97
111
  end
98
112
 
@@ -100,9 +114,20 @@ module PulpContainerClient
100
114
  # @return true if the model is valid
101
115
  def valid?
102
116
  return false if @name.nil?
117
+ return false if !@retained_versions.nil? && @retained_versions < 1
103
118
  true
104
119
  end
105
120
 
121
+ # Custom attribute writer method with validation
122
+ # @param [Object] retained_versions Value to be assigned
123
+ def retained_versions=(retained_versions)
124
+ if !retained_versions.nil? && retained_versions < 1
125
+ fail ArgumentError, 'invalid value for "retained_versions", must be greater than or equal to 1.'
126
+ end
127
+
128
+ @retained_versions = retained_versions
129
+ end
130
+
106
131
  # Checks equality by comparing each attribute.
107
132
  # @param [Object] Object to be compared
108
133
  def ==(o)
@@ -111,6 +136,7 @@ module PulpContainerClient
111
136
  pulp_labels == o.pulp_labels &&
112
137
  name == o.name &&
113
138
  description == o.description &&
139
+ retained_versions == o.retained_versions &&
114
140
  remote == o.remote
115
141
  end
116
142
 
@@ -123,7 +149,7 @@ module PulpContainerClient
123
149
  # Calculates hash code according to all attributes.
124
150
  # @return [Integer] Hash code
125
151
  def hash
126
- [pulp_labels, name, description, remote].hash
152
+ [pulp_labels, name, description, retained_versions, remote].hash
127
153
  end
128
154
 
129
155
  # Builds the object from hash