aws-sdk-kinesisvideoarchivedmedia 1.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e88c784c85b1775f0a31c50ef0cb389b567b2caf
4
+ data.tar.gz: 96750a55726407e1f0e703f946e9560df26bc1ad
5
+ SHA512:
6
+ metadata.gz: c2a5da90bc84f9662b4a0262a2858306caed203fd7c95851026703ac2bc3034170d5c03dcdc38cd625e3fc4c24452c242eddab6d8de0ece13063d01fc7aa1da6
7
+ data.tar.gz: 926090c3f99866972cdcfb41e3e41f80f16240707122ef3e56e7ed81b161547386a347e0aa04476332cf97bd31ca67c6ba7b332267546f20f867fc4cf4f4e7af
@@ -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-kinesisvideoarchivedmedia/types'
12
+ require_relative 'aws-sdk-kinesisvideoarchivedmedia/client_api'
13
+ require_relative 'aws-sdk-kinesisvideoarchivedmedia/client'
14
+ require_relative 'aws-sdk-kinesisvideoarchivedmedia/errors'
15
+ require_relative 'aws-sdk-kinesisvideoarchivedmedia/resource'
16
+ require_relative 'aws-sdk-kinesisvideoarchivedmedia/customizations'
17
+
18
+ # This module provides support for Amazon Kinesis Video Streams Archived Media. This module is available in the
19
+ # `aws-sdk-kinesisvideoarchivedmedia` 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 Amazon Kinesis Video Streams Archived Media all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::KinesisVideoArchivedMedia::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::KinesisVideoArchivedMedia
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,293 @@
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(:kinesisvideoarchivedmedia)
26
+
27
+ module Aws::KinesisVideoArchivedMedia
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :kinesisvideoarchivedmedia
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
+ # Gets media for a list of fragments (specified by fragment number) from
149
+ # the archived data in a Kinesis video stream.
150
+ #
151
+ # <note markdown="1"> This operation is only available for the AWS SDK for Java. It is not
152
+ # supported in AWS SDKs for other languages.
153
+ #
154
+ # </note>
155
+ #
156
+ # The following limits apply when using the `GetMediaForFragmentList`
157
+ # API:
158
+ #
159
+ # * A client can call `GetMediaForFragmentList` up to five times per
160
+ # second per stream.
161
+ #
162
+ # * Kinesis Video Streams sends media data at a rate of up to 25
163
+ # megabytes per second (or 200 megabits per second) during a
164
+ # `GetMediaForFragmentList` session.
165
+ #
166
+ # @option params [required, String] :stream_name
167
+ # The name of the stream from which to retrieve fragment media.
168
+ #
169
+ # @option params [required, Array<String>] :fragments
170
+ # A list of the numbers of fragments for which to retrieve media. You
171
+ # retrieve these values with ListFragments.
172
+ #
173
+ # @return [Types::GetMediaForFragmentListOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
174
+ #
175
+ # * {Types::GetMediaForFragmentListOutput#content_type #content_type} => String
176
+ # * {Types::GetMediaForFragmentListOutput#payload #payload} => IO
177
+ #
178
+ # @example Request syntax with placeholder values
179
+ #
180
+ # resp = client.get_media_for_fragment_list({
181
+ # stream_name: "StreamName", # required
182
+ # fragments: ["FragmentNumberString"], # required
183
+ # })
184
+ #
185
+ # @example Response structure
186
+ #
187
+ # resp.content_type #=> String
188
+ # resp.payload #=> IO
189
+ #
190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/GetMediaForFragmentList AWS API Documentation
191
+ #
192
+ # @overload get_media_for_fragment_list(params = {})
193
+ # @param [Hash] params ({})
194
+ def get_media_for_fragment_list(params = {}, options = {}, &block)
195
+ req = build_request(:get_media_for_fragment_list, params)
196
+ req.send_request(options, &block)
197
+ end
198
+
199
+ # Returns a list of Fragment objects from the specified stream and start
200
+ # location within the archived data.
201
+ #
202
+ # @option params [required, String] :stream_name
203
+ # The name of the stream from which to retrieve a fragment list.
204
+ #
205
+ # @option params [Integer] :max_results
206
+ # The total number of fragments to return. If the total number of
207
+ # fragments available is more than the value specified in `max-results`,
208
+ # then a ListFragmentsOutput$NextToken is provided in the output that
209
+ # you can use to resume pagination.
210
+ #
211
+ # @option params [String] :next_token
212
+ # A token to specify where to start paginating. This is the
213
+ # ListFragmentsOutput$NextToken from a previously truncated response.
214
+ #
215
+ # @option params [Types::FragmentSelector] :fragment_selector
216
+ # Describes the time stamp range and time stamp origin for the range of
217
+ # fragments to return.
218
+ #
219
+ # @return [Types::ListFragmentsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
220
+ #
221
+ # * {Types::ListFragmentsOutput#fragments #fragments} => Array&lt;Types::Fragment&gt;
222
+ # * {Types::ListFragmentsOutput#next_token #next_token} => String
223
+ #
224
+ # @example Request syntax with placeholder values
225
+ #
226
+ # resp = client.list_fragments({
227
+ # stream_name: "StreamName", # required
228
+ # max_results: 1,
229
+ # next_token: "String",
230
+ # fragment_selector: {
231
+ # fragment_selector_type: "PRODUCER_TIMESTAMP", # required, accepts PRODUCER_TIMESTAMP, SERVER_TIMESTAMP
232
+ # timestamp_range: { # required
233
+ # start_timestamp: Time.now, # required
234
+ # end_timestamp: Time.now, # required
235
+ # },
236
+ # },
237
+ # })
238
+ #
239
+ # @example Response structure
240
+ #
241
+ # resp.fragments #=> Array
242
+ # resp.fragments[0].fragment_number #=> String
243
+ # resp.fragments[0].fragment_size_in_bytes #=> Integer
244
+ # resp.fragments[0].producer_timestamp #=> Time
245
+ # resp.fragments[0].server_timestamp #=> Time
246
+ # resp.fragments[0].fragment_length_in_milliseconds #=> Integer
247
+ # resp.next_token #=> String
248
+ #
249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/ListFragments AWS API Documentation
250
+ #
251
+ # @overload list_fragments(params = {})
252
+ # @param [Hash] params ({})
253
+ def list_fragments(params = {}, options = {})
254
+ req = build_request(:list_fragments, params)
255
+ req.send_request(options)
256
+ end
257
+
258
+ # @!endgroup
259
+
260
+ # @param params ({})
261
+ # @api private
262
+ def build_request(operation_name, params = {})
263
+ handlers = @handlers.for(operation_name)
264
+ context = Seahorse::Client::RequestContext.new(
265
+ operation_name: operation_name,
266
+ operation: config.api.operation(operation_name),
267
+ client: self,
268
+ params: params,
269
+ config: config)
270
+ context[:gem_name] = 'aws-sdk-kinesisvideoarchivedmedia'
271
+ context[:gem_version] = '1.0.0'
272
+ Seahorse::Client::Request.new(handlers, context)
273
+ end
274
+
275
+ # @api private
276
+ # @deprecated
277
+ def waiter_names
278
+ []
279
+ end
280
+
281
+ class << self
282
+
283
+ # @api private
284
+ attr_reader :identifier
285
+
286
+ # @api private
287
+ def errors_module
288
+ Errors
289
+ end
290
+
291
+ end
292
+ end
293
+ end
@@ -0,0 +1,116 @@
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::KinesisVideoArchivedMedia
9
+ # @api private
10
+ module ClientApi
11
+
12
+ include Seahorse::Model
13
+
14
+ ClientLimitExceededException = Shapes::StructureShape.new(name: 'ClientLimitExceededException')
15
+ ContentType = Shapes::StringShape.new(name: 'ContentType')
16
+ ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
17
+ Fragment = Shapes::StructureShape.new(name: 'Fragment')
18
+ FragmentList = Shapes::ListShape.new(name: 'FragmentList')
19
+ FragmentNumberList = Shapes::ListShape.new(name: 'FragmentNumberList')
20
+ FragmentNumberString = Shapes::StringShape.new(name: 'FragmentNumberString')
21
+ FragmentSelector = Shapes::StructureShape.new(name: 'FragmentSelector')
22
+ FragmentSelectorType = Shapes::StringShape.new(name: 'FragmentSelectorType')
23
+ GetMediaForFragmentListInput = Shapes::StructureShape.new(name: 'GetMediaForFragmentListInput')
24
+ GetMediaForFragmentListOutput = Shapes::StructureShape.new(name: 'GetMediaForFragmentListOutput')
25
+ InvalidArgumentException = Shapes::StructureShape.new(name: 'InvalidArgumentException')
26
+ ListFragmentsInput = Shapes::StructureShape.new(name: 'ListFragmentsInput')
27
+ ListFragmentsOutput = Shapes::StructureShape.new(name: 'ListFragmentsOutput')
28
+ Long = Shapes::IntegerShape.new(name: 'Long')
29
+ NotAuthorizedException = Shapes::StructureShape.new(name: 'NotAuthorizedException')
30
+ PageLimit = Shapes::IntegerShape.new(name: 'PageLimit')
31
+ Payload = Shapes::BlobShape.new(name: 'Payload')
32
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
33
+ StreamName = Shapes::StringShape.new(name: 'StreamName')
34
+ String = Shapes::StringShape.new(name: 'String')
35
+ Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
36
+ TimestampRange = Shapes::StructureShape.new(name: 'TimestampRange')
37
+
38
+ Fragment.add_member(:fragment_number, Shapes::ShapeRef.new(shape: String, location_name: "FragmentNumber"))
39
+ Fragment.add_member(:fragment_size_in_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "FragmentSizeInBytes"))
40
+ Fragment.add_member(:producer_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ProducerTimestamp"))
41
+ Fragment.add_member(:server_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ServerTimestamp"))
42
+ Fragment.add_member(:fragment_length_in_milliseconds, Shapes::ShapeRef.new(shape: Long, location_name: "FragmentLengthInMilliseconds"))
43
+ Fragment.struct_class = Types::Fragment
44
+
45
+ FragmentList.member = Shapes::ShapeRef.new(shape: Fragment)
46
+
47
+ FragmentNumberList.member = Shapes::ShapeRef.new(shape: FragmentNumberString)
48
+
49
+ FragmentSelector.add_member(:fragment_selector_type, Shapes::ShapeRef.new(shape: FragmentSelectorType, required: true, location_name: "FragmentSelectorType"))
50
+ FragmentSelector.add_member(:timestamp_range, Shapes::ShapeRef.new(shape: TimestampRange, required: true, location_name: "TimestampRange"))
51
+ FragmentSelector.struct_class = Types::FragmentSelector
52
+
53
+ GetMediaForFragmentListInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
54
+ GetMediaForFragmentListInput.add_member(:fragments, Shapes::ShapeRef.new(shape: FragmentNumberList, required: true, location_name: "Fragments"))
55
+ GetMediaForFragmentListInput.struct_class = Types::GetMediaForFragmentListInput
56
+
57
+ GetMediaForFragmentListOutput.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "Content-Type"))
58
+ GetMediaForFragmentListOutput.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "Payload"))
59
+ GetMediaForFragmentListOutput.struct_class = Types::GetMediaForFragmentListOutput
60
+ GetMediaForFragmentListOutput[:payload] = :payload
61
+ GetMediaForFragmentListOutput[:payload_member] = GetMediaForFragmentListOutput.member(:payload)
62
+
63
+ ListFragmentsInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
64
+ ListFragmentsInput.add_member(:max_results, Shapes::ShapeRef.new(shape: PageLimit, location_name: "MaxResults"))
65
+ ListFragmentsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
66
+ ListFragmentsInput.add_member(:fragment_selector, Shapes::ShapeRef.new(shape: FragmentSelector, location_name: "FragmentSelector"))
67
+ ListFragmentsInput.struct_class = Types::ListFragmentsInput
68
+
69
+ ListFragmentsOutput.add_member(:fragments, Shapes::ShapeRef.new(shape: FragmentList, location_name: "Fragments"))
70
+ ListFragmentsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
71
+ ListFragmentsOutput.struct_class = Types::ListFragmentsOutput
72
+
73
+ TimestampRange.add_member(:start_timestamp, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "StartTimestamp"))
74
+ TimestampRange.add_member(:end_timestamp, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "EndTimestamp"))
75
+ TimestampRange.struct_class = Types::TimestampRange
76
+
77
+
78
+ # @api private
79
+ API = Seahorse::Model::Api.new.tap do |api|
80
+
81
+ api.version = "2017-09-30"
82
+
83
+ api.metadata = {
84
+ "endpointPrefix" => "kinesisvideo",
85
+ "protocol" => "rest-json",
86
+ "serviceFullName" => "Amazon Kinesis Video Streams Archived Media",
87
+ "signatureVersion" => "v4",
88
+ }
89
+
90
+ api.add_operation(:get_media_for_fragment_list, Seahorse::Model::Operation.new.tap do |o|
91
+ o.name = "GetMediaForFragmentList"
92
+ o.http_method = "POST"
93
+ o.http_request_uri = "/getMediaForFragmentList"
94
+ o.input = Shapes::ShapeRef.new(shape: GetMediaForFragmentListInput)
95
+ o.output = Shapes::ShapeRef.new(shape: GetMediaForFragmentListOutput)
96
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
97
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
98
+ o.errors << Shapes::ShapeRef.new(shape: ClientLimitExceededException)
99
+ o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
100
+ end)
101
+
102
+ api.add_operation(:list_fragments, Seahorse::Model::Operation.new.tap do |o|
103
+ o.name = "ListFragments"
104
+ o.http_method = "POST"
105
+ o.http_request_uri = "/listFragments"
106
+ o.input = Shapes::ShapeRef.new(shape: ListFragmentsInput)
107
+ o.output = Shapes::ShapeRef.new(shape: ListFragmentsOutput)
108
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
109
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
110
+ o.errors << Shapes::ShapeRef.new(shape: ClientLimitExceededException)
111
+ o.errors << Shapes::ShapeRef.new(shape: NotAuthorizedException)
112
+ end)
113
+ end
114
+
115
+ end
116
+ end
@@ -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::KinesisVideoArchivedMedia
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::KinesisVideoArchivedMedia
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,238 @@
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::KinesisVideoArchivedMedia
9
+ module Types
10
+
11
+ # Represents a segment of video or other time-delimited data.
12
+ #
13
+ # @!attribute [rw] fragment_number
14
+ # The index value of the fragment.
15
+ # @return [String]
16
+ #
17
+ # @!attribute [rw] fragment_size_in_bytes
18
+ # The total fragment size, including information about the fragment
19
+ # and contained media data.
20
+ # @return [Integer]
21
+ #
22
+ # @!attribute [rw] producer_timestamp
23
+ # The time stamp from the producer corresponding to the fragment.
24
+ # @return [Time]
25
+ #
26
+ # @!attribute [rw] server_timestamp
27
+ # The time stamp from the AWS server corresponding to the fragment.
28
+ # @return [Time]
29
+ #
30
+ # @!attribute [rw] fragment_length_in_milliseconds
31
+ # The playback duration or other time value associated with the
32
+ # fragment.
33
+ # @return [Integer]
34
+ #
35
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/Fragment AWS API Documentation
36
+ #
37
+ class Fragment < Struct.new(
38
+ :fragment_number,
39
+ :fragment_size_in_bytes,
40
+ :producer_timestamp,
41
+ :server_timestamp,
42
+ :fragment_length_in_milliseconds)
43
+ include Aws::Structure
44
+ end
45
+
46
+ # Describes the time stamp range and time stamp origin of a range of
47
+ # fragments.
48
+ #
49
+ # @note When making an API call, you may pass FragmentSelector
50
+ # data as a hash:
51
+ #
52
+ # {
53
+ # fragment_selector_type: "PRODUCER_TIMESTAMP", # required, accepts PRODUCER_TIMESTAMP, SERVER_TIMESTAMP
54
+ # timestamp_range: { # required
55
+ # start_timestamp: Time.now, # required
56
+ # end_timestamp: Time.now, # required
57
+ # },
58
+ # }
59
+ #
60
+ # @!attribute [rw] fragment_selector_type
61
+ # The origin of the time stamps to use (Server or Producer).
62
+ # @return [String]
63
+ #
64
+ # @!attribute [rw] timestamp_range
65
+ # The range of time stamps to return.
66
+ # @return [Types::TimestampRange]
67
+ #
68
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/FragmentSelector AWS API Documentation
69
+ #
70
+ class FragmentSelector < Struct.new(
71
+ :fragment_selector_type,
72
+ :timestamp_range)
73
+ include Aws::Structure
74
+ end
75
+
76
+ # @note When making an API call, you may pass GetMediaForFragmentListInput
77
+ # data as a hash:
78
+ #
79
+ # {
80
+ # stream_name: "StreamName", # required
81
+ # fragments: ["FragmentNumberString"], # required
82
+ # }
83
+ #
84
+ # @!attribute [rw] stream_name
85
+ # The name of the stream from which to retrieve fragment media.
86
+ # @return [String]
87
+ #
88
+ # @!attribute [rw] fragments
89
+ # A list of the numbers of fragments for which to retrieve media. You
90
+ # retrieve these values with ListFragments.
91
+ # @return [Array<String>]
92
+ #
93
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/GetMediaForFragmentListInput AWS API Documentation
94
+ #
95
+ class GetMediaForFragmentListInput < Struct.new(
96
+ :stream_name,
97
+ :fragments)
98
+ include Aws::Structure
99
+ end
100
+
101
+ # @!attribute [rw] content_type
102
+ # The content type of the requested media.
103
+ # @return [String]
104
+ #
105
+ # @!attribute [rw] payload
106
+ # The payload that Kinesis Video Streams returns is a sequence of
107
+ # chunks from the specified stream. For information about the chunks,
108
+ # see
109
+ # [PutMedia](docs.aws.amazon.com/acuity/latest/dg/API_dataplane_PutMedia.html).
110
+ # The chunks that Kinesis Video Streams returns in the
111
+ # `GetMediaForFragmentList` call also include the following additional
112
+ # Matroska (MKV) tags:
113
+ #
114
+ # * AWS\_KINESISVIDEO\_FRAGMENT\_NUMBER - Fragment number returned in
115
+ # the chunk.
116
+ #
117
+ # * AWS\_KINESISVIDEO\_SERVER\_SIDE\_TIMESTAMP - Server-side time
118
+ # stamp of the fragment.
119
+ #
120
+ # * AWS\_KINESISVIDEO\_PRODUCER\_SIDE\_TIMESTAMP - Producer-side time
121
+ # stamp of the fragment.
122
+ #
123
+ # The following tags will be included if an exception occurs:
124
+ #
125
+ # * AWS\_KINESISVIDEO\_FRAGMENT\_NUMBER - The number of the fragment
126
+ # that threw the exception
127
+ #
128
+ # * AWS\_KINESISVIDEO\_EXCEPTION\_ERROR\_CODE - The integer code of
129
+ # the exception
130
+ #
131
+ # * AWS\_KINESISVIDEO\_EXCEPTION\_MESSAGE - A text description of the
132
+ # exception
133
+ # @return [IO]
134
+ #
135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/GetMediaForFragmentListOutput AWS API Documentation
136
+ #
137
+ class GetMediaForFragmentListOutput < Struct.new(
138
+ :content_type,
139
+ :payload)
140
+ include Aws::Structure
141
+ end
142
+
143
+ # @note When making an API call, you may pass ListFragmentsInput
144
+ # data as a hash:
145
+ #
146
+ # {
147
+ # stream_name: "StreamName", # required
148
+ # max_results: 1,
149
+ # next_token: "String",
150
+ # fragment_selector: {
151
+ # fragment_selector_type: "PRODUCER_TIMESTAMP", # required, accepts PRODUCER_TIMESTAMP, SERVER_TIMESTAMP
152
+ # timestamp_range: { # required
153
+ # start_timestamp: Time.now, # required
154
+ # end_timestamp: Time.now, # required
155
+ # },
156
+ # },
157
+ # }
158
+ #
159
+ # @!attribute [rw] stream_name
160
+ # The name of the stream from which to retrieve a fragment list.
161
+ # @return [String]
162
+ #
163
+ # @!attribute [rw] max_results
164
+ # The total number of fragments to return. If the total number of
165
+ # fragments available is more than the value specified in
166
+ # `max-results`, then a ListFragmentsOutput$NextToken is provided in
167
+ # the output that you can use to resume pagination.
168
+ # @return [Integer]
169
+ #
170
+ # @!attribute [rw] next_token
171
+ # A token to specify where to start paginating. This is the
172
+ # ListFragmentsOutput$NextToken from a previously truncated response.
173
+ # @return [String]
174
+ #
175
+ # @!attribute [rw] fragment_selector
176
+ # Describes the time stamp range and time stamp origin for the range
177
+ # of fragments to return.
178
+ # @return [Types::FragmentSelector]
179
+ #
180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/ListFragmentsInput AWS API Documentation
181
+ #
182
+ class ListFragmentsInput < Struct.new(
183
+ :stream_name,
184
+ :max_results,
185
+ :next_token,
186
+ :fragment_selector)
187
+ include Aws::Structure
188
+ end
189
+
190
+ # @!attribute [rw] fragments
191
+ # A list of fragment numbers that correspond to the time stamp range
192
+ # provided.
193
+ # @return [Array<Types::Fragment>]
194
+ #
195
+ # @!attribute [rw] next_token
196
+ # If the returned list is truncated, the operation returns this token
197
+ # to use to retrieve the next page of results. This value is `null`
198
+ # when there are no more results to return.
199
+ # @return [String]
200
+ #
201
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/ListFragmentsOutput AWS API Documentation
202
+ #
203
+ class ListFragmentsOutput < Struct.new(
204
+ :fragments,
205
+ :next_token)
206
+ include Aws::Structure
207
+ end
208
+
209
+ # The range of time stamps for which to return fragments.
210
+ #
211
+ # @note When making an API call, you may pass TimestampRange
212
+ # data as a hash:
213
+ #
214
+ # {
215
+ # start_timestamp: Time.now, # required
216
+ # end_timestamp: Time.now, # required
217
+ # }
218
+ #
219
+ # @!attribute [rw] start_timestamp
220
+ # The starting time stamp in the range of time stamps for which to
221
+ # return fragments.
222
+ # @return [Time]
223
+ #
224
+ # @!attribute [rw] end_timestamp
225
+ # The ending time stamp in the range of time stamps for which to
226
+ # return fragments.
227
+ # @return [Time]
228
+ #
229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-archived-media-2017-09-30/TimestampRange AWS API Documentation
230
+ #
231
+ class TimestampRange < Struct.new(
232
+ :start_timestamp,
233
+ :end_timestamp)
234
+ include Aws::Structure
235
+ end
236
+
237
+ end
238
+ end
metadata ADDED
@@ -0,0 +1,82 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aws-sdk-kinesisvideoarchivedmedia
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-29 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 Amazon Kinesis Video Streams Archived Media
42
+ (Kinesis Video Archived Media). 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-kinesisvideoarchivedmedia.rb
50
+ - lib/aws-sdk-kinesisvideoarchivedmedia/client.rb
51
+ - lib/aws-sdk-kinesisvideoarchivedmedia/client_api.rb
52
+ - lib/aws-sdk-kinesisvideoarchivedmedia/customizations.rb
53
+ - lib/aws-sdk-kinesisvideoarchivedmedia/errors.rb
54
+ - lib/aws-sdk-kinesisvideoarchivedmedia/resource.rb
55
+ - lib/aws-sdk-kinesisvideoarchivedmedia/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-kinesisvideoarchivedmedia
61
+ changelog_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-kinesisvideoarchivedmedia/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 - Kinesis Video Archived Media
82
+ test_files: []