pulpcore_client 3.65.0 → 3.67.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +68 -4
  3. data/docs/AccessPoliciesApi.md +4 -4
  4. data/docs/ArtifactDistributionResponse.md +12 -12
  5. data/docs/ContentApi.md +4 -4
  6. data/docs/ContentOpenpgpPublickeyApi.md +212 -0
  7. data/docs/ContentOpenpgpPublicsubkeyApi.md +150 -0
  8. data/docs/ContentOpenpgpSignatureApi.md +150 -0
  9. data/docs/ContentOpenpgpUserattributeApi.md +150 -0
  10. data/docs/ContentOpenpgpUseridApi.md +166 -0
  11. data/docs/DistributionsApi.md +4 -4
  12. data/docs/DistributionsOpenpgpApi.md +478 -0
  13. data/docs/FilesystemExportResponse.md +1 -1
  14. data/docs/ImportResponse.md +1 -1
  15. data/docs/NestedOpenPGPPublicSubkey.md +19 -0
  16. data/docs/NestedOpenPGPPublicSubkeyResponse.md +21 -0
  17. data/docs/NestedOpenPGPSignature.md +27 -0
  18. data/docs/NestedOpenPGPSignatureResponse.md +29 -0
  19. data/docs/NestedOpenPGPUserAttribute.md +17 -0
  20. data/docs/NestedOpenPGPUserAttributeResponse.md +19 -0
  21. data/docs/NestedOpenPGPUserID.md +17 -0
  22. data/docs/NestedOpenPGPUserIDResponse.md +19 -0
  23. data/docs/OpenPGPDistribution.md +29 -0
  24. data/docs/OpenPGPDistributionResponse.md +41 -0
  25. data/docs/OpenPGPKeyring.md +25 -0
  26. data/docs/OpenPGPKeyringResponse.md +37 -0
  27. data/docs/OpenPGPPublicKey.md +23 -0
  28. data/docs/OpenPGPPublicKeyResponse.md +33 -0
  29. data/docs/OpenPGPPublicSubkeyResponse.md +31 -0
  30. data/docs/OpenPGPSignatureResponse.md +39 -0
  31. data/docs/OpenPGPUserAttributeResponse.md +29 -0
  32. data/docs/OpenPGPUserIDResponse.md +29 -0
  33. data/docs/PaginatedOpenPGPDistributionResponseList.md +23 -0
  34. data/docs/PaginatedOpenPGPKeyringResponseList.md +23 -0
  35. data/docs/PaginatedOpenPGPPublicKeyResponseList.md +23 -0
  36. data/docs/PaginatedOpenPGPPublicSubkeyResponseList.md +23 -0
  37. data/docs/PaginatedOpenPGPSignatureResponseList.md +23 -0
  38. data/docs/PaginatedOpenPGPUserAttributeResponseList.md +23 -0
  39. data/docs/PaginatedOpenPGPUserIDResponseList.md +23 -0
  40. data/docs/PatchedOpenPGPDistribution.md +29 -0
  41. data/docs/PatchedOpenPGPKeyring.md +25 -0
  42. data/docs/PulpExportResponse.md +3 -3
  43. data/docs/RepositoriesApi.md +4 -4
  44. data/docs/RepositoriesOpenpgpKeyringApi.md +802 -0
  45. data/docs/RepositoryAddRemoveContent.md +21 -0
  46. data/docs/SetLabel.md +19 -0
  47. data/docs/SetLabelResponse.md +19 -0
  48. data/docs/TaskResponse.md +1 -1
  49. data/docs/TasksApi.md +2 -2
  50. data/docs/UnsetLabel.md +17 -0
  51. data/docs/UnsetLabelResponse.md +19 -0
  52. data/lib/pulpcore_client/api/access_policies_api.rb +8 -8
  53. data/lib/pulpcore_client/api/content_api.rb +6 -6
  54. data/lib/pulpcore_client/api/content_openpgp_publickey_api.rb +266 -0
  55. data/lib/pulpcore_client/api/content_openpgp_publicsubkey_api.rb +192 -0
  56. data/lib/pulpcore_client/api/content_openpgp_signature_api.rb +192 -0
  57. data/lib/pulpcore_client/api/content_openpgp_userattribute_api.rb +192 -0
  58. data/lib/pulpcore_client/api/content_openpgp_userid_api.rb +216 -0
  59. data/lib/pulpcore_client/api/distributions_api.rb +6 -6
  60. data/lib/pulpcore_client/api/distributions_openpgp_api.rb +592 -0
  61. data/lib/pulpcore_client/api/repositories_api.rb +6 -6
  62. data/lib/pulpcore_client/api/repositories_openpgp_keyring_api.rb +992 -0
  63. data/lib/pulpcore_client/api/tasks_api.rb +3 -3
  64. data/lib/pulpcore_client/models/artifact_distribution_response.rb +58 -58
  65. data/lib/pulpcore_client/models/filesystem_export_response.rb +1 -1
  66. data/lib/pulpcore_client/models/import_response.rb +1 -1
  67. data/lib/pulpcore_client/models/nested_open_pgp_public_subkey.rb +254 -0
  68. data/lib/pulpcore_client/models/nested_open_pgp_public_subkey_response.rb +256 -0
  69. data/lib/pulpcore_client/models/nested_open_pgp_signature.rb +305 -0
  70. data/lib/pulpcore_client/models/nested_open_pgp_signature_response.rb +290 -0
  71. data/lib/pulpcore_client/models/nested_open_pgp_user_attribute.rb +240 -0
  72. data/lib/pulpcore_client/models/nested_open_pgp_user_attribute_response.rb +242 -0
  73. data/lib/pulpcore_client/models/nested_open_pgp_user_id.rb +231 -0
  74. data/lib/pulpcore_client/models/nested_open_pgp_user_id_response.rb +223 -0
  75. data/lib/pulpcore_client/models/open_pgp_distribution.rb +322 -0
  76. data/lib/pulpcore_client/models/open_pgp_distribution_response.rb +343 -0
  77. data/lib/pulpcore_client/models/open_pgp_keyring.rb +306 -0
  78. data/lib/pulpcore_client/models/open_pgp_keyring_response.rb +329 -0
  79. data/lib/pulpcore_client/models/open_pgp_public_key.rb +253 -0
  80. data/lib/pulpcore_client/models/open_pgp_public_key_response.rb +303 -0
  81. data/lib/pulpcore_client/models/open_pgp_public_subkey_response.rb +304 -0
  82. data/lib/pulpcore_client/models/open_pgp_signature_response.rb +338 -0
  83. data/lib/pulpcore_client/models/open_pgp_user_attribute_response.rb +290 -0
  84. data/lib/pulpcore_client/models/open_pgp_user_id_response.rb +271 -0
  85. data/lib/pulpcore_client/models/paginated_open_pgp_distribution_response_list.rb +247 -0
  86. data/lib/pulpcore_client/models/paginated_open_pgp_keyring_response_list.rb +247 -0
  87. data/lib/pulpcore_client/models/paginated_open_pgp_public_key_response_list.rb +247 -0
  88. data/lib/pulpcore_client/models/paginated_open_pgp_public_subkey_response_list.rb +247 -0
  89. data/lib/pulpcore_client/models/paginated_open_pgp_signature_response_list.rb +247 -0
  90. data/lib/pulpcore_client/models/paginated_open_pgp_user_attribute_response_list.rb +247 -0
  91. data/lib/pulpcore_client/models/paginated_open_pgp_user_id_response_list.rb +247 -0
  92. data/lib/pulpcore_client/models/patched_open_pgp_distribution.rb +304 -0
  93. data/lib/pulpcore_client/models/patched_open_pgp_keyring.rb +297 -0
  94. data/lib/pulpcore_client/models/pulp_export_response.rb +3 -3
  95. data/lib/pulpcore_client/models/repository_add_remove_content.rb +232 -0
  96. data/lib/pulpcore_client/models/set_label.rb +252 -0
  97. data/lib/pulpcore_client/models/set_label_response.rb +243 -0
  98. data/lib/pulpcore_client/models/task_response.rb +1 -1
  99. data/lib/pulpcore_client/models/unset_label.rb +242 -0
  100. data/lib/pulpcore_client/models/unset_label_response.rb +242 -0
  101. data/lib/pulpcore_client/version.rb +1 -1
  102. data/lib/pulpcore_client.rb +39 -0
  103. data/spec/api/access_policies_api_spec.rb +4 -4
  104. data/spec/api/content_api_spec.rb +2 -2
  105. data/spec/api/content_openpgp_publickey_api_spec.rb +89 -0
  106. data/spec/api/content_openpgp_publicsubkey_api_spec.rb +74 -0
  107. data/spec/api/content_openpgp_signature_api_spec.rb +74 -0
  108. data/spec/api/content_openpgp_userattribute_api_spec.rb +74 -0
  109. data/spec/api/content_openpgp_userid_api_spec.rb +82 -0
  110. data/spec/api/distributions_api_spec.rb +2 -2
  111. data/spec/api/distributions_openpgp_api_spec.rb +148 -0
  112. data/spec/api/repositories_api_spec.rb +2 -2
  113. data/spec/api/repositories_openpgp_keyring_api_spec.rb +233 -0
  114. data/spec/api/tasks_api_spec.rb +1 -1
  115. data/spec/models/artifact_distribution_response_spec.rb +10 -10
  116. data/spec/models/nested_open_pgp_public_subkey_response_spec.rb +53 -0
  117. data/spec/models/nested_open_pgp_public_subkey_spec.rb +47 -0
  118. data/spec/models/nested_open_pgp_signature_response_spec.rb +77 -0
  119. data/spec/models/nested_open_pgp_signature_spec.rb +71 -0
  120. data/spec/models/nested_open_pgp_user_attribute_response_spec.rb +47 -0
  121. data/spec/models/nested_open_pgp_user_attribute_spec.rb +41 -0
  122. data/spec/models/nested_open_pgp_user_id_response_spec.rb +47 -0
  123. data/spec/models/nested_open_pgp_user_id_spec.rb +41 -0
  124. data/spec/models/open_pgp_distribution_response_spec.rb +113 -0
  125. data/spec/models/open_pgp_distribution_spec.rb +77 -0
  126. data/spec/models/open_pgp_keyring_response_spec.rb +101 -0
  127. data/spec/models/open_pgp_keyring_spec.rb +65 -0
  128. data/spec/models/open_pgp_public_key_response_spec.rb +89 -0
  129. data/spec/models/open_pgp_public_key_spec.rb +59 -0
  130. data/spec/models/open_pgp_public_subkey_response_spec.rb +83 -0
  131. data/spec/models/open_pgp_signature_response_spec.rb +107 -0
  132. data/spec/models/open_pgp_user_attribute_response_spec.rb +77 -0
  133. data/spec/models/open_pgp_user_id_response_spec.rb +77 -0
  134. data/spec/models/paginated_open_pgp_distribution_response_list_spec.rb +59 -0
  135. data/spec/models/paginated_open_pgp_keyring_response_list_spec.rb +59 -0
  136. data/spec/models/paginated_open_pgp_public_key_response_list_spec.rb +59 -0
  137. data/spec/models/paginated_open_pgp_public_subkey_response_list_spec.rb +59 -0
  138. data/spec/models/paginated_open_pgp_signature_response_list_spec.rb +59 -0
  139. data/spec/models/paginated_open_pgp_user_attribute_response_list_spec.rb +59 -0
  140. data/spec/models/paginated_open_pgp_user_id_response_list_spec.rb +59 -0
  141. data/spec/models/patched_open_pgp_distribution_spec.rb +77 -0
  142. data/spec/models/patched_open_pgp_keyring_spec.rb +65 -0
  143. data/spec/models/repository_add_remove_content_spec.rb +53 -0
  144. data/spec/models/set_label_response_spec.rb +47 -0
  145. data/spec/models/set_label_spec.rb +47 -0
  146. data/spec/models/unset_label_response_spec.rb +47 -0
  147. data/spec/models/unset_label_spec.rb +41 -0
  148. metadata +311 -155
@@ -0,0 +1,304 @@
1
+ =begin
2
+ #Pulp 3 API
3
+
4
+ #Fetch, Upload, Organize, and Distribute Software Packages
5
+
6
+ The version of the OpenAPI document: v3
7
+ Contact: pulp-list@redhat.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module PulpcoreClient
16
+ # Base serializer for use with [pulpcore.app.models.Model][] This ensures that all Serializers provide values for the 'pulp_href` field. The class provides a default for the ``ref_name`` attribute in the ModelSerializers's ``Meta`` class. This ensures that the OpenAPI definitions of plugins are namespaced properly.
17
+ class OpenPGPPublicSubkeyResponse
18
+ attr_accessor :pulp_href
19
+
20
+ # The Pulp Resource Name (PRN).
21
+ attr_accessor :prn
22
+
23
+ # Timestamp of creation.
24
+ attr_accessor :pulp_created
25
+
26
+ # Timestamp of the last time this resource was updated. Note: for immutable resources - like content, repository versions, and publication - pulp_created and pulp_last_updated dates will be the same.
27
+ attr_accessor :pulp_last_updated
28
+
29
+ attr_accessor :fingerprint
30
+
31
+ attr_accessor :created
32
+
33
+ attr_accessor :signatures
34
+
35
+ attr_accessor :public_key
36
+
37
+ # Attribute mapping from ruby-style variable name to JSON key.
38
+ def self.attribute_map
39
+ {
40
+ :'pulp_href' => :'pulp_href',
41
+ :'prn' => :'prn',
42
+ :'pulp_created' => :'pulp_created',
43
+ :'pulp_last_updated' => :'pulp_last_updated',
44
+ :'fingerprint' => :'fingerprint',
45
+ :'created' => :'created',
46
+ :'signatures' => :'signatures',
47
+ :'public_key' => :'public_key'
48
+ }
49
+ end
50
+
51
+ # Attribute type mapping.
52
+ def self.openapi_types
53
+ {
54
+ :'pulp_href' => :'String',
55
+ :'prn' => :'String',
56
+ :'pulp_created' => :'DateTime',
57
+ :'pulp_last_updated' => :'DateTime',
58
+ :'fingerprint' => :'String',
59
+ :'created' => :'DateTime',
60
+ :'signatures' => :'Array<NestedOpenPGPSignatureResponse>',
61
+ :'public_key' => :'String'
62
+ }
63
+ end
64
+
65
+ # List of attributes with nullable: true
66
+ def self.openapi_nullable
67
+ Set.new([
68
+ ])
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ if (!attributes.is_a?(Hash))
75
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpcoreClient::OpenPGPPublicSubkeyResponse` initialize method"
76
+ end
77
+
78
+ # check to see if the attribute exists and convert string to symbol for hash key
79
+ attributes = attributes.each_with_object({}) { |(k, v), h|
80
+ if (!self.class.attribute_map.key?(k.to_sym))
81
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpcoreClient::OpenPGPPublicSubkeyResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
82
+ end
83
+ h[k.to_sym] = v
84
+ }
85
+
86
+ if attributes.key?(:'pulp_href')
87
+ self.pulp_href = attributes[:'pulp_href']
88
+ end
89
+
90
+ if attributes.key?(:'prn')
91
+ self.prn = attributes[:'prn']
92
+ end
93
+
94
+ if attributes.key?(:'pulp_created')
95
+ self.pulp_created = attributes[:'pulp_created']
96
+ end
97
+
98
+ if attributes.key?(:'pulp_last_updated')
99
+ self.pulp_last_updated = attributes[:'pulp_last_updated']
100
+ end
101
+
102
+ if attributes.key?(:'fingerprint')
103
+ self.fingerprint = attributes[:'fingerprint']
104
+ end
105
+
106
+ if attributes.key?(:'created')
107
+ self.created = attributes[:'created']
108
+ end
109
+
110
+ if attributes.key?(:'signatures')
111
+ if (value = attributes[:'signatures']).is_a?(Array)
112
+ self.signatures = value
113
+ end
114
+ end
115
+
116
+ if attributes.key?(:'public_key')
117
+ self.public_key = attributes[:'public_key']
118
+ end
119
+ end
120
+
121
+ # Show invalid properties with the reasons. Usually used together with valid?
122
+ # @return Array for valid properties with the reasons
123
+ def list_invalid_properties
124
+ invalid_properties = Array.new
125
+ if @fingerprint.nil?
126
+ invalid_properties.push('invalid value for "fingerprint", fingerprint cannot be nil.')
127
+ end
128
+
129
+ if @fingerprint.to_s.length > 64
130
+ invalid_properties.push('invalid value for "fingerprint", the character length must be smaller than or equal to 64.')
131
+ end
132
+
133
+ if @created.nil?
134
+ invalid_properties.push('invalid value for "created", created cannot be nil.')
135
+ end
136
+
137
+ invalid_properties
138
+ end
139
+
140
+ # Check to see if the all the properties in the model are valid
141
+ # @return true if the model is valid
142
+ def valid?
143
+ return false if @fingerprint.nil?
144
+ return false if @fingerprint.to_s.length > 64
145
+ return false if @created.nil?
146
+ true
147
+ end
148
+
149
+ # Custom attribute writer method with validation
150
+ # @param [Object] fingerprint Value to be assigned
151
+ def fingerprint=(fingerprint)
152
+ if fingerprint.nil?
153
+ fail ArgumentError, 'fingerprint cannot be nil'
154
+ end
155
+
156
+ if fingerprint.to_s.length > 64
157
+ fail ArgumentError, 'invalid value for "fingerprint", the character length must be smaller than or equal to 64.'
158
+ end
159
+
160
+ @fingerprint = fingerprint
161
+ end
162
+
163
+ # Checks equality by comparing each attribute.
164
+ # @param [Object] Object to be compared
165
+ def ==(o)
166
+ return true if self.equal?(o)
167
+ self.class == o.class &&
168
+ pulp_href == o.pulp_href &&
169
+ prn == o.prn &&
170
+ pulp_created == o.pulp_created &&
171
+ pulp_last_updated == o.pulp_last_updated &&
172
+ fingerprint == o.fingerprint &&
173
+ created == o.created &&
174
+ signatures == o.signatures &&
175
+ public_key == o.public_key
176
+ end
177
+
178
+ # @see the `==` method
179
+ # @param [Object] Object to be compared
180
+ def eql?(o)
181
+ self == o
182
+ end
183
+
184
+ # Calculates hash code according to all attributes.
185
+ # @return [Integer] Hash code
186
+ def hash
187
+ [pulp_href, prn, pulp_created, pulp_last_updated, fingerprint, created, signatures, public_key].hash
188
+ end
189
+
190
+ # Builds the object from hash
191
+ # @param [Hash] attributes Model attributes in the form of hash
192
+ # @return [Object] Returns the model itself
193
+ def self.build_from_hash(attributes)
194
+ new.build_from_hash(attributes)
195
+ end
196
+
197
+ # Builds the object from hash
198
+ # @param [Hash] attributes Model attributes in the form of hash
199
+ # @return [Object] Returns the model itself
200
+ def build_from_hash(attributes)
201
+ return nil unless attributes.is_a?(Hash)
202
+ self.class.openapi_types.each_pair do |key, type|
203
+ if type =~ /\AArray<(.*)>/i
204
+ # check to ensure the input is an array given that the attribute
205
+ # is documented as an array but the input is not
206
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
207
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
208
+ end
209
+ elsif !attributes[self.class.attribute_map[key]].nil?
210
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
211
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
212
+ end
213
+
214
+ self
215
+ end
216
+
217
+ # Deserializes the data based on type
218
+ # @param string type Data type
219
+ # @param string value Value to be deserialized
220
+ # @return [Object] Deserialized data
221
+ def _deserialize(type, value)
222
+ case type.to_sym
223
+ when :DateTime
224
+ DateTime.parse(value)
225
+ when :Date
226
+ Date.parse(value)
227
+ when :String
228
+ value.to_s
229
+ when :Integer
230
+ value.to_i
231
+ when :Float
232
+ value.to_f
233
+ when :Boolean
234
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
235
+ true
236
+ else
237
+ false
238
+ end
239
+ when :Object
240
+ # generic object (usually a Hash), return directly
241
+ value
242
+ when /\AArray<(?<inner_type>.+)>\z/
243
+ inner_type = Regexp.last_match[:inner_type]
244
+ value.map { |v| _deserialize(inner_type, v) }
245
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
246
+ k_type = Regexp.last_match[:k_type]
247
+ v_type = Regexp.last_match[:v_type]
248
+ {}.tap do |hash|
249
+ value.each do |k, v|
250
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
251
+ end
252
+ end
253
+ else # model
254
+ PulpcoreClient.const_get(type).build_from_hash(value)
255
+ end
256
+ end
257
+
258
+ # Returns the string representation of the object
259
+ # @return [String] String presentation of the object
260
+ def to_s
261
+ to_hash.to_s
262
+ end
263
+
264
+ # to_body is an alias to to_hash (backward compatibility)
265
+ # @return [Hash] Returns the object in the form of hash
266
+ def to_body
267
+ to_hash
268
+ end
269
+
270
+ # Returns the object in the form of hash
271
+ # @return [Hash] Returns the object in the form of hash
272
+ def to_hash
273
+ hash = {}
274
+ self.class.attribute_map.each_pair do |attr, param|
275
+ value = self.send(attr)
276
+ if value.nil?
277
+ is_nullable = self.class.openapi_nullable.include?(attr)
278
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
279
+ end
280
+
281
+ hash[param] = _to_hash(value)
282
+ end
283
+ hash
284
+ end
285
+
286
+ # Outputs non-array value in the form of hash
287
+ # For object, use to_hash. Otherwise, just return the value
288
+ # @param [Object] value Any valid value
289
+ # @return [Hash] Returns the value in the form of hash
290
+ def _to_hash(value)
291
+ if value.is_a?(Array)
292
+ value.compact.map { |v| _to_hash(v) }
293
+ elsif value.is_a?(Hash)
294
+ {}.tap do |hash|
295
+ value.each { |k, v| hash[k] = _to_hash(v) }
296
+ end
297
+ elsif value.respond_to? :to_hash
298
+ value.to_hash
299
+ else
300
+ value
301
+ end
302
+ end
303
+ end
304
+ end
@@ -0,0 +1,338 @@
1
+ =begin
2
+ #Pulp 3 API
3
+
4
+ #Fetch, Upload, Organize, and Distribute Software Packages
5
+
6
+ The version of the OpenAPI document: v3
7
+ Contact: pulp-list@redhat.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module PulpcoreClient
16
+ # Base serializer for use with [pulpcore.app.models.Model][] This ensures that all Serializers provide values for the 'pulp_href` field. The class provides a default for the ``ref_name`` attribute in the ModelSerializers's ``Meta`` class. This ensures that the OpenAPI definitions of plugins are namespaced properly.
17
+ class OpenPGPSignatureResponse
18
+ attr_accessor :pulp_href
19
+
20
+ # The Pulp Resource Name (PRN).
21
+ attr_accessor :prn
22
+
23
+ # Timestamp of creation.
24
+ attr_accessor :pulp_created
25
+
26
+ # Timestamp of the last time this resource was updated. Note: for immutable resources - like content, repository versions, and publication - pulp_created and pulp_last_updated dates will be the same.
27
+ attr_accessor :pulp_last_updated
28
+
29
+ attr_accessor :issuer
30
+
31
+ attr_accessor :created
32
+
33
+ attr_accessor :expiration_time
34
+
35
+ attr_accessor :signers_user_id
36
+
37
+ attr_accessor :key_expiration_time
38
+
39
+ attr_accessor :expired
40
+
41
+ attr_accessor :key_expired
42
+
43
+ attr_accessor :signed_content
44
+
45
+ # Attribute mapping from ruby-style variable name to JSON key.
46
+ def self.attribute_map
47
+ {
48
+ :'pulp_href' => :'pulp_href',
49
+ :'prn' => :'prn',
50
+ :'pulp_created' => :'pulp_created',
51
+ :'pulp_last_updated' => :'pulp_last_updated',
52
+ :'issuer' => :'issuer',
53
+ :'created' => :'created',
54
+ :'expiration_time' => :'expiration_time',
55
+ :'signers_user_id' => :'signers_user_id',
56
+ :'key_expiration_time' => :'key_expiration_time',
57
+ :'expired' => :'expired',
58
+ :'key_expired' => :'key_expired',
59
+ :'signed_content' => :'signed_content'
60
+ }
61
+ end
62
+
63
+ # Attribute type mapping.
64
+ def self.openapi_types
65
+ {
66
+ :'pulp_href' => :'String',
67
+ :'prn' => :'String',
68
+ :'pulp_created' => :'DateTime',
69
+ :'pulp_last_updated' => :'DateTime',
70
+ :'issuer' => :'String',
71
+ :'created' => :'DateTime',
72
+ :'expiration_time' => :'String',
73
+ :'signers_user_id' => :'String',
74
+ :'key_expiration_time' => :'String',
75
+ :'expired' => :'Boolean',
76
+ :'key_expired' => :'String',
77
+ :'signed_content' => :'String'
78
+ }
79
+ end
80
+
81
+ # List of attributes with nullable: true
82
+ def self.openapi_nullable
83
+ Set.new([
84
+ :'issuer',
85
+ :'expiration_time',
86
+ :'signers_user_id',
87
+ :'key_expiration_time',
88
+ ])
89
+ end
90
+
91
+ # Initializes the object
92
+ # @param [Hash] attributes Model attributes in the form of hash
93
+ def initialize(attributes = {})
94
+ if (!attributes.is_a?(Hash))
95
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PulpcoreClient::OpenPGPSignatureResponse` initialize method"
96
+ end
97
+
98
+ # check to see if the attribute exists and convert string to symbol for hash key
99
+ attributes = attributes.each_with_object({}) { |(k, v), h|
100
+ if (!self.class.attribute_map.key?(k.to_sym))
101
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PulpcoreClient::OpenPGPSignatureResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
102
+ end
103
+ h[k.to_sym] = v
104
+ }
105
+
106
+ if attributes.key?(:'pulp_href')
107
+ self.pulp_href = attributes[:'pulp_href']
108
+ end
109
+
110
+ if attributes.key?(:'prn')
111
+ self.prn = attributes[:'prn']
112
+ end
113
+
114
+ if attributes.key?(:'pulp_created')
115
+ self.pulp_created = attributes[:'pulp_created']
116
+ end
117
+
118
+ if attributes.key?(:'pulp_last_updated')
119
+ self.pulp_last_updated = attributes[:'pulp_last_updated']
120
+ end
121
+
122
+ if attributes.key?(:'issuer')
123
+ self.issuer = attributes[:'issuer']
124
+ end
125
+
126
+ if attributes.key?(:'created')
127
+ self.created = attributes[:'created']
128
+ end
129
+
130
+ if attributes.key?(:'expiration_time')
131
+ self.expiration_time = attributes[:'expiration_time']
132
+ end
133
+
134
+ if attributes.key?(:'signers_user_id')
135
+ self.signers_user_id = attributes[:'signers_user_id']
136
+ end
137
+
138
+ if attributes.key?(:'key_expiration_time')
139
+ self.key_expiration_time = attributes[:'key_expiration_time']
140
+ end
141
+
142
+ if attributes.key?(:'expired')
143
+ self.expired = attributes[:'expired']
144
+ end
145
+
146
+ if attributes.key?(:'key_expired')
147
+ self.key_expired = attributes[:'key_expired']
148
+ end
149
+
150
+ if attributes.key?(:'signed_content')
151
+ self.signed_content = attributes[:'signed_content']
152
+ end
153
+ end
154
+
155
+ # Show invalid properties with the reasons. Usually used together with valid?
156
+ # @return Array for valid properties with the reasons
157
+ def list_invalid_properties
158
+ invalid_properties = Array.new
159
+ if !@issuer.nil? && @issuer.to_s.length > 16
160
+ invalid_properties.push('invalid value for "issuer", the character length must be smaller than or equal to 16.')
161
+ end
162
+
163
+ if @created.nil?
164
+ invalid_properties.push('invalid value for "created", created cannot be nil.')
165
+ end
166
+
167
+ if @expired.nil?
168
+ invalid_properties.push('invalid value for "expired", expired cannot be nil.')
169
+ end
170
+
171
+ invalid_properties
172
+ end
173
+
174
+ # Check to see if the all the properties in the model are valid
175
+ # @return true if the model is valid
176
+ def valid?
177
+ return false if !@issuer.nil? && @issuer.to_s.length > 16
178
+ return false if @created.nil?
179
+ return false if @expired.nil?
180
+ true
181
+ end
182
+
183
+ # Custom attribute writer method with validation
184
+ # @param [Object] issuer Value to be assigned
185
+ def issuer=(issuer)
186
+ if !issuer.nil? && issuer.to_s.length > 16
187
+ fail ArgumentError, 'invalid value for "issuer", the character length must be smaller than or equal to 16.'
188
+ end
189
+
190
+ @issuer = issuer
191
+ end
192
+
193
+ # Checks equality by comparing each attribute.
194
+ # @param [Object] Object to be compared
195
+ def ==(o)
196
+ return true if self.equal?(o)
197
+ self.class == o.class &&
198
+ pulp_href == o.pulp_href &&
199
+ prn == o.prn &&
200
+ pulp_created == o.pulp_created &&
201
+ pulp_last_updated == o.pulp_last_updated &&
202
+ issuer == o.issuer &&
203
+ created == o.created &&
204
+ expiration_time == o.expiration_time &&
205
+ signers_user_id == o.signers_user_id &&
206
+ key_expiration_time == o.key_expiration_time &&
207
+ expired == o.expired &&
208
+ key_expired == o.key_expired &&
209
+ signed_content == o.signed_content
210
+ end
211
+
212
+ # @see the `==` method
213
+ # @param [Object] Object to be compared
214
+ def eql?(o)
215
+ self == o
216
+ end
217
+
218
+ # Calculates hash code according to all attributes.
219
+ # @return [Integer] Hash code
220
+ def hash
221
+ [pulp_href, prn, pulp_created, pulp_last_updated, issuer, created, expiration_time, signers_user_id, key_expiration_time, expired, key_expired, signed_content].hash
222
+ end
223
+
224
+ # Builds the object from hash
225
+ # @param [Hash] attributes Model attributes in the form of hash
226
+ # @return [Object] Returns the model itself
227
+ def self.build_from_hash(attributes)
228
+ new.build_from_hash(attributes)
229
+ end
230
+
231
+ # Builds the object from hash
232
+ # @param [Hash] attributes Model attributes in the form of hash
233
+ # @return [Object] Returns the model itself
234
+ def build_from_hash(attributes)
235
+ return nil unless attributes.is_a?(Hash)
236
+ self.class.openapi_types.each_pair do |key, type|
237
+ if type =~ /\AArray<(.*)>/i
238
+ # check to ensure the input is an array given that the attribute
239
+ # is documented as an array but the input is not
240
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
241
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
242
+ end
243
+ elsif !attributes[self.class.attribute_map[key]].nil?
244
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
245
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
246
+ end
247
+
248
+ self
249
+ end
250
+
251
+ # Deserializes the data based on type
252
+ # @param string type Data type
253
+ # @param string value Value to be deserialized
254
+ # @return [Object] Deserialized data
255
+ def _deserialize(type, value)
256
+ case type.to_sym
257
+ when :DateTime
258
+ DateTime.parse(value)
259
+ when :Date
260
+ Date.parse(value)
261
+ when :String
262
+ value.to_s
263
+ when :Integer
264
+ value.to_i
265
+ when :Float
266
+ value.to_f
267
+ when :Boolean
268
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
269
+ true
270
+ else
271
+ false
272
+ end
273
+ when :Object
274
+ # generic object (usually a Hash), return directly
275
+ value
276
+ when /\AArray<(?<inner_type>.+)>\z/
277
+ inner_type = Regexp.last_match[:inner_type]
278
+ value.map { |v| _deserialize(inner_type, v) }
279
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
280
+ k_type = Regexp.last_match[:k_type]
281
+ v_type = Regexp.last_match[:v_type]
282
+ {}.tap do |hash|
283
+ value.each do |k, v|
284
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
285
+ end
286
+ end
287
+ else # model
288
+ PulpcoreClient.const_get(type).build_from_hash(value)
289
+ end
290
+ end
291
+
292
+ # Returns the string representation of the object
293
+ # @return [String] String presentation of the object
294
+ def to_s
295
+ to_hash.to_s
296
+ end
297
+
298
+ # to_body is an alias to to_hash (backward compatibility)
299
+ # @return [Hash] Returns the object in the form of hash
300
+ def to_body
301
+ to_hash
302
+ end
303
+
304
+ # Returns the object in the form of hash
305
+ # @return [Hash] Returns the object in the form of hash
306
+ def to_hash
307
+ hash = {}
308
+ self.class.attribute_map.each_pair do |attr, param|
309
+ value = self.send(attr)
310
+ if value.nil?
311
+ is_nullable = self.class.openapi_nullable.include?(attr)
312
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
313
+ end
314
+
315
+ hash[param] = _to_hash(value)
316
+ end
317
+ hash
318
+ end
319
+
320
+ # Outputs non-array value in the form of hash
321
+ # For object, use to_hash. Otherwise, just return the value
322
+ # @param [Object] value Any valid value
323
+ # @return [Hash] Returns the value in the form of hash
324
+ def _to_hash(value)
325
+ if value.is_a?(Array)
326
+ value.compact.map { |v| _to_hash(v) }
327
+ elsif value.is_a?(Hash)
328
+ {}.tap do |hash|
329
+ value.each { |k, v| hash[k] = _to_hash(v) }
330
+ end
331
+ elsif value.respond_to? :to_hash
332
+ value.to_hash
333
+ else
334
+ value
335
+ end
336
+ end
337
+ end
338
+ end