aws-sdk-storagegateway 1.46.0 → 1.47.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
  SHA256:
3
- metadata.gz: e5452ac7c5cce3a5dcf0d3866e5c2e7d5fdb1654a6435eb09505719e75711534
4
- data.tar.gz: 91efd758f193453d3f8763a69f3eed14690c7355e848bc8ac41312e8c1e6d2f0
3
+ metadata.gz: 1ad78eee66ee3ffcd55e69eed29c73d23c0ace6d1d7d8349c42d89470ebb6a4f
4
+ data.tar.gz: cf7b2b3b56f11375dd9fc74ee40855d81f7ec299f615df0346da88d6b1ae192c
5
5
  SHA512:
6
- metadata.gz: a650389936a346f485a3452c4ab860f7c43bcfa4010618c216b0edbcffe6808b47c36a5ec3eb6f988bde31c33f8647b8ec62b9213d197db23632cfc627e93e0c
7
- data.tar.gz: 4ce5841e603d6915577f9af0c7c72fa9aa48c514535c26007bf1cb9a7a255d426c82e39db90ed607a96020b0bae83af564e9b1824dc7be9c3fc6e3396cd13832
6
+ metadata.gz: db52d9da9c84e28ba2349b9c34f9483ece3861ce600418022e9875054a171991f38280a686b3f20d38be11f476a9150d6f6b10b4ef78fa501e01804fe9c661fe
7
+ data.tar.gz: ac06897cf67cd637281e04e99e24d7df6df687e968e1a31ccb864d4aa39fdb95ad62cb0abab18eb35037ea919d02048b5ba83c7dc6958fc8d0602fa151028797
@@ -47,6 +47,6 @@ require_relative 'aws-sdk-storagegateway/customizations'
47
47
  # @service
48
48
  module Aws::StorageGateway
49
49
 
50
- GEM_VERSION = '1.46.0'
50
+ GEM_VERSION = '1.47.0'
51
51
 
52
52
  end
@@ -394,7 +394,7 @@ module Aws::StorageGateway
394
394
  # The value that indicates the type of medium changer to use for tape
395
395
  # gateway. This field is optional.
396
396
  #
397
- # Valid Values: `STK-L700` \| `AWS-Gateway-VTL`
397
+ # Valid Values: `STK-L700` \| `AWS-Gateway-VTL` \| `IBM-03584L32-0402`
398
398
  #
399
399
  # @option params [Array<Types::Tag>] :tags
400
400
  # A list of up to 50 tags that you can assign to the gateway. Each tag
@@ -759,6 +759,16 @@ module Aws::StorageGateway
759
759
  #
760
760
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
761
761
  #
762
+ # @option params [Boolean] :bypass_governance_retention
763
+ # Set permissions to bypass governance retention. If the lock type of
764
+ # the archived tape is `Governance`, the tape's archived age is not
765
+ # older than `RetentionLockInDays`, and the user does not already have
766
+ # `BypassGovernanceRetention`, setting this to TRUE enables the user to
767
+ # bypass the retention lock. This parameter is set to true by default
768
+ # for calls from the console.
769
+ #
770
+ # Valid values: `TRUE` \| `FALSE`
771
+ #
762
772
  # @return [Types::AssignTapePoolOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
763
773
  #
764
774
  # * {Types::AssignTapePoolOutput#tape_arn #tape_arn} => String
@@ -768,6 +778,7 @@ module Aws::StorageGateway
768
778
  # resp = client.assign_tape_pool({
769
779
  # tape_arn: "TapeARN", # required
770
780
  # pool_id: "PoolId", # required
781
+ # bypass_governance_retention: false,
771
782
  # })
772
783
  #
773
784
  # @example Response structure
@@ -1291,7 +1302,7 @@ module Aws::StorageGateway
1291
1302
 
1292
1303
  # Creates a Server Message Block (SMB) file share on an existing file
1293
1304
  # gateway. In Storage Gateway, a file share is a file system mount point
1294
- # backed by Amazon S3 cloud storage. Storage Gateway expose file shares
1305
+ # backed by Amazon S3 cloud storage. Storage Gateway exposes file shares
1295
1306
  # using an SMB interface. This operation is only supported for file
1296
1307
  # gateways.
1297
1308
  #
@@ -1511,14 +1522,14 @@ module Aws::StorageGateway
1511
1522
  # durable off-site recovery, as well as import the data to an Amazon
1512
1523
  # Elastic Block Store (EBS) volume in Amazon Elastic Compute Cloud
1513
1524
  # (EC2). You can take snapshots of your gateway volume on a scheduled or
1514
- # ad hoc basis. This API enables you to take ad-hoc snapshot. For more
1515
- # information, see [Editing a snapshot schedule][1].
1525
+ # ad hoc basis. This API enables you to take an ad hoc snapshot. For
1526
+ # more information, see [Editing a snapshot schedule][1].
1516
1527
  #
1517
- # In the CreateSnapshot request you identify the volume by providing its
1518
- # Amazon Resource Name (ARN). You must also provide description for the
1519
- # snapshot. When AWS Storage Gateway takes the snapshot of specified
1528
+ # In the `CreateSnapshot` request, you identify the volume by providing
1529
+ # its Amazon Resource Name (ARN). You must also provide description for
1530
+ # the snapshot. When AWS Storage Gateway takes the snapshot of specified
1520
1531
  # volume, the snapshot and description appears in the AWS Storage
1521
- # Gateway Console. In response, AWS Storage Gateway returns you a
1532
+ # Gateway console. In response, AWS Storage Gateway returns you a
1522
1533
  # snapshot ID. You can use this snapshot ID to check the snapshot
1523
1534
  # progress or later use it when you want to create a volume from a
1524
1535
  # snapshot. This operation is only supported in stored and cached volume
@@ -1719,7 +1730,7 @@ module Aws::StorageGateway
1719
1730
  # create an empty gateway volume, then any existing data on the disk is
1720
1731
  # erased.
1721
1732
  #
1722
- # In the request you must specify the gateway and the disk information
1733
+ # In the request, you must specify the gateway and the disk information
1723
1734
  # on which you are creating the volume. In response, the gateway creates
1724
1735
  # the volume and returns volume information such as the volume Amazon
1725
1736
  # Resource Name (ARN), its size, and the iSCSI target ARN that
@@ -1858,9 +1869,75 @@ module Aws::StorageGateway
1858
1869
  req.send_request(options)
1859
1870
  end
1860
1871
 
1872
+ # Creates a new custom tape pool. You can use custom tape pool to enable
1873
+ # tape retention lock on tapes that are archived in the custom pool.
1874
+ #
1875
+ # @option params [required, String] :pool_name
1876
+ # The name of the new custom tape pool.
1877
+ #
1878
+ # @option params [required, String] :storage_class
1879
+ # The storage class that is associated with the new custom pool. When
1880
+ # you use your backup application to eject the tape, the tape is
1881
+ # archived directly into the storage class (S3 Glacier or S3 Glacier
1882
+ # Deep Archive) that corresponds to the pool.
1883
+ #
1884
+ # @option params [String] :retention_lock_type
1885
+ # Tape retention lock can be configured in two modes. When configured in
1886
+ # governance mode, AWS accounts with specific IAM permissions are
1887
+ # authorized to remove the tape retention lock from archived virtual
1888
+ # tapes. When configured in compliance mode, the tape retention lock
1889
+ # cannot be removed by any user, including the root AWS account.
1890
+ #
1891
+ # @option params [Integer] :retention_lock_time_in_days
1892
+ # Tape retention lock time is set in days. Tape retention lock can be
1893
+ # enabled for up to 100 years (36,500 days).
1894
+ #
1895
+ # @option params [Array<Types::Tag>] :tags
1896
+ # A list of up to 50 tags that can be assigned to tape pool. Each tag is
1897
+ # a key-value pair.
1898
+ #
1899
+ # <note markdown="1"> Valid characters for key and value are letters, spaces, and numbers
1900
+ # representable in UTF-8 format, and the following special characters: +
1901
+ # - = . \_ : / @. The maximum length of a tag's key is 128 characters,
1902
+ # and the maximum length for a tag's value is 256.
1903
+ #
1904
+ # </note>
1905
+ #
1906
+ # @return [Types::CreateTapePoolOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1907
+ #
1908
+ # * {Types::CreateTapePoolOutput#pool_arn #pool_arn} => String
1909
+ #
1910
+ # @example Request syntax with placeholder values
1911
+ #
1912
+ # resp = client.create_tape_pool({
1913
+ # pool_name: "PoolName", # required
1914
+ # storage_class: "DEEP_ARCHIVE", # required, accepts DEEP_ARCHIVE, GLACIER
1915
+ # retention_lock_type: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE, NONE
1916
+ # retention_lock_time_in_days: 1,
1917
+ # tags: [
1918
+ # {
1919
+ # key: "TagKey", # required
1920
+ # value: "TagValue", # required
1921
+ # },
1922
+ # ],
1923
+ # })
1924
+ #
1925
+ # @example Response structure
1926
+ #
1927
+ # resp.pool_arn #=> String
1928
+ #
1929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapePool AWS API Documentation
1930
+ #
1931
+ # @overload create_tape_pool(params = {})
1932
+ # @param [Hash] params ({})
1933
+ def create_tape_pool(params = {}, options = {})
1934
+ req = build_request(:create_tape_pool, params)
1935
+ req.send_request(options)
1936
+ end
1937
+
1861
1938
  # Creates a virtual tape by using your own barcode. You write data to
1862
1939
  # the virtual tape and then archive the tape. A barcode is unique and
1863
- # can not be reused if it has already been used on a tape. This applies
1940
+ # cannot be reused if it has already been used on a tape. This applies
1864
1941
  # to barcodes used on deleted tapes. This operation is only supported in
1865
1942
  # the tape gateway type.
1866
1943
  #
@@ -1911,6 +1988,10 @@ module Aws::StorageGateway
1911
1988
  #
1912
1989
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
1913
1990
  #
1991
+ # @option params [Boolean] :worm
1992
+ # Set to `TRUE` if the tape you are creating is to be configured as a
1993
+ # write-once-read-many (WORM) tape.
1994
+ #
1914
1995
  # @option params [Array<Types::Tag>] :tags
1915
1996
  # A list of up to 50 tags that can be assigned to a virtual tape that
1916
1997
  # has a barcode. Each tag is a key-value pair.
@@ -1951,6 +2032,7 @@ module Aws::StorageGateway
1951
2032
  # kms_encrypted: false,
1952
2033
  # kms_key: "KMSKey",
1953
2034
  # pool_id: "PoolId",
2035
+ # worm: false,
1954
2036
  # tags: [
1955
2037
  # {
1956
2038
  # key: "TagKey", # required
@@ -2037,6 +2119,10 @@ module Aws::StorageGateway
2037
2119
  #
2038
2120
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
2039
2121
  #
2122
+ # @option params [Boolean] :worm
2123
+ # Set to `TRUE` if the tape you are creating is to be configured as a
2124
+ # write-once-read-many (WORM) tape.
2125
+ #
2040
2126
  # @option params [Array<Types::Tag>] :tags
2041
2127
  # A list of up to 50 tags that can be assigned to a virtual tape. Each
2042
2128
  # tag is a key-value pair.
@@ -2085,6 +2171,7 @@ module Aws::StorageGateway
2085
2171
  # kms_encrypted: false,
2086
2172
  # kms_key: "KMSKey",
2087
2173
  # pool_id: "PoolId",
2174
+ # worm: false,
2088
2175
  # tags: [
2089
2176
  # {
2090
2177
  # key: "TagKey", # required
@@ -2156,7 +2243,7 @@ module Aws::StorageGateway
2156
2243
  # One of the BandwidthType values that indicates the gateway bandwidth
2157
2244
  # rate limit to delete.
2158
2245
  #
2159
- # Valid Values: `Upload` \| `Download` \| `All`
2246
+ # Valid Values: `UPLOAD` \| `DOWNLOAD` \| `ALL`
2160
2247
  #
2161
2248
  # @return [Types::DeleteBandwidthRateLimitOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2162
2249
  #
@@ -2373,7 +2460,7 @@ module Aws::StorageGateway
2373
2460
  #
2374
2461
  #
2375
2462
  #
2376
- # [1]: https://docs.aws.amazon.com/storagegatewaylatest/userguide/backing-up-volumes.html
2463
+ # [1]: https://docs.aws.amazon.com/storagegateway/latest/userguide/backing-up-volumes.html
2377
2464
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSnapshots.html
2378
2465
  #
2379
2466
  # @option params [required, String] :volume_arn
@@ -2427,6 +2514,12 @@ module Aws::StorageGateway
2427
2514
  # @option params [required, String] :tape_arn
2428
2515
  # The Amazon Resource Name (ARN) of the virtual tape to delete.
2429
2516
  #
2517
+ # @option params [Boolean] :bypass_governance_retention
2518
+ # Set to `TRUE` to delete an archived tape that belongs to a custom pool
2519
+ # with tape retention lock. Only archived tapes with tape retention lock
2520
+ # set to `governance` can be deleted. Archived tapes with tape retention
2521
+ # lock set to `compliance` can't be deleted.
2522
+ #
2430
2523
  # @return [Types::DeleteTapeOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2431
2524
  #
2432
2525
  # * {Types::DeleteTapeOutput#tape_arn #tape_arn} => String
@@ -2451,6 +2544,7 @@ module Aws::StorageGateway
2451
2544
  # resp = client.delete_tape({
2452
2545
  # gateway_arn: "GatewayARN", # required
2453
2546
  # tape_arn: "TapeARN", # required
2547
+ # bypass_governance_retention: false,
2454
2548
  # })
2455
2549
  #
2456
2550
  # @example Response structure
@@ -2473,6 +2567,12 @@ module Aws::StorageGateway
2473
2567
  # The Amazon Resource Name (ARN) of the virtual tape to delete from the
2474
2568
  # virtual tape shelf (VTS).
2475
2569
  #
2570
+ # @option params [Boolean] :bypass_governance_retention
2571
+ # Set to `TRUE` to delete an archived tape that belongs to a custom pool
2572
+ # with tape retention lock. Only archived tapes with tape retention lock
2573
+ # set to `governance` can be deleted. Archived tapes with tape retention
2574
+ # lock set to `compliance` can't be deleted.
2575
+ #
2476
2576
  # @return [Types::DeleteTapeArchiveOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2477
2577
  #
2478
2578
  # * {Types::DeleteTapeArchiveOutput#tape_arn #tape_arn} => String
@@ -2495,6 +2595,7 @@ module Aws::StorageGateway
2495
2595
  #
2496
2596
  # resp = client.delete_tape_archive({
2497
2597
  # tape_arn: "TapeARN", # required
2598
+ # bypass_governance_retention: false,
2498
2599
  # })
2499
2600
  #
2500
2601
  # @example Response structure
@@ -2510,6 +2611,36 @@ module Aws::StorageGateway
2510
2611
  req.send_request(options)
2511
2612
  end
2512
2613
 
2614
+ # Delete a custom tape pool. A custom tape pool can only be deleted if
2615
+ # there are no tapes in the pool and if there are no automatic tape
2616
+ # creation policies that reference the custom tape pool.
2617
+ #
2618
+ # @option params [required, String] :pool_arn
2619
+ # The Amazon Resource Name (ARN) of the custom tape pool to delete.
2620
+ #
2621
+ # @return [Types::DeleteTapePoolOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2622
+ #
2623
+ # * {Types::DeleteTapePoolOutput#pool_arn #pool_arn} => String
2624
+ #
2625
+ # @example Request syntax with placeholder values
2626
+ #
2627
+ # resp = client.delete_tape_pool({
2628
+ # pool_arn: "PoolARN", # required
2629
+ # })
2630
+ #
2631
+ # @example Response structure
2632
+ #
2633
+ # resp.pool_arn #=> String
2634
+ #
2635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapePool AWS API Documentation
2636
+ #
2637
+ # @overload delete_tape_pool(params = {})
2638
+ # @param [Hash] params ({})
2639
+ def delete_tape_pool(params = {}, options = {})
2640
+ req = build_request(:delete_tape_pool, params)
2641
+ req.send_request(options)
2642
+ end
2643
+
2513
2644
  # Deletes the specified storage volume that you previously created using
2514
2645
  # the CreateCachediSCSIVolume or CreateStorediSCSIVolume API. This
2515
2646
  # operation is only supported in the cached volume and stored volume
@@ -2613,7 +2744,7 @@ module Aws::StorageGateway
2613
2744
  # Returns the bandwidth rate limits of a gateway. By default, these
2614
2745
  # limits are not set, which means no bandwidth rate limiting is in
2615
2746
  # effect. This operation is supported for the stored volume, cached
2616
- # volume and tape gateway types.
2747
+ # volume, and tape gateway types.
2617
2748
  #
2618
2749
  # This operation only returns a value for a bandwidth rate limit only if
2619
2750
  # the limit is set. If no limits are set for the gateway, then this
@@ -3430,6 +3561,9 @@ module Aws::StorageGateway
3430
3561
  # resp.tape_archives[0].tape_used_in_bytes #=> Integer
3431
3562
  # resp.tape_archives[0].kms_key #=> String
3432
3563
  # resp.tape_archives[0].pool_id #=> String
3564
+ # resp.tape_archives[0].worm #=> Boolean
3565
+ # resp.tape_archives[0].retention_start_date #=> Time
3566
+ # resp.tape_archives[0].pool_entry_date #=> Time
3433
3567
  # resp.marker #=> String
3434
3568
  #
3435
3569
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapeArchives AWS API Documentation
@@ -3618,6 +3752,9 @@ module Aws::StorageGateway
3618
3752
  # resp.tapes[0].tape_used_in_bytes #=> Integer
3619
3753
  # resp.tapes[0].kms_key #=> String
3620
3754
  # resp.tapes[0].pool_id #=> String
3755
+ # resp.tapes[0].worm #=> Boolean
3756
+ # resp.tapes[0].retention_start_date #=> Time
3757
+ # resp.tapes[0].pool_entry_date #=> Time
3621
3758
  # resp.marker #=> String
3622
3759
  #
3623
3760
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeTapes AWS API Documentation
@@ -4103,6 +4240,7 @@ module Aws::StorageGateway
4103
4240
  # resp.automatic_tape_creation_policy_infos[0].automatic_tape_creation_rules[0].pool_id #=> String
4104
4241
  # resp.automatic_tape_creation_policy_infos[0].automatic_tape_creation_rules[0].tape_size_in_bytes #=> Integer
4105
4242
  # resp.automatic_tape_creation_policy_infos[0].automatic_tape_creation_rules[0].minimum_num_tapes #=> Integer
4243
+ # resp.automatic_tape_creation_policy_infos[0].automatic_tape_creation_rules[0].worm #=> Boolean
4106
4244
  # resp.automatic_tape_creation_policy_infos[0].gateway_arn #=> String
4107
4245
  #
4108
4246
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ListAutomaticTapeCreationPolicies AWS API Documentation
@@ -4404,6 +4542,63 @@ module Aws::StorageGateway
4404
4542
  req.send_request(options)
4405
4543
  end
4406
4544
 
4545
+ # Lists custom tape pools. You specify custom tape pools to list by
4546
+ # specifying one or more custom tape pool Amazon Resource Names (ARNs).
4547
+ # If you don't specify a custom tape pool ARN, the operation lists all
4548
+ # custom tape pools.
4549
+ #
4550
+ # This operation supports pagination. You can optionally specify the
4551
+ # `Limit` parameter in the body to limit the number of tape pools in the
4552
+ # response. If the number of tape pools returned in the response is
4553
+ # truncated, the response includes a `Marker` element that you can use
4554
+ # in your subsequent request to retrieve the next set of tape pools.
4555
+ #
4556
+ # @option params [Array<String>] :pool_arns
4557
+ # The Amazon Resource Name (ARN) of each of the custom tape pools you
4558
+ # want to list. If you don't specify a custom tape pool ARN, the
4559
+ # response lists all custom tape pools.
4560
+ #
4561
+ # @option params [String] :marker
4562
+ # A string that indicates the position at which to begin the returned
4563
+ # list of tape pools.
4564
+ #
4565
+ # @option params [Integer] :limit
4566
+ # An optional number limit for the tape pools in the list returned by
4567
+ # this call.
4568
+ #
4569
+ # @return [Types::ListTapePoolsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4570
+ #
4571
+ # * {Types::ListTapePoolsOutput#pool_infos #pool_infos} => Array&lt;Types::PoolInfo&gt;
4572
+ # * {Types::ListTapePoolsOutput#marker #marker} => String
4573
+ #
4574
+ # @example Request syntax with placeholder values
4575
+ #
4576
+ # resp = client.list_tape_pools({
4577
+ # pool_arns: ["PoolARN"],
4578
+ # marker: "Marker",
4579
+ # limit: 1,
4580
+ # })
4581
+ #
4582
+ # @example Response structure
4583
+ #
4584
+ # resp.pool_infos #=> Array
4585
+ # resp.pool_infos[0].pool_arn #=> String
4586
+ # resp.pool_infos[0].pool_name #=> String
4587
+ # resp.pool_infos[0].storage_class #=> String, one of "DEEP_ARCHIVE", "GLACIER"
4588
+ # resp.pool_infos[0].retention_lock_type #=> String, one of "COMPLIANCE", "GOVERNANCE", "NONE"
4589
+ # resp.pool_infos[0].retention_lock_time_in_days #=> Integer
4590
+ # resp.pool_infos[0].pool_status #=> String, one of "ACTIVE", "DELETED"
4591
+ # resp.marker #=> String
4592
+ #
4593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ListTapePools AWS API Documentation
4594
+ #
4595
+ # @overload list_tape_pools(params = {})
4596
+ # @param [Hash] params ({})
4597
+ def list_tape_pools(params = {}, options = {})
4598
+ req = build_request(:list_tape_pools, params)
4599
+ req.send_request(options)
4600
+ end
4601
+
4407
4602
  # Lists virtual tapes in your virtual tape library (VTL) and your
4408
4603
  # virtual tape shelf (VTS). You specify the tapes to list by specifying
4409
4604
  # one or more tape Amazon Resource Names (ARNs). If you don't specify a
@@ -4455,6 +4650,8 @@ module Aws::StorageGateway
4455
4650
  # resp.tape_infos[0].tape_status #=> String
4456
4651
  # resp.tape_infos[0].gateway_arn #=> String
4457
4652
  # resp.tape_infos[0].pool_id #=> String
4653
+ # resp.tape_infos[0].retention_start_date #=> Time
4654
+ # resp.tape_infos[0].pool_entry_date #=> Time
4458
4655
  # resp.marker #=> String
4459
4656
  #
4460
4657
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ListTapes AWS API Documentation
@@ -5322,6 +5519,7 @@ module Aws::StorageGateway
5322
5519
  # pool_id: "PoolId", # required
5323
5520
  # tape_size_in_bytes: 1, # required
5324
5521
  # minimum_num_tapes: 1, # required
5522
+ # worm: false,
5325
5523
  # },
5326
5524
  # ],
5327
5525
  # gateway_arn: "GatewayARN", # required
@@ -5492,7 +5690,7 @@ module Aws::StorageGateway
5492
5690
  # time zone. To specify which gateway to update, use the Amazon Resource
5493
5691
  # Name (ARN) of the gateway in your request.
5494
5692
  #
5495
- # <note markdown="1"> For Gateways activated after September 2, 2015, the gateway's ARN
5693
+ # <note markdown="1"> For gateways activated after September 2, 2015, the gateway's ARN
5496
5694
  # contains the gateway ID rather than the gateway name. However,
5497
5695
  # changing the name of the gateway has no effect on the gateway's ARN.
5498
5696
  #
@@ -5513,7 +5711,7 @@ module Aws::StorageGateway
5513
5711
  # The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that
5514
5712
  # you want to use to monitor and log events in the gateway.
5515
5713
  #
5516
- # For more information, see [What is Amazon CloudWatch logs?][1].
5714
+ # For more information, see [What is Amazon CloudWatch Logs?][1]
5517
5715
  #
5518
5716
  #
5519
5717
  #
@@ -6189,7 +6387,7 @@ module Aws::StorageGateway
6189
6387
  # @option params [required, String] :device_type
6190
6388
  # The type of medium changer you want to select.
6191
6389
  #
6192
- # Valid Values: `STK-L700` \| `AWS-Gateway-VTL`
6390
+ # Valid Values: `STK-L700` \| `AWS-Gateway-VTL` \| `IBM-03584L32-0402`
6193
6391
  #
6194
6392
  # @return [Types::UpdateVTLDeviceTypeOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6195
6393
  #
@@ -6243,7 +6441,7 @@ module Aws::StorageGateway
6243
6441
  params: params,
6244
6442
  config: config)
6245
6443
  context[:gem_name] = 'aws-sdk-storagegateway'
6246
- context[:gem_version] = '1.46.0'
6444
+ context[:gem_version] = '1.47.0'
6247
6445
  Seahorse::Client::Request.new(handlers, context)
6248
6446
  end
6249
6447
 
@@ -66,6 +66,8 @@ module Aws::StorageGateway
66
66
  CreateSnapshotOutput = Shapes::StructureShape.new(name: 'CreateSnapshotOutput')
67
67
  CreateStorediSCSIVolumeInput = Shapes::StructureShape.new(name: 'CreateStorediSCSIVolumeInput')
68
68
  CreateStorediSCSIVolumeOutput = Shapes::StructureShape.new(name: 'CreateStorediSCSIVolumeOutput')
69
+ CreateTapePoolInput = Shapes::StructureShape.new(name: 'CreateTapePoolInput')
70
+ CreateTapePoolOutput = Shapes::StructureShape.new(name: 'CreateTapePoolOutput')
69
71
  CreateTapeWithBarcodeInput = Shapes::StructureShape.new(name: 'CreateTapeWithBarcodeInput')
70
72
  CreateTapeWithBarcodeOutput = Shapes::StructureShape.new(name: 'CreateTapeWithBarcodeOutput')
71
73
  CreateTapesInput = Shapes::StructureShape.new(name: 'CreateTapesInput')
@@ -89,6 +91,8 @@ module Aws::StorageGateway
89
91
  DeleteTapeArchiveOutput = Shapes::StructureShape.new(name: 'DeleteTapeArchiveOutput')
90
92
  DeleteTapeInput = Shapes::StructureShape.new(name: 'DeleteTapeInput')
91
93
  DeleteTapeOutput = Shapes::StructureShape.new(name: 'DeleteTapeOutput')
94
+ DeleteTapePoolInput = Shapes::StructureShape.new(name: 'DeleteTapePoolInput')
95
+ DeleteTapePoolOutput = Shapes::StructureShape.new(name: 'DeleteTapePoolOutput')
92
96
  DeleteVolumeInput = Shapes::StructureShape.new(name: 'DeleteVolumeInput')
93
97
  DeleteVolumeOutput = Shapes::StructureShape.new(name: 'DeleteVolumeOutput')
94
98
  DeprecationDate = Shapes::StringShape.new(name: 'DeprecationDate')
@@ -197,6 +201,8 @@ module Aws::StorageGateway
197
201
  ListLocalDisksOutput = Shapes::StructureShape.new(name: 'ListLocalDisksOutput')
198
202
  ListTagsForResourceInput = Shapes::StructureShape.new(name: 'ListTagsForResourceInput')
199
203
  ListTagsForResourceOutput = Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
204
+ ListTapePoolsInput = Shapes::StructureShape.new(name: 'ListTapePoolsInput')
205
+ ListTapePoolsOutput = Shapes::StructureShape.new(name: 'ListTapePoolsOutput')
200
206
  ListTapesInput = Shapes::StructureShape.new(name: 'ListTapesInput')
201
207
  ListTapesOutput = Shapes::StructureShape.new(name: 'ListTapesOutput')
202
208
  ListVolumeInitiatorsInput = Shapes::StructureShape.new(name: 'ListVolumeInitiatorsInput')
@@ -226,7 +232,13 @@ module Aws::StorageGateway
226
232
  Path = Shapes::StringShape.new(name: 'Path')
227
233
  PermissionId = Shapes::IntegerShape.new(name: 'PermissionId')
228
234
  PermissionMode = Shapes::StringShape.new(name: 'PermissionMode')
235
+ PoolARN = Shapes::StringShape.new(name: 'PoolARN')
236
+ PoolARNs = Shapes::ListShape.new(name: 'PoolARNs')
229
237
  PoolId = Shapes::StringShape.new(name: 'PoolId')
238
+ PoolInfo = Shapes::StructureShape.new(name: 'PoolInfo')
239
+ PoolInfos = Shapes::ListShape.new(name: 'PoolInfos')
240
+ PoolName = Shapes::StringShape.new(name: 'PoolName')
241
+ PoolStatus = Shapes::StringShape.new(name: 'PoolStatus')
230
242
  PositiveIntObject = Shapes::IntegerShape.new(name: 'PositiveIntObject')
231
243
  RecurrenceInHours = Shapes::IntegerShape.new(name: 'RecurrenceInHours')
232
244
  RefreshCacheInput = Shapes::StructureShape.new(name: 'RefreshCacheInput')
@@ -237,6 +249,8 @@ module Aws::StorageGateway
237
249
  ResetCacheInput = Shapes::StructureShape.new(name: 'ResetCacheInput')
238
250
  ResetCacheOutput = Shapes::StructureShape.new(name: 'ResetCacheOutput')
239
251
  ResourceARN = Shapes::StringShape.new(name: 'ResourceARN')
252
+ RetentionLockTimeInDays = Shapes::IntegerShape.new(name: 'RetentionLockTimeInDays')
253
+ RetentionLockType = Shapes::StringShape.new(name: 'RetentionLockType')
240
254
  RetrieveTapeArchiveInput = Shapes::StructureShape.new(name: 'RetrieveTapeArchiveInput')
241
255
  RetrieveTapeArchiveOutput = Shapes::StructureShape.new(name: 'RetrieveTapeArchiveOutput')
242
256
  RetrieveTapeRecoveryPointInput = Shapes::StructureShape.new(name: 'RetrieveTapeRecoveryPointInput')
@@ -286,6 +300,7 @@ module Aws::StorageGateway
286
300
  TapeRecoveryPointStatus = Shapes::StringShape.new(name: 'TapeRecoveryPointStatus')
287
301
  TapeSize = Shapes::IntegerShape.new(name: 'TapeSize')
288
302
  TapeStatus = Shapes::StringShape.new(name: 'TapeStatus')
303
+ TapeStorageClass = Shapes::StringShape.new(name: 'TapeStorageClass')
289
304
  TapeUsage = Shapes::IntegerShape.new(name: 'TapeUsage')
290
305
  Tapes = Shapes::ListShape.new(name: 'Tapes')
291
306
  TargetARN = Shapes::StringShape.new(name: 'TargetARN')
@@ -383,6 +398,7 @@ module Aws::StorageGateway
383
398
 
384
399
  AssignTapePoolInput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, required: true, location_name: "TapeARN"))
385
400
  AssignTapePoolInput.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, required: true, location_name: "PoolId"))
401
+ AssignTapePoolInput.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: boolean, location_name: "BypassGovernanceRetention"))
386
402
  AssignTapePoolInput.struct_class = Types::AssignTapePoolInput
387
403
 
388
404
  AssignTapePoolOutput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, location_name: "TapeARN"))
@@ -409,6 +425,7 @@ module Aws::StorageGateway
409
425
  AutomaticTapeCreationRule.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, required: true, location_name: "PoolId"))
410
426
  AutomaticTapeCreationRule.add_member(:tape_size_in_bytes, Shapes::ShapeRef.new(shape: TapeSize, required: true, location_name: "TapeSizeInBytes"))
411
427
  AutomaticTapeCreationRule.add_member(:minimum_num_tapes, Shapes::ShapeRef.new(shape: MinimumNumTapes, required: true, location_name: "MinimumNumTapes"))
428
+ AutomaticTapeCreationRule.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
412
429
  AutomaticTapeCreationRule.struct_class = Types::AutomaticTapeCreationRule
413
430
 
414
431
  AutomaticTapeCreationRules.member = Shapes::ShapeRef.new(shape: AutomaticTapeCreationRule)
@@ -554,12 +571,23 @@ module Aws::StorageGateway
554
571
  CreateStorediSCSIVolumeOutput.add_member(:target_arn, Shapes::ShapeRef.new(shape: TargetARN, location_name: "TargetARN"))
555
572
  CreateStorediSCSIVolumeOutput.struct_class = Types::CreateStorediSCSIVolumeOutput
556
573
 
574
+ CreateTapePoolInput.add_member(:pool_name, Shapes::ShapeRef.new(shape: PoolName, required: true, location_name: "PoolName"))
575
+ CreateTapePoolInput.add_member(:storage_class, Shapes::ShapeRef.new(shape: TapeStorageClass, required: true, location_name: "StorageClass"))
576
+ CreateTapePoolInput.add_member(:retention_lock_type, Shapes::ShapeRef.new(shape: RetentionLockType, location_name: "RetentionLockType"))
577
+ CreateTapePoolInput.add_member(:retention_lock_time_in_days, Shapes::ShapeRef.new(shape: RetentionLockTimeInDays, location_name: "RetentionLockTimeInDays"))
578
+ CreateTapePoolInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
579
+ CreateTapePoolInput.struct_class = Types::CreateTapePoolInput
580
+
581
+ CreateTapePoolOutput.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, location_name: "PoolARN"))
582
+ CreateTapePoolOutput.struct_class = Types::CreateTapePoolOutput
583
+
557
584
  CreateTapeWithBarcodeInput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, required: true, location_name: "GatewayARN"))
558
585
  CreateTapeWithBarcodeInput.add_member(:tape_size_in_bytes, Shapes::ShapeRef.new(shape: TapeSize, required: true, location_name: "TapeSizeInBytes"))
559
586
  CreateTapeWithBarcodeInput.add_member(:tape_barcode, Shapes::ShapeRef.new(shape: TapeBarcode, required: true, location_name: "TapeBarcode"))
560
587
  CreateTapeWithBarcodeInput.add_member(:kms_encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "KMSEncrypted"))
561
588
  CreateTapeWithBarcodeInput.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
562
589
  CreateTapeWithBarcodeInput.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
590
+ CreateTapeWithBarcodeInput.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
563
591
  CreateTapeWithBarcodeInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
564
592
  CreateTapeWithBarcodeInput.struct_class = Types::CreateTapeWithBarcodeInput
565
593
 
@@ -574,6 +602,7 @@ module Aws::StorageGateway
574
602
  CreateTapesInput.add_member(:kms_encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "KMSEncrypted"))
575
603
  CreateTapesInput.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
576
604
  CreateTapesInput.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
605
+ CreateTapesInput.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
577
606
  CreateTapesInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
578
607
  CreateTapesInput.struct_class = Types::CreateTapesInput
579
608
 
@@ -621,6 +650,7 @@ module Aws::StorageGateway
621
650
  DeleteSnapshotScheduleOutput.struct_class = Types::DeleteSnapshotScheduleOutput
622
651
 
623
652
  DeleteTapeArchiveInput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, required: true, location_name: "TapeARN"))
653
+ DeleteTapeArchiveInput.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: boolean, location_name: "BypassGovernanceRetention"))
624
654
  DeleteTapeArchiveInput.struct_class = Types::DeleteTapeArchiveInput
625
655
 
626
656
  DeleteTapeArchiveOutput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, location_name: "TapeARN"))
@@ -628,11 +658,18 @@ module Aws::StorageGateway
628
658
 
629
659
  DeleteTapeInput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, required: true, location_name: "GatewayARN"))
630
660
  DeleteTapeInput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, required: true, location_name: "TapeARN"))
661
+ DeleteTapeInput.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: boolean, location_name: "BypassGovernanceRetention"))
631
662
  DeleteTapeInput.struct_class = Types::DeleteTapeInput
632
663
 
633
664
  DeleteTapeOutput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, location_name: "TapeARN"))
634
665
  DeleteTapeOutput.struct_class = Types::DeleteTapeOutput
635
666
 
667
+ DeleteTapePoolInput.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, required: true, location_name: "PoolARN"))
668
+ DeleteTapePoolInput.struct_class = Types::DeleteTapePoolInput
669
+
670
+ DeleteTapePoolOutput.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, location_name: "PoolARN"))
671
+ DeleteTapePoolOutput.struct_class = Types::DeleteTapePoolOutput
672
+
636
673
  DeleteVolumeInput.add_member(:volume_arn, Shapes::ShapeRef.new(shape: VolumeARN, required: true, location_name: "VolumeARN"))
637
674
  DeleteVolumeInput.struct_class = Types::DeleteVolumeInput
638
675
 
@@ -941,6 +978,15 @@ module Aws::StorageGateway
941
978
  ListTagsForResourceOutput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
942
979
  ListTagsForResourceOutput.struct_class = Types::ListTagsForResourceOutput
943
980
 
981
+ ListTapePoolsInput.add_member(:pool_arns, Shapes::ShapeRef.new(shape: PoolARNs, location_name: "PoolARNs"))
982
+ ListTapePoolsInput.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location_name: "Marker"))
983
+ ListTapePoolsInput.add_member(:limit, Shapes::ShapeRef.new(shape: PositiveIntObject, location_name: "Limit"))
984
+ ListTapePoolsInput.struct_class = Types::ListTapePoolsInput
985
+
986
+ ListTapePoolsOutput.add_member(:pool_infos, Shapes::ShapeRef.new(shape: PoolInfos, location_name: "PoolInfos"))
987
+ ListTapePoolsOutput.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location_name: "Marker"))
988
+ ListTapePoolsOutput.struct_class = Types::ListTapePoolsOutput
989
+
944
990
  ListTapesInput.add_member(:tape_arns, Shapes::ShapeRef.new(shape: TapeARNs, location_name: "TapeARNs"))
945
991
  ListTapesInput.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location_name: "Marker"))
946
992
  ListTapesInput.add_member(:limit, Shapes::ShapeRef.new(shape: PositiveIntObject, location_name: "Limit"))
@@ -1015,6 +1061,18 @@ module Aws::StorageGateway
1015
1061
  NotifyWhenUploadedOutput.add_member(:notification_id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "NotificationId"))
1016
1062
  NotifyWhenUploadedOutput.struct_class = Types::NotifyWhenUploadedOutput
1017
1063
 
1064
+ PoolARNs.member = Shapes::ShapeRef.new(shape: PoolARN)
1065
+
1066
+ PoolInfo.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, location_name: "PoolARN"))
1067
+ PoolInfo.add_member(:pool_name, Shapes::ShapeRef.new(shape: PoolName, location_name: "PoolName"))
1068
+ PoolInfo.add_member(:storage_class, Shapes::ShapeRef.new(shape: TapeStorageClass, location_name: "StorageClass"))
1069
+ PoolInfo.add_member(:retention_lock_type, Shapes::ShapeRef.new(shape: RetentionLockType, location_name: "RetentionLockType"))
1070
+ PoolInfo.add_member(:retention_lock_time_in_days, Shapes::ShapeRef.new(shape: RetentionLockTimeInDays, location_name: "RetentionLockTimeInDays"))
1071
+ PoolInfo.add_member(:pool_status, Shapes::ShapeRef.new(shape: PoolStatus, location_name: "PoolStatus"))
1072
+ PoolInfo.struct_class = Types::PoolInfo
1073
+
1074
+ PoolInfos.member = Shapes::ShapeRef.new(shape: PoolInfo)
1075
+
1018
1076
  RefreshCacheInput.add_member(:file_share_arn, Shapes::ShapeRef.new(shape: FileShareARN, required: true, location_name: "FileShareARN"))
1019
1077
  RefreshCacheInput.add_member(:folder_list, Shapes::ShapeRef.new(shape: FolderList, location_name: "FolderList"))
1020
1078
  RefreshCacheInput.add_member(:recursive, Shapes::ShapeRef.new(shape: Boolean, location_name: "Recursive"))
@@ -1156,6 +1214,9 @@ module Aws::StorageGateway
1156
1214
  Tape.add_member(:tape_used_in_bytes, Shapes::ShapeRef.new(shape: TapeUsage, location_name: "TapeUsedInBytes"))
1157
1215
  Tape.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
1158
1216
  Tape.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
1217
+ Tape.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
1218
+ Tape.add_member(:retention_start_date, Shapes::ShapeRef.new(shape: Time, location_name: "RetentionStartDate"))
1219
+ Tape.add_member(:pool_entry_date, Shapes::ShapeRef.new(shape: Time, location_name: "PoolEntryDate"))
1159
1220
  Tape.struct_class = Types::Tape
1160
1221
 
1161
1222
  TapeARNs.member = Shapes::ShapeRef.new(shape: TapeARN)
@@ -1170,6 +1231,9 @@ module Aws::StorageGateway
1170
1231
  TapeArchive.add_member(:tape_used_in_bytes, Shapes::ShapeRef.new(shape: TapeUsage, location_name: "TapeUsedInBytes"))
1171
1232
  TapeArchive.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
1172
1233
  TapeArchive.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
1234
+ TapeArchive.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
1235
+ TapeArchive.add_member(:retention_start_date, Shapes::ShapeRef.new(shape: Time, location_name: "RetentionStartDate"))
1236
+ TapeArchive.add_member(:pool_entry_date, Shapes::ShapeRef.new(shape: Time, location_name: "PoolEntryDate"))
1173
1237
  TapeArchive.struct_class = Types::TapeArchive
1174
1238
 
1175
1239
  TapeArchives.member = Shapes::ShapeRef.new(shape: TapeArchive)
@@ -1180,6 +1244,8 @@ module Aws::StorageGateway
1180
1244
  TapeInfo.add_member(:tape_status, Shapes::ShapeRef.new(shape: TapeStatus, location_name: "TapeStatus"))
1181
1245
  TapeInfo.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, location_name: "GatewayARN"))
1182
1246
  TapeInfo.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
1247
+ TapeInfo.add_member(:retention_start_date, Shapes::ShapeRef.new(shape: Time, location_name: "RetentionStartDate"))
1248
+ TapeInfo.add_member(:pool_entry_date, Shapes::ShapeRef.new(shape: Time, location_name: "PoolEntryDate"))
1183
1249
  TapeInfo.struct_class = Types::TapeInfo
1184
1250
 
1185
1251
  TapeInfos.member = Shapes::ShapeRef.new(shape: TapeInfo)
@@ -1520,6 +1586,16 @@ module Aws::StorageGateway
1520
1586
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1521
1587
  end)
1522
1588
 
1589
+ api.add_operation(:create_tape_pool, Seahorse::Model::Operation.new.tap do |o|
1590
+ o.name = "CreateTapePool"
1591
+ o.http_method = "POST"
1592
+ o.http_request_uri = "/"
1593
+ o.input = Shapes::ShapeRef.new(shape: CreateTapePoolInput)
1594
+ o.output = Shapes::ShapeRef.new(shape: CreateTapePoolOutput)
1595
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
1596
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1597
+ end)
1598
+
1523
1599
  api.add_operation(:create_tape_with_barcode, Seahorse::Model::Operation.new.tap do |o|
1524
1600
  o.name = "CreateTapeWithBarcode"
1525
1601
  o.http_method = "POST"
@@ -1620,6 +1696,16 @@ module Aws::StorageGateway
1620
1696
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1621
1697
  end)
1622
1698
 
1699
+ api.add_operation(:delete_tape_pool, Seahorse::Model::Operation.new.tap do |o|
1700
+ o.name = "DeleteTapePool"
1701
+ o.http_method = "POST"
1702
+ o.http_request_uri = "/"
1703
+ o.input = Shapes::ShapeRef.new(shape: DeleteTapePoolInput)
1704
+ o.output = Shapes::ShapeRef.new(shape: DeleteTapePoolOutput)
1705
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
1706
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1707
+ end)
1708
+
1623
1709
  api.add_operation(:delete_volume, Seahorse::Model::Operation.new.tap do |o|
1624
1710
  o.name = "DeleteVolume"
1625
1711
  o.http_method = "POST"
@@ -1932,6 +2018,16 @@ module Aws::StorageGateway
1932
2018
  )
1933
2019
  end)
1934
2020
 
2021
+ api.add_operation(:list_tape_pools, Seahorse::Model::Operation.new.tap do |o|
2022
+ o.name = "ListTapePools"
2023
+ o.http_method = "POST"
2024
+ o.http_request_uri = "/"
2025
+ o.input = Shapes::ShapeRef.new(shape: ListTapePoolsInput)
2026
+ o.output = Shapes::ShapeRef.new(shape: ListTapePoolsOutput)
2027
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
2028
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2029
+ end)
2030
+
1935
2031
  api.add_operation(:list_tapes, Seahorse::Model::Operation.new.tap do |o|
1936
2032
  o.name = "ListTapes"
1937
2033
  o.http_method = "POST"