aws-sdk-mediastoredata 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 959af61f62449b3fe8b42a7808292d72df0ff481
4
+ data.tar.gz: afa817c68495b408ba989ef3a49e784f83d6dc84
5
+ SHA512:
6
+ metadata.gz: f6b2b4d54562c054c86662ea0f282c7fbfee07433e3385d3632701a221c354ff5419362990bcd75ab4859a7115733fbd0b9b87f2bcdcf63117169a016fef7c29
7
+ data.tar.gz: 6a9ef63299b4b5610455559f05a3ca7dd6de3d45ca3ad3f8781c4e681c401ffe226135fde688f2460805ccfe9fb502003cfb8cede91898c1a3c7c7bb62149649
@@ -0,0 +1,472 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
22
+ require 'aws-sdk-core/plugins/signature_v4.rb'
23
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
24
+
25
+ Aws::Plugins::GlobalConfiguration.add_identifier(:mediastoredata)
26
+
27
+ module Aws::MediaStoreData
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :mediastoredata
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::RestJson)
52
+
53
+ # @option options [required, Aws::CredentialProvider] :credentials
54
+ # Your AWS credentials. This can be an instance of any one of the
55
+ # following classes:
56
+ #
57
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
58
+ # credentials.
59
+ #
60
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
61
+ # from an EC2 IMDS on an EC2 instance.
62
+ #
63
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
64
+ # shared file, such as `~/.aws/config`.
65
+ #
66
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
67
+ #
68
+ # When `:credentials` are not configured directly, the following
69
+ # locations will be searched for credentials:
70
+ #
71
+ # * `Aws.config[:credentials]`
72
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
73
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
74
+ # * `~/.aws/credentials`
75
+ # * `~/.aws/config`
76
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
77
+ # very aggressive. Construct and pass an instance of
78
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
79
+ # timeouts.
80
+ #
81
+ # @option options [required, String] :region
82
+ # The AWS region to connect to. The configured `:region` is
83
+ # used to determine the service `:endpoint`. When not passed,
84
+ # a default `:region` is search for in the following locations:
85
+ #
86
+ # * `Aws.config[:region]`
87
+ # * `ENV['AWS_REGION']`
88
+ # * `ENV['AMAZON_REGION']`
89
+ # * `ENV['AWS_DEFAULT_REGION']`
90
+ # * `~/.aws/credentials`
91
+ # * `~/.aws/config`
92
+ #
93
+ # @option options [String] :access_key_id
94
+ #
95
+ # @option options [Boolean] :convert_params (true)
96
+ # When `true`, an attempt is made to coerce request parameters into
97
+ # the required types.
98
+ #
99
+ # @option options [String] :endpoint
100
+ # The client endpoint is normally constructed from the `:region`
101
+ # option. You should only configure an `:endpoint` when connecting
102
+ # to test endpoints. This should be avalid HTTP(S) URI.
103
+ #
104
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
105
+ # The log formatter.
106
+ #
107
+ # @option options [Symbol] :log_level (:info)
108
+ # The log level to send messages to the `:logger` at.
109
+ #
110
+ # @option options [Logger] :logger
111
+ # The Logger instance to send log messages to. If this option
112
+ # is not set, logging will be disabled.
113
+ #
114
+ # @option options [String] :profile ("default")
115
+ # Used when loading credentials from the shared credentials file
116
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
117
+ #
118
+ # @option options [Integer] :retry_limit (3)
119
+ # The maximum number of times to retry failed requests. Only
120
+ # ~ 500 level server errors and certain ~ 400 level client errors
121
+ # are retried. Generally, these are throttling errors, data
122
+ # checksum errors, networking errors, timeout errors and auth
123
+ # errors from expired credentials.
124
+ #
125
+ # @option options [String] :secret_access_key
126
+ #
127
+ # @option options [String] :session_token
128
+ #
129
+ # @option options [Boolean] :stub_responses (false)
130
+ # Causes the client to return stubbed responses. By default
131
+ # fake responses are generated and returned. You can specify
132
+ # the response data to return or errors to raise by calling
133
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
134
+ #
135
+ # ** Please note ** When response stubbing is enabled, no HTTP
136
+ # requests are made, and retries are disabled.
137
+ #
138
+ # @option options [Boolean] :validate_params (true)
139
+ # When `true`, request parameters are validated before
140
+ # sending the request.
141
+ #
142
+ def initialize(*args)
143
+ super
144
+ end
145
+
146
+ # @!group API Operations
147
+
148
+ # Deletes an object at the specified path.
149
+ #
150
+ # @option params [required, String] :path
151
+ # The path (including the file name) where the object is stored in the
152
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
153
+ # name&gt;
154
+ #
155
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
156
+ #
157
+ # @example Request syntax with placeholder values
158
+ #
159
+ # resp = client.delete_object({
160
+ # path: "PathNaming", # required
161
+ # })
162
+ #
163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DeleteObject AWS API Documentation
164
+ #
165
+ # @overload delete_object(params = {})
166
+ # @param [Hash] params ({})
167
+ def delete_object(params = {}, options = {})
168
+ req = build_request(:delete_object, params)
169
+ req.send_request(options)
170
+ end
171
+
172
+ # Gets the header for an object at the specified path.
173
+ #
174
+ # @option params [required, String] :path
175
+ # The path (including the file name) where the object is stored in the
176
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
177
+ # name&gt;
178
+ #
179
+ # @return [Types::DescribeObjectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
180
+ #
181
+ # * {Types::DescribeObjectResponse#etag #etag} => String
182
+ # * {Types::DescribeObjectResponse#content_type #content_type} => String
183
+ # * {Types::DescribeObjectResponse#content_length #content_length} => Integer
184
+ # * {Types::DescribeObjectResponse#cache_control #cache_control} => String
185
+ # * {Types::DescribeObjectResponse#last_modified #last_modified} => Time
186
+ #
187
+ # @example Request syntax with placeholder values
188
+ #
189
+ # resp = client.describe_object({
190
+ # path: "PathNaming", # required
191
+ # })
192
+ #
193
+ # @example Response structure
194
+ #
195
+ # resp.etag #=> String
196
+ # resp.content_type #=> String
197
+ # resp.content_length #=> Integer
198
+ # resp.cache_control #=> String
199
+ # resp.last_modified #=> Time
200
+ #
201
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DescribeObject AWS API Documentation
202
+ #
203
+ # @overload describe_object(params = {})
204
+ # @param [Hash] params ({})
205
+ def describe_object(params = {}, options = {})
206
+ req = build_request(:describe_object, params)
207
+ req.send_request(options)
208
+ end
209
+
210
+ # Downloads the object at the specified path.
211
+ #
212
+ # @option params [required, String] :path
213
+ # The path (including the file name) where the object is stored in the
214
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
215
+ # name&gt;
216
+ #
217
+ # For example, to upload the file `mlaw.avi` to the folder path
218
+ # `premium\canada` in the container `movies`, enter the path
219
+ # `premium/canada/mlaw.avi`.
220
+ #
221
+ # Do not include the container name in this path.
222
+ #
223
+ # If the path includes any folders that don't exist yet, the service
224
+ # creates them. For example, suppose you have an existing `premium/usa`
225
+ # subfolder. If you specify `premium/canada`, the service creates a
226
+ # `canada` subfolder in the `premium` folder. You then have two
227
+ # subfolders, `usa` and `canada`, in the `premium` folder.
228
+ #
229
+ # There is no correlation between the path to the source and the path
230
+ # (folders) in the container in AWS Elemental MediaStore.
231
+ #
232
+ # For more information about folders and how they exist in a container,
233
+ # see the [AWS Elemental MediaStore User Guide][1].
234
+ #
235
+ # The file name is the name that is assigned to the file that you
236
+ # upload. The file can have the same name inside and outside of AWS
237
+ # Elemental MediaStore, or it can have the same name. The file name can
238
+ # include or omit an extension.
239
+ #
240
+ #
241
+ #
242
+ # [1]: http://docs.aws.amazon.com/mediastore/latest/ug/
243
+ #
244
+ # @option params [String] :range
245
+ # The range bytes of an object to retrieve. For more information about
246
+ # the `Range` header, go to
247
+ # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
248
+ #
249
+ #
250
+ #
251
+ # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
252
+ #
253
+ # @return [Types::GetObjectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
254
+ #
255
+ # * {Types::GetObjectResponse#body #body} => IO
256
+ # * {Types::GetObjectResponse#cache_control #cache_control} => String
257
+ # * {Types::GetObjectResponse#content_range #content_range} => String
258
+ # * {Types::GetObjectResponse#content_length #content_length} => Integer
259
+ # * {Types::GetObjectResponse#content_type #content_type} => String
260
+ # * {Types::GetObjectResponse#etag #etag} => String
261
+ # * {Types::GetObjectResponse#last_modified #last_modified} => Time
262
+ # * {Types::GetObjectResponse#status_code #status_code} => Integer
263
+ #
264
+ # @example Request syntax with placeholder values
265
+ #
266
+ # resp = client.get_object({
267
+ # path: "PathNaming", # required
268
+ # range: "RangePattern",
269
+ # })
270
+ #
271
+ # @example Response structure
272
+ #
273
+ # resp.body #=> IO
274
+ # resp.cache_control #=> String
275
+ # resp.content_range #=> String
276
+ # resp.content_length #=> Integer
277
+ # resp.content_type #=> String
278
+ # resp.etag #=> String
279
+ # resp.last_modified #=> Time
280
+ # resp.status_code #=> Integer
281
+ #
282
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/GetObject AWS API Documentation
283
+ #
284
+ # @overload get_object(params = {})
285
+ # @param [Hash] params ({})
286
+ def get_object(params = {}, options = {}, &block)
287
+ req = build_request(:get_object, params)
288
+ req.send_request(options, &block)
289
+ end
290
+
291
+ # Provides a list of metadata entries about folders and objects in the
292
+ # specified folder.
293
+ #
294
+ # @option params [String] :path
295
+ # The path in the container from which to retrieve items. Format:
296
+ # &lt;folder name&gt;/&lt;folder name&gt;/&lt;file name&gt;
297
+ #
298
+ # @option params [Integer] :max_results
299
+ # The maximum results to return. The service might return fewer results.
300
+ #
301
+ # @option params [String] :next_token
302
+ # The `NextToken` received in the `ListItemsResponse` for the same
303
+ # container and path. Tokens expire after 15 minutes.
304
+ #
305
+ # @return [Types::ListItemsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
306
+ #
307
+ # * {Types::ListItemsResponse#items #items} => Array&lt;Types::Item&gt;
308
+ # * {Types::ListItemsResponse#next_token #next_token} => String
309
+ #
310
+ # @example Request syntax with placeholder values
311
+ #
312
+ # resp = client.list_items({
313
+ # path: "ListPathNaming",
314
+ # max_results: 1,
315
+ # next_token: "PaginationToken",
316
+ # })
317
+ #
318
+ # @example Response structure
319
+ #
320
+ # resp.items #=> Array
321
+ # resp.items[0].name #=> String
322
+ # resp.items[0].type #=> String, one of "OBJECT", "FOLDER"
323
+ # resp.items[0].etag #=> String
324
+ # resp.items[0].last_modified #=> Time
325
+ # resp.items[0].content_type #=> String
326
+ # resp.items[0].content_length #=> Integer
327
+ # resp.next_token #=> String
328
+ #
329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/ListItems AWS API Documentation
330
+ #
331
+ # @overload list_items(params = {})
332
+ # @param [Hash] params ({})
333
+ def list_items(params = {}, options = {})
334
+ req = build_request(:list_items, params)
335
+ req.send_request(options)
336
+ end
337
+
338
+ # Uploads an object to the specified path. Object sizes are limited to
339
+ # 10 MB.
340
+ #
341
+ # @option params [required, String, IO] :body
342
+ # The path to the file outside of the container. The file name can
343
+ # include or omit an extension.
344
+ #
345
+ # Example 1: If the file is stored on a remote server that has been
346
+ # mounted to the workstation on which the REST API command is being run,
347
+ # the path could be the absolute path ` \mount\assets\mlaw.avi` or the
348
+ # relative path `..\..\mount\assets\movies\premium\mlaw.avi`.
349
+ #
350
+ # Example 2: If the file is stored on a remote server that is not
351
+ # mounted, the path could be
352
+ # `https:\\192.0.2.15\movies\premium\mlaw.avi`.
353
+ #
354
+ # @option params [required, String] :path
355
+ # The path (including the file name) where the object is stored in the
356
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
357
+ # name&gt;
358
+ #
359
+ # For example, to upload the file `mlaw.avi` to the folder path
360
+ # `premium\canada` in the container `movies`, enter the path
361
+ # `premium/canada/mlaw.avi`.
362
+ #
363
+ # Do not include the container name in this path.
364
+ #
365
+ # If the path includes any folders that don't exist yet, the service
366
+ # creates them. For example, suppose you have an existing `premium/usa`
367
+ # subfolder. If you specify `premium/canada`, the service creates a
368
+ # `canada` subfolder in the `premium` folder. You then have two
369
+ # subfolders, `usa` and `canada`, in the `premium` folder.
370
+ #
371
+ # There is no correlation between the path to the source and the path
372
+ # (folders) in the container in AWS Elemental MediaStore.
373
+ #
374
+ # For more information about folders and how they exist in a container,
375
+ # see the [AWS Elemental MediaStore User Guide][1].
376
+ #
377
+ # The file name is the name that is assigned to the file that you
378
+ # upload. The file can have the same name inside and outside of AWS
379
+ # Elemental MediaStore, or it can have the same name. The file name can
380
+ # include or omit an extension.
381
+ #
382
+ #
383
+ #
384
+ # [1]: http://docs.aws.amazon.com/mediastore/latest/ug/
385
+ #
386
+ # @option params [String] :content_type
387
+ # The content type of the object.
388
+ #
389
+ # @option params [String] :cache_control
390
+ # An optional `CacheControl` header that allows the caller to control
391
+ # the object's cache behavior. Headers can be passed in as specified in
392
+ # the HTTP at
393
+ # [https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9][1].
394
+ #
395
+ # Headers with a custom user-defined value are also accepted.
396
+ #
397
+ #
398
+ #
399
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
400
+ #
401
+ # @option params [String] :storage_class
402
+ # Indicates the storage class of a `Put` request. Defaults to
403
+ # high-performance temporal storage class, and objects are persisted
404
+ # into durable storage shortly after being received.
405
+ #
406
+ # @return [Types::PutObjectResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
407
+ #
408
+ # * {Types::PutObjectResponse#content_sha256 #content_sha256} => String
409
+ # * {Types::PutObjectResponse#etag #etag} => String
410
+ # * {Types::PutObjectResponse#storage_class #storage_class} => String
411
+ #
412
+ # @example Request syntax with placeholder values
413
+ #
414
+ # resp = client.put_object({
415
+ # body: "data", # required
416
+ # path: "PathNaming", # required
417
+ # content_type: "ContentType",
418
+ # cache_control: "StringPrimitive",
419
+ # storage_class: "TEMPORAL", # accepts TEMPORAL
420
+ # })
421
+ #
422
+ # @example Response structure
423
+ #
424
+ # resp.content_sha256 #=> String
425
+ # resp.etag #=> String
426
+ # resp.storage_class #=> String, one of "TEMPORAL"
427
+ #
428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/PutObject AWS API Documentation
429
+ #
430
+ # @overload put_object(params = {})
431
+ # @param [Hash] params ({})
432
+ def put_object(params = {}, options = {})
433
+ req = build_request(:put_object, params)
434
+ req.send_request(options)
435
+ end
436
+
437
+ # @!endgroup
438
+
439
+ # @param params ({})
440
+ # @api private
441
+ def build_request(operation_name, params = {})
442
+ handlers = @handlers.for(operation_name)
443
+ context = Seahorse::Client::RequestContext.new(
444
+ operation_name: operation_name,
445
+ operation: config.api.operation(operation_name),
446
+ client: self,
447
+ params: params,
448
+ config: config)
449
+ context[:gem_name] = 'aws-sdk-mediastoredata'
450
+ context[:gem_version] = '1.0.0'
451
+ Seahorse::Client::Request.new(handlers, context)
452
+ end
453
+
454
+ # @api private
455
+ # @deprecated
456
+ def waiter_names
457
+ []
458
+ end
459
+
460
+ class << self
461
+
462
+ # @api private
463
+ attr_reader :identifier
464
+
465
+ # @api private
466
+ def errors_module
467
+ Errors
468
+ end
469
+
470
+ end
471
+ end
472
+ end
@@ -0,0 +1,184 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::MediaStoreData
9
+ # @api private
10
+ module ClientApi
11
+
12
+ include Seahorse::Model
13
+
14
+ ContainerNotFoundException = Shapes::StructureShape.new(name: 'ContainerNotFoundException')
15
+ ContentRangePattern = Shapes::StringShape.new(name: 'ContentRangePattern')
16
+ ContentType = Shapes::StringShape.new(name: 'ContentType')
17
+ DeleteObjectRequest = Shapes::StructureShape.new(name: 'DeleteObjectRequest')
18
+ DeleteObjectResponse = Shapes::StructureShape.new(name: 'DeleteObjectResponse')
19
+ DescribeObjectRequest = Shapes::StructureShape.new(name: 'DescribeObjectRequest')
20
+ DescribeObjectResponse = Shapes::StructureShape.new(name: 'DescribeObjectResponse')
21
+ ETag = Shapes::StringShape.new(name: 'ETag')
22
+ ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
23
+ GetObjectRequest = Shapes::StructureShape.new(name: 'GetObjectRequest')
24
+ GetObjectResponse = Shapes::StructureShape.new(name: 'GetObjectResponse')
25
+ InternalServerError = Shapes::StructureShape.new(name: 'InternalServerError')
26
+ Item = Shapes::StructureShape.new(name: 'Item')
27
+ ItemList = Shapes::ListShape.new(name: 'ItemList')
28
+ ItemName = Shapes::StringShape.new(name: 'ItemName')
29
+ ItemType = Shapes::StringShape.new(name: 'ItemType')
30
+ ListItemsRequest = Shapes::StructureShape.new(name: 'ListItemsRequest')
31
+ ListItemsResponse = Shapes::StructureShape.new(name: 'ListItemsResponse')
32
+ ListLimit = Shapes::IntegerShape.new(name: 'ListLimit')
33
+ ListPathNaming = Shapes::StringShape.new(name: 'ListPathNaming')
34
+ NonNegativeLong = Shapes::IntegerShape.new(name: 'NonNegativeLong')
35
+ ObjectNotFoundException = Shapes::StructureShape.new(name: 'ObjectNotFoundException')
36
+ PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
37
+ PathNaming = Shapes::StringShape.new(name: 'PathNaming')
38
+ PayloadBlob = Shapes::BlobShape.new(name: 'PayloadBlob')
39
+ PutObjectRequest = Shapes::StructureShape.new(name: 'PutObjectRequest')
40
+ PutObjectResponse = Shapes::StructureShape.new(name: 'PutObjectResponse')
41
+ RangePattern = Shapes::StringShape.new(name: 'RangePattern')
42
+ RequestedRangeNotSatisfiableException = Shapes::StructureShape.new(name: 'RequestedRangeNotSatisfiableException')
43
+ SHA256Hash = Shapes::StringShape.new(name: 'SHA256Hash')
44
+ StorageClass = Shapes::StringShape.new(name: 'StorageClass')
45
+ StringPrimitive = Shapes::StringShape.new(name: 'StringPrimitive')
46
+ TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp')
47
+ statusCode = Shapes::IntegerShape.new(name: 'statusCode')
48
+
49
+ DeleteObjectRequest.add_member(:path, Shapes::ShapeRef.new(shape: PathNaming, required: true, location: "uri", location_name: "Path"))
50
+ DeleteObjectRequest.struct_class = Types::DeleteObjectRequest
51
+
52
+ DeleteObjectResponse.struct_class = Types::DeleteObjectResponse
53
+
54
+ DescribeObjectRequest.add_member(:path, Shapes::ShapeRef.new(shape: PathNaming, required: true, location: "uri", location_name: "Path"))
55
+ DescribeObjectRequest.struct_class = Types::DescribeObjectRequest
56
+
57
+ DescribeObjectResponse.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
58
+ DescribeObjectResponse.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "Content-Type"))
59
+ DescribeObjectResponse.add_member(:content_length, Shapes::ShapeRef.new(shape: NonNegativeLong, location: "header", location_name: "Content-Length"))
60
+ DescribeObjectResponse.add_member(:cache_control, Shapes::ShapeRef.new(shape: StringPrimitive, location: "header", location_name: "Cache-Control"))
61
+ DescribeObjectResponse.add_member(:last_modified, Shapes::ShapeRef.new(shape: TimeStamp, location: "header", location_name: "Last-Modified"))
62
+ DescribeObjectResponse.struct_class = Types::DescribeObjectResponse
63
+
64
+ GetObjectRequest.add_member(:path, Shapes::ShapeRef.new(shape: PathNaming, required: true, location: "uri", location_name: "Path"))
65
+ GetObjectRequest.add_member(:range, Shapes::ShapeRef.new(shape: RangePattern, location: "header", location_name: "Range"))
66
+ GetObjectRequest.struct_class = Types::GetObjectRequest
67
+
68
+ GetObjectResponse.add_member(:body, Shapes::ShapeRef.new(shape: PayloadBlob, location_name: "Body"))
69
+ GetObjectResponse.add_member(:cache_control, Shapes::ShapeRef.new(shape: StringPrimitive, location: "header", location_name: "Cache-Control"))
70
+ GetObjectResponse.add_member(:content_range, Shapes::ShapeRef.new(shape: ContentRangePattern, location: "header", location_name: "Content-Range"))
71
+ GetObjectResponse.add_member(:content_length, Shapes::ShapeRef.new(shape: NonNegativeLong, location: "header", location_name: "Content-Length"))
72
+ GetObjectResponse.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "Content-Type"))
73
+ GetObjectResponse.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
74
+ GetObjectResponse.add_member(:last_modified, Shapes::ShapeRef.new(shape: TimeStamp, location: "header", location_name: "Last-Modified"))
75
+ GetObjectResponse.add_member(:status_code, Shapes::ShapeRef.new(shape: statusCode, required: true, location: "statusCode", location_name: "StatusCode"))
76
+ GetObjectResponse.struct_class = Types::GetObjectResponse
77
+ GetObjectResponse[:payload] = :body
78
+ GetObjectResponse[:payload_member] = GetObjectResponse.member(:body)
79
+
80
+ Item.add_member(:name, Shapes::ShapeRef.new(shape: ItemName, location_name: "Name"))
81
+ Item.add_member(:type, Shapes::ShapeRef.new(shape: ItemType, location_name: "Type"))
82
+ Item.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
83
+ Item.add_member(:last_modified, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "LastModified"))
84
+ Item.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location_name: "ContentType"))
85
+ Item.add_member(:content_length, Shapes::ShapeRef.new(shape: NonNegativeLong, location_name: "ContentLength"))
86
+ Item.struct_class = Types::Item
87
+
88
+ ItemList.member = Shapes::ShapeRef.new(shape: Item)
89
+
90
+ ListItemsRequest.add_member(:path, Shapes::ShapeRef.new(shape: ListPathNaming, location: "querystring", location_name: "Path"))
91
+ ListItemsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListLimit, location: "querystring", location_name: "MaxResults"))
92
+ ListItemsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "NextToken"))
93
+ ListItemsRequest.struct_class = Types::ListItemsRequest
94
+
95
+ ListItemsResponse.add_member(:items, Shapes::ShapeRef.new(shape: ItemList, location_name: "Items"))
96
+ ListItemsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
97
+ ListItemsResponse.struct_class = Types::ListItemsResponse
98
+
99
+ PutObjectRequest.add_member(:body, Shapes::ShapeRef.new(shape: PayloadBlob, required: true, location_name: "Body"))
100
+ PutObjectRequest.add_member(:path, Shapes::ShapeRef.new(shape: PathNaming, required: true, location: "uri", location_name: "Path"))
101
+ PutObjectRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "Content-Type"))
102
+ PutObjectRequest.add_member(:cache_control, Shapes::ShapeRef.new(shape: StringPrimitive, location: "header", location_name: "Cache-Control"))
103
+ PutObjectRequest.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-storage-class"))
104
+ PutObjectRequest.struct_class = Types::PutObjectRequest
105
+ PutObjectRequest[:payload] = :body
106
+ PutObjectRequest[:payload_member] = PutObjectRequest.member(:body)
107
+
108
+ PutObjectResponse.add_member(:content_sha256, Shapes::ShapeRef.new(shape: SHA256Hash, location_name: "ContentSHA256"))
109
+ PutObjectResponse.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
110
+ PutObjectResponse.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
111
+ PutObjectResponse.struct_class = Types::PutObjectResponse
112
+
113
+
114
+ # @api private
115
+ API = Seahorse::Model::Api.new.tap do |api|
116
+
117
+ api.version = "2017-09-01"
118
+
119
+ api.metadata = {
120
+ "endpointPrefix" => "data.mediastore",
121
+ "protocol" => "rest-json",
122
+ "serviceFullName" => "AWS Elemental MediaStore Data Plane",
123
+ "signatureVersion" => "v4",
124
+ "signingName" => "mediastore",
125
+ }
126
+
127
+ api.add_operation(:delete_object, Seahorse::Model::Operation.new.tap do |o|
128
+ o.name = "DeleteObject"
129
+ o.http_method = "DELETE"
130
+ o.http_request_uri = "/{Path+}"
131
+ o.input = Shapes::ShapeRef.new(shape: DeleteObjectRequest)
132
+ o.output = Shapes::ShapeRef.new(shape: DeleteObjectResponse)
133
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
134
+ o.errors << Shapes::ShapeRef.new(shape: ObjectNotFoundException)
135
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
136
+ end)
137
+
138
+ api.add_operation(:describe_object, Seahorse::Model::Operation.new.tap do |o|
139
+ o.name = "DescribeObject"
140
+ o.http_method = "HEAD"
141
+ o.http_request_uri = "/{Path+}"
142
+ o.input = Shapes::ShapeRef.new(shape: DescribeObjectRequest)
143
+ o.output = Shapes::ShapeRef.new(shape: DescribeObjectResponse)
144
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
145
+ o.errors << Shapes::ShapeRef.new(shape: ObjectNotFoundException)
146
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
147
+ end)
148
+
149
+ api.add_operation(:get_object, Seahorse::Model::Operation.new.tap do |o|
150
+ o.name = "GetObject"
151
+ o.http_method = "GET"
152
+ o.http_request_uri = "/{Path+}"
153
+ o.input = Shapes::ShapeRef.new(shape: GetObjectRequest)
154
+ o.output = Shapes::ShapeRef.new(shape: GetObjectResponse)
155
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
156
+ o.errors << Shapes::ShapeRef.new(shape: ObjectNotFoundException)
157
+ o.errors << Shapes::ShapeRef.new(shape: RequestedRangeNotSatisfiableException)
158
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
159
+ end)
160
+
161
+ api.add_operation(:list_items, Seahorse::Model::Operation.new.tap do |o|
162
+ o.name = "ListItems"
163
+ o.http_method = "GET"
164
+ o.http_request_uri = "/"
165
+ o.input = Shapes::ShapeRef.new(shape: ListItemsRequest)
166
+ o.output = Shapes::ShapeRef.new(shape: ListItemsResponse)
167
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
168
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
169
+ end)
170
+
171
+ api.add_operation(:put_object, Seahorse::Model::Operation.new.tap do |o|
172
+ o.name = "PutObject"
173
+ o.http_method = "PUT"
174
+ o.http_request_uri = "/{Path+}"
175
+ o['authtype'] = "v4-unsigned-body"
176
+ o.input = Shapes::ShapeRef.new(shape: PutObjectRequest)
177
+ o.output = Shapes::ShapeRef.new(shape: PutObjectResponse)
178
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
179
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
180
+ end)
181
+ end
182
+
183
+ end
184
+ end
File without changes
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::MediaStoreData
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::MediaStoreData
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,426 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::MediaStoreData
9
+ module Types
10
+
11
+ # @note When making an API call, you may pass DeleteObjectRequest
12
+ # data as a hash:
13
+ #
14
+ # {
15
+ # path: "PathNaming", # required
16
+ # }
17
+ #
18
+ # @!attribute [rw] path
19
+ # The path (including the file name) where the object is stored in the
20
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
21
+ # name&gt;
22
+ # @return [String]
23
+ #
24
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DeleteObjectRequest AWS API Documentation
25
+ #
26
+ class DeleteObjectRequest < Struct.new(
27
+ :path)
28
+ include Aws::Structure
29
+ end
30
+
31
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DeleteObjectResponse AWS API Documentation
32
+ #
33
+ class DeleteObjectResponse < Aws::EmptyStructure; end
34
+
35
+ # @note When making an API call, you may pass DescribeObjectRequest
36
+ # data as a hash:
37
+ #
38
+ # {
39
+ # path: "PathNaming", # required
40
+ # }
41
+ #
42
+ # @!attribute [rw] path
43
+ # The path (including the file name) where the object is stored in the
44
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
45
+ # name&gt;
46
+ # @return [String]
47
+ #
48
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DescribeObjectRequest AWS API Documentation
49
+ #
50
+ class DescribeObjectRequest < Struct.new(
51
+ :path)
52
+ include Aws::Structure
53
+ end
54
+
55
+ # @!attribute [rw] etag
56
+ # The ETag that represents a unique instance of the object.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] content_type
60
+ # The content type of the object.
61
+ # @return [String]
62
+ #
63
+ # @!attribute [rw] content_length
64
+ # The length of the object in bytes.
65
+ # @return [Integer]
66
+ #
67
+ # @!attribute [rw] cache_control
68
+ # An optional `CacheControl` header that allows the caller to control
69
+ # the object's cache behavior. Headers can be passed in as specified
70
+ # in the HTTP at
71
+ # [https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9][1].
72
+ #
73
+ # Headers with a custom user-defined value are also accepted.
74
+ #
75
+ #
76
+ #
77
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
78
+ # @return [String]
79
+ #
80
+ # @!attribute [rw] last_modified
81
+ # The date and time that the object was last modified.
82
+ # @return [Time]
83
+ #
84
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/DescribeObjectResponse AWS API Documentation
85
+ #
86
+ class DescribeObjectResponse < Struct.new(
87
+ :etag,
88
+ :content_type,
89
+ :content_length,
90
+ :cache_control,
91
+ :last_modified)
92
+ include Aws::Structure
93
+ end
94
+
95
+ # @note When making an API call, you may pass GetObjectRequest
96
+ # data as a hash:
97
+ #
98
+ # {
99
+ # path: "PathNaming", # required
100
+ # range: "RangePattern",
101
+ # }
102
+ #
103
+ # @!attribute [rw] path
104
+ # The path (including the file name) where the object is stored in the
105
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
106
+ # name&gt;
107
+ #
108
+ # For example, to upload the file `mlaw.avi` to the folder path
109
+ # `premium\canada` in the container `movies`, enter the path
110
+ # `premium/canada/mlaw.avi`.
111
+ #
112
+ # Do not include the container name in this path.
113
+ #
114
+ # If the path includes any folders that don't exist yet, the service
115
+ # creates them. For example, suppose you have an existing
116
+ # `premium/usa` subfolder. If you specify `premium/canada`, the
117
+ # service creates a `canada` subfolder in the `premium` folder. You
118
+ # then have two subfolders, `usa` and `canada`, in the `premium`
119
+ # folder.
120
+ #
121
+ # There is no correlation between the path to the source and the path
122
+ # (folders) in the container in AWS Elemental MediaStore.
123
+ #
124
+ # For more information about folders and how they exist in a
125
+ # container, see the [AWS Elemental MediaStore User Guide][1].
126
+ #
127
+ # The file name is the name that is assigned to the file that you
128
+ # upload. The file can have the same name inside and outside of AWS
129
+ # Elemental MediaStore, or it can have the same name. The file name
130
+ # can include or omit an extension.
131
+ #
132
+ #
133
+ #
134
+ # [1]: http://docs.aws.amazon.com/mediastore/latest/ug/
135
+ # @return [String]
136
+ #
137
+ # @!attribute [rw] range
138
+ # The range bytes of an object to retrieve. For more information about
139
+ # the `Range` header, go to
140
+ # [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35][1].
141
+ #
142
+ #
143
+ #
144
+ # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
145
+ # @return [String]
146
+ #
147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/GetObjectRequest AWS API Documentation
148
+ #
149
+ class GetObjectRequest < Struct.new(
150
+ :path,
151
+ :range)
152
+ include Aws::Structure
153
+ end
154
+
155
+ # @!attribute [rw] body
156
+ # The path to the file outside of the container. The file name can
157
+ # include or omit an extension.
158
+ #
159
+ # Example 1: If the file is stored on a remote server that has been
160
+ # mounted to the workstation on which the REST API command is being
161
+ # run, the path could be the absolute path ` \mount\assets\mlaw.avi`
162
+ # or the relative path `..\..\mount\assets\movies\premium\mlaw.avi`.
163
+ #
164
+ # Example 2: If the file is stored on a remote server that is not
165
+ # mounted, the path could be
166
+ # `https:\\192.0.2.15\movies\premium\mlaw.avi`.
167
+ # @return [IO]
168
+ #
169
+ # @!attribute [rw] cache_control
170
+ # An optional `CacheControl` header that allows the caller to control
171
+ # the object's cache behavior. Headers can be passed in as specified
172
+ # in the HTTP spec at
173
+ # [https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9][1].
174
+ #
175
+ # Headers with a custom user-defined value are also accepted.
176
+ #
177
+ #
178
+ #
179
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
180
+ # @return [String]
181
+ #
182
+ # @!attribute [rw] content_range
183
+ # The range of bytes to retrieve.
184
+ # @return [String]
185
+ #
186
+ # @!attribute [rw] content_length
187
+ # The length of the object in bytes.
188
+ # @return [Integer]
189
+ #
190
+ # @!attribute [rw] content_type
191
+ # The content type of the object.
192
+ # @return [String]
193
+ #
194
+ # @!attribute [rw] etag
195
+ # The ETag that represents a unique instance of the object.
196
+ # @return [String]
197
+ #
198
+ # @!attribute [rw] last_modified
199
+ # The date and time that the object was last modified.
200
+ # @return [Time]
201
+ #
202
+ # @!attribute [rw] status_code
203
+ # The HTML status code of the request. Status codes ranging from 200
204
+ # to 299 indicate success. All other status codes indicate the type of
205
+ # error that occurred.
206
+ # @return [Integer]
207
+ #
208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/GetObjectResponse AWS API Documentation
209
+ #
210
+ class GetObjectResponse < Struct.new(
211
+ :body,
212
+ :cache_control,
213
+ :content_range,
214
+ :content_length,
215
+ :content_type,
216
+ :etag,
217
+ :last_modified,
218
+ :status_code)
219
+ include Aws::Structure
220
+ end
221
+
222
+ # A metadata entry for a folder or object.
223
+ #
224
+ # @!attribute [rw] name
225
+ # The name of the item.
226
+ # @return [String]
227
+ #
228
+ # @!attribute [rw] type
229
+ # The item type (folder or object).
230
+ # @return [String]
231
+ #
232
+ # @!attribute [rw] etag
233
+ # The ETag that represents a unique instance of the item.
234
+ # @return [String]
235
+ #
236
+ # @!attribute [rw] last_modified
237
+ # The date and time that the item was last modified.
238
+ # @return [Time]
239
+ #
240
+ # @!attribute [rw] content_type
241
+ # The content type of the item.
242
+ # @return [String]
243
+ #
244
+ # @!attribute [rw] content_length
245
+ # The length of the item in bytes.
246
+ # @return [Integer]
247
+ #
248
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/Item AWS API Documentation
249
+ #
250
+ class Item < Struct.new(
251
+ :name,
252
+ :type,
253
+ :etag,
254
+ :last_modified,
255
+ :content_type,
256
+ :content_length)
257
+ include Aws::Structure
258
+ end
259
+
260
+ # @note When making an API call, you may pass ListItemsRequest
261
+ # data as a hash:
262
+ #
263
+ # {
264
+ # path: "ListPathNaming",
265
+ # max_results: 1,
266
+ # next_token: "PaginationToken",
267
+ # }
268
+ #
269
+ # @!attribute [rw] path
270
+ # The path in the container from which to retrieve items. Format:
271
+ # &lt;folder name&gt;/&lt;folder name&gt;/&lt;file name&gt;
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] max_results
275
+ # The maximum results to return. The service might return fewer
276
+ # results.
277
+ # @return [Integer]
278
+ #
279
+ # @!attribute [rw] next_token
280
+ # The `NextToken` received in the `ListItemsResponse` for the same
281
+ # container and path. Tokens expire after 15 minutes.
282
+ # @return [String]
283
+ #
284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/ListItemsRequest AWS API Documentation
285
+ #
286
+ class ListItemsRequest < Struct.new(
287
+ :path,
288
+ :max_results,
289
+ :next_token)
290
+ include Aws::Structure
291
+ end
292
+
293
+ # @!attribute [rw] items
294
+ # Metadata entries for the folders and objects at the requested path.
295
+ # @return [Array<Types::Item>]
296
+ #
297
+ # @!attribute [rw] next_token
298
+ # The `NextToken` used to request the next page of results using
299
+ # `ListItems`.
300
+ # @return [String]
301
+ #
302
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/ListItemsResponse AWS API Documentation
303
+ #
304
+ class ListItemsResponse < Struct.new(
305
+ :items,
306
+ :next_token)
307
+ include Aws::Structure
308
+ end
309
+
310
+ # @note When making an API call, you may pass PutObjectRequest
311
+ # data as a hash:
312
+ #
313
+ # {
314
+ # body: "data", # required
315
+ # path: "PathNaming", # required
316
+ # content_type: "ContentType",
317
+ # cache_control: "StringPrimitive",
318
+ # storage_class: "TEMPORAL", # accepts TEMPORAL
319
+ # }
320
+ #
321
+ # @!attribute [rw] body
322
+ # The path to the file outside of the container. The file name can
323
+ # include or omit an extension.
324
+ #
325
+ # Example 1: If the file is stored on a remote server that has been
326
+ # mounted to the workstation on which the REST API command is being
327
+ # run, the path could be the absolute path ` \mount\assets\mlaw.avi`
328
+ # or the relative path `..\..\mount\assets\movies\premium\mlaw.avi`.
329
+ #
330
+ # Example 2: If the file is stored on a remote server that is not
331
+ # mounted, the path could be
332
+ # `https:\\192.0.2.15\movies\premium\mlaw.avi`.
333
+ # @return [IO]
334
+ #
335
+ # @!attribute [rw] path
336
+ # The path (including the file name) where the object is stored in the
337
+ # container. Format: &lt;folder name&gt;/&lt;folder name&gt;/&lt;file
338
+ # name&gt;
339
+ #
340
+ # For example, to upload the file `mlaw.avi` to the folder path
341
+ # `premium\canada` in the container `movies`, enter the path
342
+ # `premium/canada/mlaw.avi`.
343
+ #
344
+ # Do not include the container name in this path.
345
+ #
346
+ # If the path includes any folders that don't exist yet, the service
347
+ # creates them. For example, suppose you have an existing
348
+ # `premium/usa` subfolder. If you specify `premium/canada`, the
349
+ # service creates a `canada` subfolder in the `premium` folder. You
350
+ # then have two subfolders, `usa` and `canada`, in the `premium`
351
+ # folder.
352
+ #
353
+ # There is no correlation between the path to the source and the path
354
+ # (folders) in the container in AWS Elemental MediaStore.
355
+ #
356
+ # For more information about folders and how they exist in a
357
+ # container, see the [AWS Elemental MediaStore User Guide][1].
358
+ #
359
+ # The file name is the name that is assigned to the file that you
360
+ # upload. The file can have the same name inside and outside of AWS
361
+ # Elemental MediaStore, or it can have the same name. The file name
362
+ # can include or omit an extension.
363
+ #
364
+ #
365
+ #
366
+ # [1]: http://docs.aws.amazon.com/mediastore/latest/ug/
367
+ # @return [String]
368
+ #
369
+ # @!attribute [rw] content_type
370
+ # The content type of the object.
371
+ # @return [String]
372
+ #
373
+ # @!attribute [rw] cache_control
374
+ # An optional `CacheControl` header that allows the caller to control
375
+ # the object's cache behavior. Headers can be passed in as specified
376
+ # in the HTTP at
377
+ # [https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9][1].
378
+ #
379
+ # Headers with a custom user-defined value are also accepted.
380
+ #
381
+ #
382
+ #
383
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
384
+ # @return [String]
385
+ #
386
+ # @!attribute [rw] storage_class
387
+ # Indicates the storage class of a `Put` request. Defaults to
388
+ # high-performance temporal storage class, and objects are persisted
389
+ # into durable storage shortly after being received.
390
+ # @return [String]
391
+ #
392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/PutObjectRequest AWS API Documentation
393
+ #
394
+ class PutObjectRequest < Struct.new(
395
+ :body,
396
+ :path,
397
+ :content_type,
398
+ :cache_control,
399
+ :storage_class)
400
+ include Aws::Structure
401
+ end
402
+
403
+ # @!attribute [rw] content_sha256
404
+ # The SHA256 digest of the object that is persisted.
405
+ # @return [String]
406
+ #
407
+ # @!attribute [rw] etag
408
+ # Unique identifier of the object in the container.
409
+ # @return [String]
410
+ #
411
+ # @!attribute [rw] storage_class
412
+ # The storage class where the object was persisted. Should be
413
+ # “Temporal”.
414
+ # @return [String]
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-data-2017-09-01/PutObjectResponse AWS API Documentation
417
+ #
418
+ class PutObjectResponse < Struct.new(
419
+ :content_sha256,
420
+ :etag,
421
+ :storage_class)
422
+ include Aws::Structure
423
+ end
424
+
425
+ end
426
+ end
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-mediastoredata/types'
12
+ require_relative 'aws-sdk-mediastoredata/client_api'
13
+ require_relative 'aws-sdk-mediastoredata/client'
14
+ require_relative 'aws-sdk-mediastoredata/errors'
15
+ require_relative 'aws-sdk-mediastoredata/resource'
16
+ require_relative 'aws-sdk-mediastoredata/customizations'
17
+
18
+ # This module provides support for AWS Elemental MediaStore Data Plane. This module is available in the
19
+ # `aws-sdk-mediastoredata` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from AWS Elemental MediaStore Data Plane all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::MediaStoreData::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::MediaStoreData
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
metadata ADDED
@@ -0,0 +1,82 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aws-sdk-mediastoredata
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Amazon Web Services
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-11-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: aws-sdk-core
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: aws-sigv4
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ description: Official AWS Ruby gem for AWS Elemental MediaStore Data Plane (MediaStore
42
+ Data). This gem is part of the AWS SDK for Ruby.
43
+ email:
44
+ - trevrowe@amazon.com
45
+ executables: []
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - lib/aws-sdk-mediastoredata.rb
50
+ - lib/aws-sdk-mediastoredata/client.rb
51
+ - lib/aws-sdk-mediastoredata/client_api.rb
52
+ - lib/aws-sdk-mediastoredata/customizations.rb
53
+ - lib/aws-sdk-mediastoredata/errors.rb
54
+ - lib/aws-sdk-mediastoredata/resource.rb
55
+ - lib/aws-sdk-mediastoredata/types.rb
56
+ homepage: http://github.com/aws/aws-sdk-ruby
57
+ licenses:
58
+ - Apache-2.0
59
+ metadata:
60
+ source_code_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-mediastoredata
61
+ changelog_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-mediastoredata/CHANGELOG.md
62
+ post_install_message:
63
+ rdoc_options: []
64
+ require_paths:
65
+ - lib
66
+ required_ruby_version: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ required_rubygems_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ requirements: []
77
+ rubyforge_project:
78
+ rubygems_version: 2.5.1
79
+ signing_key:
80
+ specification_version: 4
81
+ summary: AWS SDK for Ruby - MediaStore Data
82
+ test_files: []