aws-sdk-mediastore 1.22.0 → 1.23.0

Sign up to get free protection for your applications and to get access to all the features.
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