aws-sdk-mediastore 1.22.0 → 1.23.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2624fafe3a883ab033b7ced94c8dd4fd7261393c
4
- data.tar.gz: 7479d173c5c4746434931727fd76193eb7faa8db
3
+ metadata.gz: eb881c1b4552e5e5c136e68263e8ec27ef0f6494
4
+ data.tar.gz: 7d52c38a0d7bc26febc120841f47c870a30e3b95
5
5
  SHA512:
6
- metadata.gz: 6ebb43b7d32208e954fd34f55fde38539a7e402c3c55606945d9a51b83ca65ab44ede4ccdfb47bc9281a709758e619f758cbab07b3543ee5332b4b169ee88c47
7
- data.tar.gz: 16477bfe8375f1f05ddfc7acd78da4cdab718c3fe9f19052fd01a277a0f6090cde2a074d4c9b10979394d5459001592942f196bb6bb431a27a33f7a5bfbecbc2
6
+ metadata.gz: ae799394d39951f633cdb5890e6f26946cda70f9c4fdc8e610560d0af960a9e41e21b57c8e701bcffe05b72626d0ecf07c55fdf0f7ac3c4a96157df841e37847
7
+ data.tar.gz: 98dac8e8b8cbb4df419f60f4158180478d9c4a97cb6d0e70fa7b6c349f3b4e2a750399aca8865c130e673c070800930d4f8a0b0ad0a80eb20738433d798cceef
@@ -45,6 +45,6 @@ require_relative 'aws-sdk-mediastore/customizations'
45
45
  # @service
46
46
  module Aws::MediaStore
47
47
 
48
- GEM_VERSION = '1.22.0'
48
+ GEM_VERSION = '1.23.0'
49
49
 
50
50
  end
@@ -32,11 +32,11 @@ Aws::Plugins::GlobalConfiguration.add_identifier(:mediastore)
32
32
  module Aws::MediaStore
33
33
  # An API client for MediaStore. To construct a client, you need to configure a `:region` and `:credentials`.
34
34
  #
35
- # client = Aws::MediaStore::Client.new(
36
- # region: region_name,
37
- # credentials: credentials,
38
- # # ...
39
- # )
35
+ # client = Aws::MediaStore::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
40
  #
41
41
  # For details on configuring region and credentials see
42
42
  # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
@@ -229,15 +229,19 @@ module Aws::MediaStore
229
229
  #
230
230
  # @option options [String] :retry_mode ("legacy")
231
231
  # Specifies which retry algorithm to use. Values are:
232
- # * `legacy` - The pre-existing retry behavior. This is default value if
233
- # no retry mode is provided.
234
- # * `standard` - A standardized set of retry rules across the AWS SDKs.
235
- # This includes support for retry quotas, which limit the number of
236
- # unsuccessful retries a client can make.
237
- # * `adaptive` - An experimental retry mode that includes all the
238
- # functionality of `standard` mode along with automatic client side
239
- # throttling. This is a provisional mode that may change behavior
240
- # in the future.
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
241
245
  #
242
246
  # @option options [String] :secret_access_key
243
247
  #
@@ -275,8 +279,7 @@ module Aws::MediaStore
275
279
  #
276
280
  # @option options [Integer] :http_read_timeout (60) The default
277
281
  # number of seconds to wait for response data. This value can
278
- # safely be set
279
- # per-request on the session yielded by {#session_for}.
282
+ # safely be set per-request on the session.
280
283
  #
281
284
  # @option options [Float] :http_idle_timeout (5) The number of
282
285
  # seconds a connection is allowed to sit idle before it is
@@ -288,7 +291,7 @@ module Aws::MediaStore
288
291
  # request body. This option has no effect unless the request has
289
292
  # "Expect" header set to "100-continue". Defaults to `nil` which
290
293
  # disables this behaviour. This value can safely be set per
291
- # request on the session yielded by {#session_for}.
294
+ # request on the session.
292
295
  #
293
296
  # @option options [Boolean] :http_wire_trace (false) When `true`,
294
297
  # HTTP debug output will be sent to the `:logger`.
@@ -469,6 +472,31 @@ module Aws::MediaStore
469
472
  req.send_request(options)
470
473
  end
471
474
 
475
+ # Deletes the metric policy that is associated with the specified
476
+ # container. If there is no metric policy associated with the container,
477
+ # MediaStore doesn't send metrics to CloudWatch.
478
+ #
479
+ # @option params [required, String] :container_name
480
+ # The name of the container that is associated with the metric policy
481
+ # that you want to delete.
482
+ #
483
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
484
+ #
485
+ # @example Request syntax with placeholder values
486
+ #
487
+ # resp = client.delete_metric_policy({
488
+ # container_name: "ContainerName", # required
489
+ # })
490
+ #
491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/DeleteMetricPolicy AWS API Documentation
492
+ #
493
+ # @overload delete_metric_policy(params = {})
494
+ # @param [Hash] params ({})
495
+ def delete_metric_policy(params = {}, options = {})
496
+ req = build_request(:delete_metric_policy, params)
497
+ req.send_request(options)
498
+ end
499
+
472
500
  # Retrieves the properties of the requested container. This request is
473
501
  # commonly used to retrieve the endpoint of a container. An endpoint is
474
502
  # a value assigned by the service when a new container is created. A
@@ -613,6 +641,37 @@ module Aws::MediaStore
613
641
  req.send_request(options)
614
642
  end
615
643
 
644
+ # Returns the metric policy for the specified container.
645
+ #
646
+ # @option params [required, String] :container_name
647
+ # The name of the container that is associated with the metric policy.
648
+ #
649
+ # @return [Types::GetMetricPolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
650
+ #
651
+ # * {Types::GetMetricPolicyOutput#metric_policy #metric_policy} => Types::MetricPolicy
652
+ #
653
+ # @example Request syntax with placeholder values
654
+ #
655
+ # resp = client.get_metric_policy({
656
+ # container_name: "ContainerName", # required
657
+ # })
658
+ #
659
+ # @example Response structure
660
+ #
661
+ # resp.metric_policy.container_level_metrics #=> String, one of "ENABLED", "DISABLED"
662
+ # resp.metric_policy.metric_policy_rules #=> Array
663
+ # resp.metric_policy.metric_policy_rules[0].object_group #=> String
664
+ # resp.metric_policy.metric_policy_rules[0].object_group_name #=> String
665
+ #
666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/GetMetricPolicy AWS API Documentation
667
+ #
668
+ # @overload get_metric_policy(params = {})
669
+ # @param [Hash] params ({})
670
+ def get_metric_policy(params = {}, options = {})
671
+ req = build_request(:get_metric_policy, params)
672
+ req.send_request(options)
673
+ end
674
+
616
675
  # Lists the properties of all containers in AWS Elemental MediaStore.
617
676
  #
618
677
  # You can query to receive all the containers in one response. Or you
@@ -641,6 +700,8 @@ module Aws::MediaStore
641
700
  # * {Types::ListContainersOutput#containers #containers} => Array<Types::Container>
642
701
  # * {Types::ListContainersOutput#next_token #next_token} => String
643
702
  #
703
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
704
+ #
644
705
  # @example Request syntax with placeholder values
645
706
  #
646
707
  # resp = client.list_containers({
@@ -829,6 +890,59 @@ module Aws::MediaStore
829
890
  req.send_request(options)
830
891
  end
831
892
 
893
+ # The metric policy that you want to add to the container. A metric
894
+ # policy allows AWS Elemental MediaStore to send metrics to Amazon
895
+ # CloudWatch. It takes up to 20 minutes for the new policy to take
896
+ # effect.
897
+ #
898
+ # @option params [required, String] :container_name
899
+ # The name of the container that you want to add the metric policy to.
900
+ #
901
+ # @option params [required, Types::MetricPolicy] :metric_policy
902
+ # The metric policy that you want to associate with the container. In
903
+ # the policy, you must indicate whether you want MediaStore to send
904
+ # container-level metrics. You can also include up to five rules to
905
+ # define groups of objects that you want MediaStore to send object-level
906
+ # metrics for. If you include rules in the policy, construct each rule
907
+ # with both of the following:
908
+ #
909
+ # * An object group that defines which objects to include in the group.
910
+ # The definition can be a path or a file name, but it can't have more
911
+ # than 900 characters. Valid characters are: a-z, A-Z, 0-9, \_
912
+ # (underscore), = (equal), : (colon), . (period), - (hyphen), ~
913
+ # (tilde), / (forward slash), and * (asterisk). Wildcards (*) are
914
+ # acceptable.
915
+ #
916
+ # * An object group name that allows you to refer to the object group.
917
+ # The name can't have more than 30 characters. Valid characters are:
918
+ # a-z, A-Z, 0-9, and \_ (underscore).
919
+ #
920
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
921
+ #
922
+ # @example Request syntax with placeholder values
923
+ #
924
+ # resp = client.put_metric_policy({
925
+ # container_name: "ContainerName", # required
926
+ # metric_policy: { # required
927
+ # container_level_metrics: "ENABLED", # required, accepts ENABLED, DISABLED
928
+ # metric_policy_rules: [
929
+ # {
930
+ # object_group: "ObjectGroup", # required
931
+ # object_group_name: "ObjectGroupName", # required
932
+ # },
933
+ # ],
934
+ # },
935
+ # })
936
+ #
937
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/PutMetricPolicy AWS API Documentation
938
+ #
939
+ # @overload put_metric_policy(params = {})
940
+ # @param [Hash] params ({})
941
+ def put_metric_policy(params = {}, options = {})
942
+ req = build_request(:put_metric_policy, params)
943
+ req.send_request(options)
944
+ end
945
+
832
946
  # Starts access logging on the specified container. When you enable
833
947
  # access logging on a container, MediaStore delivers access logs for
834
948
  # objects stored in that container to Amazon CloudWatch Logs.
@@ -970,7 +1084,7 @@ module Aws::MediaStore
970
1084
  params: params,
971
1085
  config: config)
972
1086
  context[:gem_name] = 'aws-sdk-mediastore'
973
- context[:gem_version] = '1.22.0'
1087
+ context[:gem_version] = '1.23.0'
974
1088
  Seahorse::Client::Request.new(handlers, context)
975
1089
  end
976
1090
 
@@ -18,6 +18,7 @@ module Aws::MediaStore
18
18
  ContainerARN = Shapes::StringShape.new(name: 'ContainerARN')
19
19
  ContainerAccessLoggingEnabled = Shapes::BooleanShape.new(name: 'ContainerAccessLoggingEnabled')
20
20
  ContainerInUseException = Shapes::StructureShape.new(name: 'ContainerInUseException')
21
+ ContainerLevelMetrics = Shapes::StringShape.new(name: 'ContainerLevelMetrics')
21
22
  ContainerList = Shapes::ListShape.new(name: 'ContainerList')
22
23
  ContainerListLimit = Shapes::IntegerShape.new(name: 'ContainerListLimit')
23
24
  ContainerName = Shapes::StringShape.new(name: 'ContainerName')
@@ -37,6 +38,8 @@ module Aws::MediaStore
37
38
  DeleteCorsPolicyOutput = Shapes::StructureShape.new(name: 'DeleteCorsPolicyOutput')
38
39
  DeleteLifecyclePolicyInput = Shapes::StructureShape.new(name: 'DeleteLifecyclePolicyInput')
39
40
  DeleteLifecyclePolicyOutput = Shapes::StructureShape.new(name: 'DeleteLifecyclePolicyOutput')
41
+ DeleteMetricPolicyInput = Shapes::StructureShape.new(name: 'DeleteMetricPolicyInput')
42
+ DeleteMetricPolicyOutput = Shapes::StructureShape.new(name: 'DeleteMetricPolicyOutput')
40
43
  DescribeContainerInput = Shapes::StructureShape.new(name: 'DescribeContainerInput')
41
44
  DescribeContainerOutput = Shapes::StructureShape.new(name: 'DescribeContainerOutput')
42
45
  Endpoint = Shapes::StringShape.new(name: 'Endpoint')
@@ -48,6 +51,8 @@ module Aws::MediaStore
48
51
  GetCorsPolicyOutput = Shapes::StructureShape.new(name: 'GetCorsPolicyOutput')
49
52
  GetLifecyclePolicyInput = Shapes::StructureShape.new(name: 'GetLifecyclePolicyInput')
50
53
  GetLifecyclePolicyOutput = Shapes::StructureShape.new(name: 'GetLifecyclePolicyOutput')
54
+ GetMetricPolicyInput = Shapes::StructureShape.new(name: 'GetMetricPolicyInput')
55
+ GetMetricPolicyOutput = Shapes::StructureShape.new(name: 'GetMetricPolicyOutput')
51
56
  Header = Shapes::StringShape.new(name: 'Header')
52
57
  InternalServerError = Shapes::StructureShape.new(name: 'InternalServerError')
53
58
  LifecyclePolicy = Shapes::StringShape.new(name: 'LifecyclePolicy')
@@ -58,6 +63,11 @@ module Aws::MediaStore
58
63
  ListTagsForResourceOutput = Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
59
64
  MaxAgeSeconds = Shapes::IntegerShape.new(name: 'MaxAgeSeconds')
60
65
  MethodName = Shapes::StringShape.new(name: 'MethodName')
66
+ MetricPolicy = Shapes::StructureShape.new(name: 'MetricPolicy')
67
+ MetricPolicyRule = Shapes::StructureShape.new(name: 'MetricPolicyRule')
68
+ MetricPolicyRules = Shapes::ListShape.new(name: 'MetricPolicyRules')
69
+ ObjectGroup = Shapes::StringShape.new(name: 'ObjectGroup')
70
+ ObjectGroupName = Shapes::StringShape.new(name: 'ObjectGroupName')
61
71
  Origin = Shapes::StringShape.new(name: 'Origin')
62
72
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
63
73
  PolicyNotFoundException = Shapes::StructureShape.new(name: 'PolicyNotFoundException')
@@ -67,6 +77,8 @@ module Aws::MediaStore
67
77
  PutCorsPolicyOutput = Shapes::StructureShape.new(name: 'PutCorsPolicyOutput')
68
78
  PutLifecyclePolicyInput = Shapes::StructureShape.new(name: 'PutLifecyclePolicyInput')
69
79
  PutLifecyclePolicyOutput = Shapes::StructureShape.new(name: 'PutLifecyclePolicyOutput')
80
+ PutMetricPolicyInput = Shapes::StructureShape.new(name: 'PutMetricPolicyInput')
81
+ PutMetricPolicyOutput = Shapes::StructureShape.new(name: 'PutMetricPolicyOutput')
70
82
  StartAccessLoggingInput = Shapes::StructureShape.new(name: 'StartAccessLoggingInput')
71
83
  StartAccessLoggingOutput = Shapes::StructureShape.new(name: 'StartAccessLoggingOutput')
72
84
  StopAccessLoggingInput = Shapes::StructureShape.new(name: 'StopAccessLoggingInput')
@@ -143,6 +155,11 @@ module Aws::MediaStore
143
155
 
144
156
  DeleteLifecyclePolicyOutput.struct_class = Types::DeleteLifecyclePolicyOutput
145
157
 
158
+ DeleteMetricPolicyInput.add_member(:container_name, Shapes::ShapeRef.new(shape: ContainerName, required: true, location_name: "ContainerName"))
159
+ DeleteMetricPolicyInput.struct_class = Types::DeleteMetricPolicyInput
160
+
161
+ DeleteMetricPolicyOutput.struct_class = Types::DeleteMetricPolicyOutput
162
+
146
163
  DescribeContainerInput.add_member(:container_name, Shapes::ShapeRef.new(shape: ContainerName, location_name: "ContainerName"))
147
164
  DescribeContainerInput.struct_class = Types::DescribeContainerInput
148
165
 
@@ -169,6 +186,12 @@ module Aws::MediaStore
169
186
  GetLifecyclePolicyOutput.add_member(:lifecycle_policy, Shapes::ShapeRef.new(shape: LifecyclePolicy, required: true, location_name: "LifecyclePolicy"))
170
187
  GetLifecyclePolicyOutput.struct_class = Types::GetLifecyclePolicyOutput
171
188
 
189
+ GetMetricPolicyInput.add_member(:container_name, Shapes::ShapeRef.new(shape: ContainerName, required: true, location_name: "ContainerName"))
190
+ GetMetricPolicyInput.struct_class = Types::GetMetricPolicyInput
191
+
192
+ GetMetricPolicyOutput.add_member(:metric_policy, Shapes::ShapeRef.new(shape: MetricPolicy, required: true, location_name: "MetricPolicy"))
193
+ GetMetricPolicyOutput.struct_class = Types::GetMetricPolicyOutput
194
+
172
195
  InternalServerError.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
173
196
  InternalServerError.struct_class = Types::InternalServerError
174
197
 
@@ -189,6 +212,16 @@ module Aws::MediaStore
189
212
  ListTagsForResourceOutput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
190
213
  ListTagsForResourceOutput.struct_class = Types::ListTagsForResourceOutput
191
214
 
215
+ MetricPolicy.add_member(:container_level_metrics, Shapes::ShapeRef.new(shape: ContainerLevelMetrics, required: true, location_name: "ContainerLevelMetrics"))
216
+ MetricPolicy.add_member(:metric_policy_rules, Shapes::ShapeRef.new(shape: MetricPolicyRules, location_name: "MetricPolicyRules"))
217
+ MetricPolicy.struct_class = Types::MetricPolicy
218
+
219
+ MetricPolicyRule.add_member(:object_group, Shapes::ShapeRef.new(shape: ObjectGroup, required: true, location_name: "ObjectGroup"))
220
+ MetricPolicyRule.add_member(:object_group_name, Shapes::ShapeRef.new(shape: ObjectGroupName, required: true, location_name: "ObjectGroupName"))
221
+ MetricPolicyRule.struct_class = Types::MetricPolicyRule
222
+
223
+ MetricPolicyRules.member = Shapes::ShapeRef.new(shape: MetricPolicyRule)
224
+
192
225
  PolicyNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
193
226
  PolicyNotFoundException.struct_class = Types::PolicyNotFoundException
194
227
 
@@ -210,6 +243,12 @@ module Aws::MediaStore
210
243
 
211
244
  PutLifecyclePolicyOutput.struct_class = Types::PutLifecyclePolicyOutput
212
245
 
246
+ PutMetricPolicyInput.add_member(:container_name, Shapes::ShapeRef.new(shape: ContainerName, required: true, location_name: "ContainerName"))
247
+ PutMetricPolicyInput.add_member(:metric_policy, Shapes::ShapeRef.new(shape: MetricPolicy, required: true, location_name: "MetricPolicy"))
248
+ PutMetricPolicyInput.struct_class = Types::PutMetricPolicyInput
249
+
250
+ PutMetricPolicyOutput.struct_class = Types::PutMetricPolicyOutput
251
+
213
252
  StartAccessLoggingInput.add_member(:container_name, Shapes::ShapeRef.new(shape: ContainerName, required: true, location_name: "ContainerName"))
214
253
  StartAccessLoggingInput.struct_class = Types::StartAccessLoggingInput
215
254
 
@@ -318,6 +357,18 @@ module Aws::MediaStore
318
357
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
319
358
  end)
320
359
 
360
+ api.add_operation(:delete_metric_policy, Seahorse::Model::Operation.new.tap do |o|
361
+ o.name = "DeleteMetricPolicy"
362
+ o.http_method = "POST"
363
+ o.http_request_uri = "/"
364
+ o.input = Shapes::ShapeRef.new(shape: DeleteMetricPolicyInput)
365
+ o.output = Shapes::ShapeRef.new(shape: DeleteMetricPolicyOutput)
366
+ o.errors << Shapes::ShapeRef.new(shape: ContainerInUseException)
367
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
368
+ o.errors << Shapes::ShapeRef.new(shape: PolicyNotFoundException)
369
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
370
+ end)
371
+
321
372
  api.add_operation(:describe_container, Seahorse::Model::Operation.new.tap do |o|
322
373
  o.name = "DescribeContainer"
323
374
  o.http_method = "POST"
@@ -364,6 +415,18 @@ module Aws::MediaStore
364
415
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
365
416
  end)
366
417
 
418
+ api.add_operation(:get_metric_policy, Seahorse::Model::Operation.new.tap do |o|
419
+ o.name = "GetMetricPolicy"
420
+ o.http_method = "POST"
421
+ o.http_request_uri = "/"
422
+ o.input = Shapes::ShapeRef.new(shape: GetMetricPolicyInput)
423
+ o.output = Shapes::ShapeRef.new(shape: GetMetricPolicyOutput)
424
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
425
+ o.errors << Shapes::ShapeRef.new(shape: PolicyNotFoundException)
426
+ o.errors << Shapes::ShapeRef.new(shape: ContainerInUseException)
427
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
428
+ end)
429
+
367
430
  api.add_operation(:list_containers, Seahorse::Model::Operation.new.tap do |o|
368
431
  o.name = "ListContainers"
369
432
  o.http_method = "POST"
@@ -423,6 +486,17 @@ module Aws::MediaStore
423
486
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
424
487
  end)
425
488
 
489
+ api.add_operation(:put_metric_policy, Seahorse::Model::Operation.new.tap do |o|
490
+ o.name = "PutMetricPolicy"
491
+ o.http_method = "POST"
492
+ o.http_request_uri = "/"
493
+ o.input = Shapes::ShapeRef.new(shape: PutMetricPolicyInput)
494
+ o.output = Shapes::ShapeRef.new(shape: PutMetricPolicyOutput)
495
+ o.errors << Shapes::ShapeRef.new(shape: ContainerInUseException)
496
+ o.errors << Shapes::ShapeRef.new(shape: ContainerNotFoundException)
497
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
498
+ end)
499
+
426
500
  api.add_operation(:start_access_logging, Seahorse::Model::Operation.new.tap do |o|
427
501
  o.name = "StartAccessLogging"
428
502
  o.http_method = "POST"
@@ -6,13 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::MediaStore
9
- # This class provides a resource oriented interface for MediaStore.
10
- # To create a resource object:
11
- # resource = Aws::MediaStore::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::MediaStore::Client.new(region: 'us-west-2')
15
- # resource = Aws::MediaStore::Resource.new(client: client)
9
+
16
10
  class Resource
17
11
 
18
12
  # @param options ({})
@@ -331,6 +331,29 @@ module Aws::MediaStore
331
331
  #
332
332
  class DeleteLifecyclePolicyOutput < Aws::EmptyStructure; end
333
333
 
334
+ # @note When making an API call, you may pass DeleteMetricPolicyInput
335
+ # data as a hash:
336
+ #
337
+ # {
338
+ # container_name: "ContainerName", # required
339
+ # }
340
+ #
341
+ # @!attribute [rw] container_name
342
+ # The name of the container that is associated with the metric policy
343
+ # that you want to delete.
344
+ # @return [String]
345
+ #
346
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/DeleteMetricPolicyInput AWS API Documentation
347
+ #
348
+ class DeleteMetricPolicyInput < Struct.new(
349
+ :container_name)
350
+ include Aws::Structure
351
+ end
352
+
353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/DeleteMetricPolicyOutput AWS API Documentation
354
+ #
355
+ class DeleteMetricPolicyOutput < Aws::EmptyStructure; end
356
+
334
357
  # @note When making an API call, you may pass DescribeContainerInput
335
358
  # data as a hash:
336
359
  #
@@ -448,6 +471,35 @@ module Aws::MediaStore
448
471
  include Aws::Structure
449
472
  end
450
473
 
474
+ # @note When making an API call, you may pass GetMetricPolicyInput
475
+ # data as a hash:
476
+ #
477
+ # {
478
+ # container_name: "ContainerName", # required
479
+ # }
480
+ #
481
+ # @!attribute [rw] container_name
482
+ # The name of the container that is associated with the metric policy.
483
+ # @return [String]
484
+ #
485
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/GetMetricPolicyInput AWS API Documentation
486
+ #
487
+ class GetMetricPolicyInput < Struct.new(
488
+ :container_name)
489
+ include Aws::Structure
490
+ end
491
+
492
+ # @!attribute [rw] metric_policy
493
+ # The metric policy that is associated with the specific container.
494
+ # @return [Types::MetricPolicy]
495
+ #
496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/GetMetricPolicyOutput AWS API Documentation
497
+ #
498
+ class GetMetricPolicyOutput < Struct.new(
499
+ :metric_policy)
500
+ include Aws::Structure
501
+ end
502
+
451
503
  # The service is temporarily unavailable.
452
504
  #
453
505
  # @!attribute [rw] message
@@ -548,6 +600,92 @@ module Aws::MediaStore
548
600
  include Aws::Structure
549
601
  end
550
602
 
603
+ # The metric policy that is associated with the container. A metric
604
+ # policy allows AWS Elemental MediaStore to send metrics to Amazon
605
+ # CloudWatch. In the policy, you must indicate whether you want
606
+ # MediaStore to send container-level metrics. You can also include rules
607
+ # to define groups of objects that you want MediaStore to send
608
+ # object-level metrics for.
609
+ #
610
+ # To view examples of how to construct a metric policy for your use
611
+ # case, see [Example Metric Policies][1].
612
+ #
613
+ #
614
+ #
615
+ # [1]: https://docs.aws.amazon.com/mediastore/latest/ug/policies-metric-examples.html
616
+ #
617
+ # @note When making an API call, you may pass MetricPolicy
618
+ # data as a hash:
619
+ #
620
+ # {
621
+ # container_level_metrics: "ENABLED", # required, accepts ENABLED, DISABLED
622
+ # metric_policy_rules: [
623
+ # {
624
+ # object_group: "ObjectGroup", # required
625
+ # object_group_name: "ObjectGroupName", # required
626
+ # },
627
+ # ],
628
+ # }
629
+ #
630
+ # @!attribute [rw] container_level_metrics
631
+ # A setting to enable or disable metrics at the container level.
632
+ # @return [String]
633
+ #
634
+ # @!attribute [rw] metric_policy_rules
635
+ # A parameter that holds an array of rules that enable metrics at the
636
+ # object level. This parameter is optional, but if you choose to
637
+ # include it, you must also include at least one rule. By default, you
638
+ # can include up to five rules. You can also [request a quota
639
+ # increase][1] to allow up to 300 rules per policy.
640
+ #
641
+ #
642
+ #
643
+ # [1]: https://console.aws.amazon.com/servicequotas/home?region=us-east-1#!/services/mediastore/quotas
644
+ # @return [Array<Types::MetricPolicyRule>]
645
+ #
646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/MetricPolicy AWS API Documentation
647
+ #
648
+ class MetricPolicy < Struct.new(
649
+ :container_level_metrics,
650
+ :metric_policy_rules)
651
+ include Aws::Structure
652
+ end
653
+
654
+ # A setting that enables metrics at the object level. Each rule contains
655
+ # an object group and an object group name. If the policy includes the
656
+ # MetricPolicyRules parameter, you must include at least one rule. Each
657
+ # metric policy can include up to five rules by default. You can also
658
+ # [request a quota increase][1] to allow up to 300 rules per policy.
659
+ #
660
+ #
661
+ #
662
+ # [1]: https://console.aws.amazon.com/servicequotas/home?region=us-east-1#!/services/mediastore/quotas
663
+ #
664
+ # @note When making an API call, you may pass MetricPolicyRule
665
+ # data as a hash:
666
+ #
667
+ # {
668
+ # object_group: "ObjectGroup", # required
669
+ # object_group_name: "ObjectGroupName", # required
670
+ # }
671
+ #
672
+ # @!attribute [rw] object_group
673
+ # A path or file name that defines which objects to include in the
674
+ # group. Wildcards (*) are acceptable.
675
+ # @return [String]
676
+ #
677
+ # @!attribute [rw] object_group_name
678
+ # A name that allows you to refer to the object group.
679
+ # @return [String]
680
+ #
681
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/MetricPolicyRule AWS API Documentation
682
+ #
683
+ class MetricPolicyRule < Struct.new(
684
+ :object_group,
685
+ :object_group_name)
686
+ include Aws::Structure
687
+ end
688
+
551
689
  # The policy that you specified in the request does not exist.
552
690
  #
553
691
  # @!attribute [rw] message
@@ -659,6 +797,58 @@ module Aws::MediaStore
659
797
  #
660
798
  class PutLifecyclePolicyOutput < Aws::EmptyStructure; end
661
799
 
800
+ # @note When making an API call, you may pass PutMetricPolicyInput
801
+ # data as a hash:
802
+ #
803
+ # {
804
+ # container_name: "ContainerName", # required
805
+ # metric_policy: { # required
806
+ # container_level_metrics: "ENABLED", # required, accepts ENABLED, DISABLED
807
+ # metric_policy_rules: [
808
+ # {
809
+ # object_group: "ObjectGroup", # required
810
+ # object_group_name: "ObjectGroupName", # required
811
+ # },
812
+ # ],
813
+ # },
814
+ # }
815
+ #
816
+ # @!attribute [rw] container_name
817
+ # The name of the container that you want to add the metric policy to.
818
+ # @return [String]
819
+ #
820
+ # @!attribute [rw] metric_policy
821
+ # The metric policy that you want to associate with the container. In
822
+ # the policy, you must indicate whether you want MediaStore to send
823
+ # container-level metrics. You can also include up to five rules to
824
+ # define groups of objects that you want MediaStore to send
825
+ # object-level metrics for. If you include rules in the policy,
826
+ # construct each rule with both of the following:
827
+ #
828
+ # * An object group that defines which objects to include in the
829
+ # group. The definition can be a path or a file name, but it can't
830
+ # have more than 900 characters. Valid characters are: a-z, A-Z,
831
+ # 0-9, \_ (underscore), = (equal), : (colon), . (period), -
832
+ # (hyphen), ~ (tilde), / (forward slash), and * (asterisk).
833
+ # Wildcards (*) are acceptable.
834
+ #
835
+ # * An object group name that allows you to refer to the object group.
836
+ # The name can't have more than 30 characters. Valid characters
837
+ # are: a-z, A-Z, 0-9, and \_ (underscore).
838
+ # @return [Types::MetricPolicy]
839
+ #
840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/PutMetricPolicyInput AWS API Documentation
841
+ #
842
+ class PutMetricPolicyInput < Struct.new(
843
+ :container_name,
844
+ :metric_policy)
845
+ include Aws::Structure
846
+ end
847
+
848
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediastore-2017-09-01/PutMetricPolicyOutput AWS API Documentation
849
+ #
850
+ class PutMetricPolicyOutput < Aws::EmptyStructure; end
851
+
662
852
  # @note When making an API call, you may pass StartAccessLoggingInput
663
853
  # data as a hash:
664
854
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-mediastore
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.22.0
4
+ version: 1.23.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-09 00:00:00.000000000 Z
11
+ date: 2020-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core