aws-sdk-storagegateway 1.46.0 → 1.51.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.
@@ -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')
@@ -218,6 +224,7 @@ module Aws::StorageGateway
218
224
  NetworkInterfaceId = Shapes::StringShape.new(name: 'NetworkInterfaceId')
219
225
  NextUpdateAvailabilityDate = Shapes::StringShape.new(name: 'NextUpdateAvailabilityDate')
220
226
  NotificationId = Shapes::StringShape.new(name: 'NotificationId')
227
+ NotificationPolicy = Shapes::StringShape.new(name: 'NotificationPolicy')
221
228
  NotifyWhenUploadedInput = Shapes::StructureShape.new(name: 'NotifyWhenUploadedInput')
222
229
  NotifyWhenUploadedOutput = Shapes::StructureShape.new(name: 'NotifyWhenUploadedOutput')
223
230
  NumTapesToCreate = Shapes::IntegerShape.new(name: 'NumTapesToCreate')
@@ -226,7 +233,13 @@ module Aws::StorageGateway
226
233
  Path = Shapes::StringShape.new(name: 'Path')
227
234
  PermissionId = Shapes::IntegerShape.new(name: 'PermissionId')
228
235
  PermissionMode = Shapes::StringShape.new(name: 'PermissionMode')
236
+ PoolARN = Shapes::StringShape.new(name: 'PoolARN')
237
+ PoolARNs = Shapes::ListShape.new(name: 'PoolARNs')
229
238
  PoolId = Shapes::StringShape.new(name: 'PoolId')
239
+ PoolInfo = Shapes::StructureShape.new(name: 'PoolInfo')
240
+ PoolInfos = Shapes::ListShape.new(name: 'PoolInfos')
241
+ PoolName = Shapes::StringShape.new(name: 'PoolName')
242
+ PoolStatus = Shapes::StringShape.new(name: 'PoolStatus')
230
243
  PositiveIntObject = Shapes::IntegerShape.new(name: 'PositiveIntObject')
231
244
  RecurrenceInHours = Shapes::IntegerShape.new(name: 'RecurrenceInHours')
232
245
  RefreshCacheInput = Shapes::StructureShape.new(name: 'RefreshCacheInput')
@@ -237,6 +250,8 @@ module Aws::StorageGateway
237
250
  ResetCacheInput = Shapes::StructureShape.new(name: 'ResetCacheInput')
238
251
  ResetCacheOutput = Shapes::StructureShape.new(name: 'ResetCacheOutput')
239
252
  ResourceARN = Shapes::StringShape.new(name: 'ResourceARN')
253
+ RetentionLockTimeInDays = Shapes::IntegerShape.new(name: 'RetentionLockTimeInDays')
254
+ RetentionLockType = Shapes::StringShape.new(name: 'RetentionLockType')
240
255
  RetrieveTapeArchiveInput = Shapes::StructureShape.new(name: 'RetrieveTapeArchiveInput')
241
256
  RetrieveTapeArchiveOutput = Shapes::StructureShape.new(name: 'RetrieveTapeArchiveOutput')
242
257
  RetrieveTapeRecoveryPointInput = Shapes::StructureShape.new(name: 'RetrieveTapeRecoveryPointInput')
@@ -286,6 +301,7 @@ module Aws::StorageGateway
286
301
  TapeRecoveryPointStatus = Shapes::StringShape.new(name: 'TapeRecoveryPointStatus')
287
302
  TapeSize = Shapes::IntegerShape.new(name: 'TapeSize')
288
303
  TapeStatus = Shapes::StringShape.new(name: 'TapeStatus')
304
+ TapeStorageClass = Shapes::StringShape.new(name: 'TapeStorageClass')
289
305
  TapeUsage = Shapes::IntegerShape.new(name: 'TapeUsage')
290
306
  Tapes = Shapes::ListShape.new(name: 'Tapes')
291
307
  TargetARN = Shapes::StringShape.new(name: 'TargetARN')
@@ -308,6 +324,8 @@ module Aws::StorageGateway
308
324
  UpdateNFSFileShareOutput = Shapes::StructureShape.new(name: 'UpdateNFSFileShareOutput')
309
325
  UpdateSMBFileShareInput = Shapes::StructureShape.new(name: 'UpdateSMBFileShareInput')
310
326
  UpdateSMBFileShareOutput = Shapes::StructureShape.new(name: 'UpdateSMBFileShareOutput')
327
+ UpdateSMBFileShareVisibilityInput = Shapes::StructureShape.new(name: 'UpdateSMBFileShareVisibilityInput')
328
+ UpdateSMBFileShareVisibilityOutput = Shapes::StructureShape.new(name: 'UpdateSMBFileShareVisibilityOutput')
311
329
  UpdateSMBSecurityStrategyInput = Shapes::StructureShape.new(name: 'UpdateSMBSecurityStrategyInput')
312
330
  UpdateSMBSecurityStrategyOutput = Shapes::StructureShape.new(name: 'UpdateSMBSecurityStrategyOutput')
313
331
  UpdateSnapshotScheduleInput = Shapes::StructureShape.new(name: 'UpdateSnapshotScheduleInput')
@@ -383,6 +401,7 @@ module Aws::StorageGateway
383
401
 
384
402
  AssignTapePoolInput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, required: true, location_name: "TapeARN"))
385
403
  AssignTapePoolInput.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, required: true, location_name: "PoolId"))
404
+ AssignTapePoolInput.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: boolean, location_name: "BypassGovernanceRetention"))
386
405
  AssignTapePoolInput.struct_class = Types::AssignTapePoolInput
387
406
 
388
407
  AssignTapePoolOutput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, location_name: "TapeARN"))
@@ -409,6 +428,7 @@ module Aws::StorageGateway
409
428
  AutomaticTapeCreationRule.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, required: true, location_name: "PoolId"))
410
429
  AutomaticTapeCreationRule.add_member(:tape_size_in_bytes, Shapes::ShapeRef.new(shape: TapeSize, required: true, location_name: "TapeSizeInBytes"))
411
430
  AutomaticTapeCreationRule.add_member(:minimum_num_tapes, Shapes::ShapeRef.new(shape: MinimumNumTapes, required: true, location_name: "MinimumNumTapes"))
431
+ AutomaticTapeCreationRule.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
412
432
  AutomaticTapeCreationRule.struct_class = Types::AutomaticTapeCreationRule
413
433
 
414
434
  AutomaticTapeCreationRules.member = Shapes::ShapeRef.new(shape: AutomaticTapeCreationRule)
@@ -488,6 +508,7 @@ module Aws::StorageGateway
488
508
  CreateNFSFileShareInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
489
509
  CreateNFSFileShareInput.add_member(:file_share_name, Shapes::ShapeRef.new(shape: FileShareName, location_name: "FileShareName"))
490
510
  CreateNFSFileShareInput.add_member(:cache_attributes, Shapes::ShapeRef.new(shape: CacheAttributes, location_name: "CacheAttributes"))
511
+ CreateNFSFileShareInput.add_member(:notification_policy, Shapes::ShapeRef.new(shape: NotificationPolicy, location_name: "NotificationPolicy"))
491
512
  CreateNFSFileShareInput.struct_class = Types::CreateNFSFileShareInput
492
513
 
493
514
  CreateNFSFileShareOutput.add_member(:file_share_arn, Shapes::ShapeRef.new(shape: FileShareARN, location_name: "FileShareARN"))
@@ -505,6 +526,7 @@ module Aws::StorageGateway
505
526
  CreateSMBFileShareInput.add_member(:guess_mime_type_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "GuessMIMETypeEnabled"))
506
527
  CreateSMBFileShareInput.add_member(:requester_pays, Shapes::ShapeRef.new(shape: Boolean, location_name: "RequesterPays"))
507
528
  CreateSMBFileShareInput.add_member(:smbacl_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "SMBACLEnabled"))
529
+ CreateSMBFileShareInput.add_member(:access_based_enumeration, Shapes::ShapeRef.new(shape: Boolean, location_name: "AccessBasedEnumeration"))
508
530
  CreateSMBFileShareInput.add_member(:admin_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "AdminUserList"))
509
531
  CreateSMBFileShareInput.add_member(:valid_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "ValidUserList"))
510
532
  CreateSMBFileShareInput.add_member(:invalid_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "InvalidUserList"))
@@ -514,6 +536,7 @@ module Aws::StorageGateway
514
536
  CreateSMBFileShareInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
515
537
  CreateSMBFileShareInput.add_member(:file_share_name, Shapes::ShapeRef.new(shape: FileShareName, location_name: "FileShareName"))
516
538
  CreateSMBFileShareInput.add_member(:cache_attributes, Shapes::ShapeRef.new(shape: CacheAttributes, location_name: "CacheAttributes"))
539
+ CreateSMBFileShareInput.add_member(:notification_policy, Shapes::ShapeRef.new(shape: NotificationPolicy, location_name: "NotificationPolicy"))
517
540
  CreateSMBFileShareInput.struct_class = Types::CreateSMBFileShareInput
518
541
 
519
542
  CreateSMBFileShareOutput.add_member(:file_share_arn, Shapes::ShapeRef.new(shape: FileShareARN, location_name: "FileShareARN"))
@@ -554,12 +577,23 @@ module Aws::StorageGateway
554
577
  CreateStorediSCSIVolumeOutput.add_member(:target_arn, Shapes::ShapeRef.new(shape: TargetARN, location_name: "TargetARN"))
555
578
  CreateStorediSCSIVolumeOutput.struct_class = Types::CreateStorediSCSIVolumeOutput
556
579
 
580
+ CreateTapePoolInput.add_member(:pool_name, Shapes::ShapeRef.new(shape: PoolName, required: true, location_name: "PoolName"))
581
+ CreateTapePoolInput.add_member(:storage_class, Shapes::ShapeRef.new(shape: TapeStorageClass, required: true, location_name: "StorageClass"))
582
+ CreateTapePoolInput.add_member(:retention_lock_type, Shapes::ShapeRef.new(shape: RetentionLockType, location_name: "RetentionLockType"))
583
+ CreateTapePoolInput.add_member(:retention_lock_time_in_days, Shapes::ShapeRef.new(shape: RetentionLockTimeInDays, location_name: "RetentionLockTimeInDays"))
584
+ CreateTapePoolInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
585
+ CreateTapePoolInput.struct_class = Types::CreateTapePoolInput
586
+
587
+ CreateTapePoolOutput.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, location_name: "PoolARN"))
588
+ CreateTapePoolOutput.struct_class = Types::CreateTapePoolOutput
589
+
557
590
  CreateTapeWithBarcodeInput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, required: true, location_name: "GatewayARN"))
558
591
  CreateTapeWithBarcodeInput.add_member(:tape_size_in_bytes, Shapes::ShapeRef.new(shape: TapeSize, required: true, location_name: "TapeSizeInBytes"))
559
592
  CreateTapeWithBarcodeInput.add_member(:tape_barcode, Shapes::ShapeRef.new(shape: TapeBarcode, required: true, location_name: "TapeBarcode"))
560
593
  CreateTapeWithBarcodeInput.add_member(:kms_encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "KMSEncrypted"))
561
594
  CreateTapeWithBarcodeInput.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
562
595
  CreateTapeWithBarcodeInput.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
596
+ CreateTapeWithBarcodeInput.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
563
597
  CreateTapeWithBarcodeInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
564
598
  CreateTapeWithBarcodeInput.struct_class = Types::CreateTapeWithBarcodeInput
565
599
 
@@ -574,6 +608,7 @@ module Aws::StorageGateway
574
608
  CreateTapesInput.add_member(:kms_encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "KMSEncrypted"))
575
609
  CreateTapesInput.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
576
610
  CreateTapesInput.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
611
+ CreateTapesInput.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
577
612
  CreateTapesInput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
578
613
  CreateTapesInput.struct_class = Types::CreateTapesInput
579
614
 
@@ -621,6 +656,7 @@ module Aws::StorageGateway
621
656
  DeleteSnapshotScheduleOutput.struct_class = Types::DeleteSnapshotScheduleOutput
622
657
 
623
658
  DeleteTapeArchiveInput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, required: true, location_name: "TapeARN"))
659
+ DeleteTapeArchiveInput.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: boolean, location_name: "BypassGovernanceRetention"))
624
660
  DeleteTapeArchiveInput.struct_class = Types::DeleteTapeArchiveInput
625
661
 
626
662
  DeleteTapeArchiveOutput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, location_name: "TapeARN"))
@@ -628,11 +664,18 @@ module Aws::StorageGateway
628
664
 
629
665
  DeleteTapeInput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, required: true, location_name: "GatewayARN"))
630
666
  DeleteTapeInput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, required: true, location_name: "TapeARN"))
667
+ DeleteTapeInput.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: boolean, location_name: "BypassGovernanceRetention"))
631
668
  DeleteTapeInput.struct_class = Types::DeleteTapeInput
632
669
 
633
670
  DeleteTapeOutput.add_member(:tape_arn, Shapes::ShapeRef.new(shape: TapeARN, location_name: "TapeARN"))
634
671
  DeleteTapeOutput.struct_class = Types::DeleteTapeOutput
635
672
 
673
+ DeleteTapePoolInput.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, required: true, location_name: "PoolARN"))
674
+ DeleteTapePoolInput.struct_class = Types::DeleteTapePoolInput
675
+
676
+ DeleteTapePoolOutput.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, location_name: "PoolARN"))
677
+ DeleteTapePoolOutput.struct_class = Types::DeleteTapePoolOutput
678
+
636
679
  DeleteVolumeInput.add_member(:volume_arn, Shapes::ShapeRef.new(shape: VolumeARN, required: true, location_name: "VolumeARN"))
637
680
  DeleteVolumeInput.struct_class = Types::DeleteVolumeInput
638
681
 
@@ -733,6 +776,7 @@ module Aws::StorageGateway
733
776
  DescribeSMBSettingsOutput.add_member(:active_directory_status, Shapes::ShapeRef.new(shape: ActiveDirectoryStatus, location_name: "ActiveDirectoryStatus"))
734
777
  DescribeSMBSettingsOutput.add_member(:smb_guest_password_set, Shapes::ShapeRef.new(shape: Boolean, location_name: "SMBGuestPasswordSet"))
735
778
  DescribeSMBSettingsOutput.add_member(:smb_security_strategy, Shapes::ShapeRef.new(shape: SMBSecurityStrategy, location_name: "SMBSecurityStrategy"))
779
+ DescribeSMBSettingsOutput.add_member(:file_shares_visible, Shapes::ShapeRef.new(shape: Boolean, location_name: "FileSharesVisible"))
736
780
  DescribeSMBSettingsOutput.struct_class = Types::DescribeSMBSettingsOutput
737
781
 
738
782
  DescribeSnapshotScheduleInput.add_member(:volume_arn, Shapes::ShapeRef.new(shape: VolumeARN, required: true, location_name: "VolumeARN"))
@@ -941,6 +985,15 @@ module Aws::StorageGateway
941
985
  ListTagsForResourceOutput.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
942
986
  ListTagsForResourceOutput.struct_class = Types::ListTagsForResourceOutput
943
987
 
988
+ ListTapePoolsInput.add_member(:pool_arns, Shapes::ShapeRef.new(shape: PoolARNs, location_name: "PoolARNs"))
989
+ ListTapePoolsInput.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location_name: "Marker"))
990
+ ListTapePoolsInput.add_member(:limit, Shapes::ShapeRef.new(shape: PositiveIntObject, location_name: "Limit"))
991
+ ListTapePoolsInput.struct_class = Types::ListTapePoolsInput
992
+
993
+ ListTapePoolsOutput.add_member(:pool_infos, Shapes::ShapeRef.new(shape: PoolInfos, location_name: "PoolInfos"))
994
+ ListTapePoolsOutput.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location_name: "Marker"))
995
+ ListTapePoolsOutput.struct_class = Types::ListTapePoolsOutput
996
+
944
997
  ListTapesInput.add_member(:tape_arns, Shapes::ShapeRef.new(shape: TapeARNs, location_name: "TapeARNs"))
945
998
  ListTapesInput.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location_name: "Marker"))
946
999
  ListTapesInput.add_member(:limit, Shapes::ShapeRef.new(shape: PositiveIntObject, location_name: "Limit"))
@@ -999,6 +1052,7 @@ module Aws::StorageGateway
999
1052
  NFSFileShareInfo.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
1000
1053
  NFSFileShareInfo.add_member(:file_share_name, Shapes::ShapeRef.new(shape: FileShareName, location_name: "FileShareName"))
1001
1054
  NFSFileShareInfo.add_member(:cache_attributes, Shapes::ShapeRef.new(shape: CacheAttributes, location_name: "CacheAttributes"))
1055
+ NFSFileShareInfo.add_member(:notification_policy, Shapes::ShapeRef.new(shape: NotificationPolicy, location_name: "NotificationPolicy"))
1002
1056
  NFSFileShareInfo.struct_class = Types::NFSFileShareInfo
1003
1057
 
1004
1058
  NFSFileShareInfoList.member = Shapes::ShapeRef.new(shape: NFSFileShareInfo)
@@ -1015,6 +1069,18 @@ module Aws::StorageGateway
1015
1069
  NotifyWhenUploadedOutput.add_member(:notification_id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "NotificationId"))
1016
1070
  NotifyWhenUploadedOutput.struct_class = Types::NotifyWhenUploadedOutput
1017
1071
 
1072
+ PoolARNs.member = Shapes::ShapeRef.new(shape: PoolARN)
1073
+
1074
+ PoolInfo.add_member(:pool_arn, Shapes::ShapeRef.new(shape: PoolARN, location_name: "PoolARN"))
1075
+ PoolInfo.add_member(:pool_name, Shapes::ShapeRef.new(shape: PoolName, location_name: "PoolName"))
1076
+ PoolInfo.add_member(:storage_class, Shapes::ShapeRef.new(shape: TapeStorageClass, location_name: "StorageClass"))
1077
+ PoolInfo.add_member(:retention_lock_type, Shapes::ShapeRef.new(shape: RetentionLockType, location_name: "RetentionLockType"))
1078
+ PoolInfo.add_member(:retention_lock_time_in_days, Shapes::ShapeRef.new(shape: RetentionLockTimeInDays, location_name: "RetentionLockTimeInDays"))
1079
+ PoolInfo.add_member(:pool_status, Shapes::ShapeRef.new(shape: PoolStatus, location_name: "PoolStatus"))
1080
+ PoolInfo.struct_class = Types::PoolInfo
1081
+
1082
+ PoolInfos.member = Shapes::ShapeRef.new(shape: PoolInfo)
1083
+
1018
1084
  RefreshCacheInput.add_member(:file_share_arn, Shapes::ShapeRef.new(shape: FileShareARN, required: true, location_name: "FileShareARN"))
1019
1085
  RefreshCacheInput.add_member(:folder_list, Shapes::ShapeRef.new(shape: FolderList, location_name: "FolderList"))
1020
1086
  RefreshCacheInput.add_member(:recursive, Shapes::ShapeRef.new(shape: Boolean, location_name: "Recursive"))
@@ -1066,6 +1132,7 @@ module Aws::StorageGateway
1066
1132
  SMBFileShareInfo.add_member(:guess_mime_type_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "GuessMIMETypeEnabled"))
1067
1133
  SMBFileShareInfo.add_member(:requester_pays, Shapes::ShapeRef.new(shape: Boolean, location_name: "RequesterPays"))
1068
1134
  SMBFileShareInfo.add_member(:smbacl_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "SMBACLEnabled"))
1135
+ SMBFileShareInfo.add_member(:access_based_enumeration, Shapes::ShapeRef.new(shape: Boolean, location_name: "AccessBasedEnumeration"))
1069
1136
  SMBFileShareInfo.add_member(:admin_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "AdminUserList"))
1070
1137
  SMBFileShareInfo.add_member(:valid_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "ValidUserList"))
1071
1138
  SMBFileShareInfo.add_member(:invalid_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "InvalidUserList"))
@@ -1075,6 +1142,7 @@ module Aws::StorageGateway
1075
1142
  SMBFileShareInfo.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
1076
1143
  SMBFileShareInfo.add_member(:file_share_name, Shapes::ShapeRef.new(shape: FileShareName, location_name: "FileShareName"))
1077
1144
  SMBFileShareInfo.add_member(:cache_attributes, Shapes::ShapeRef.new(shape: CacheAttributes, location_name: "CacheAttributes"))
1145
+ SMBFileShareInfo.add_member(:notification_policy, Shapes::ShapeRef.new(shape: NotificationPolicy, location_name: "NotificationPolicy"))
1078
1146
  SMBFileShareInfo.struct_class = Types::SMBFileShareInfo
1079
1147
 
1080
1148
  SMBFileShareInfoList.member = Shapes::ShapeRef.new(shape: SMBFileShareInfo)
@@ -1156,6 +1224,9 @@ module Aws::StorageGateway
1156
1224
  Tape.add_member(:tape_used_in_bytes, Shapes::ShapeRef.new(shape: TapeUsage, location_name: "TapeUsedInBytes"))
1157
1225
  Tape.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
1158
1226
  Tape.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
1227
+ Tape.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
1228
+ Tape.add_member(:retention_start_date, Shapes::ShapeRef.new(shape: Time, location_name: "RetentionStartDate"))
1229
+ Tape.add_member(:pool_entry_date, Shapes::ShapeRef.new(shape: Time, location_name: "PoolEntryDate"))
1159
1230
  Tape.struct_class = Types::Tape
1160
1231
 
1161
1232
  TapeARNs.member = Shapes::ShapeRef.new(shape: TapeARN)
@@ -1170,6 +1241,9 @@ module Aws::StorageGateway
1170
1241
  TapeArchive.add_member(:tape_used_in_bytes, Shapes::ShapeRef.new(shape: TapeUsage, location_name: "TapeUsedInBytes"))
1171
1242
  TapeArchive.add_member(:kms_key, Shapes::ShapeRef.new(shape: KMSKey, location_name: "KMSKey"))
1172
1243
  TapeArchive.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
1244
+ TapeArchive.add_member(:worm, Shapes::ShapeRef.new(shape: boolean, location_name: "Worm"))
1245
+ TapeArchive.add_member(:retention_start_date, Shapes::ShapeRef.new(shape: Time, location_name: "RetentionStartDate"))
1246
+ TapeArchive.add_member(:pool_entry_date, Shapes::ShapeRef.new(shape: Time, location_name: "PoolEntryDate"))
1173
1247
  TapeArchive.struct_class = Types::TapeArchive
1174
1248
 
1175
1249
  TapeArchives.member = Shapes::ShapeRef.new(shape: TapeArchive)
@@ -1180,6 +1254,8 @@ module Aws::StorageGateway
1180
1254
  TapeInfo.add_member(:tape_status, Shapes::ShapeRef.new(shape: TapeStatus, location_name: "TapeStatus"))
1181
1255
  TapeInfo.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, location_name: "GatewayARN"))
1182
1256
  TapeInfo.add_member(:pool_id, Shapes::ShapeRef.new(shape: PoolId, location_name: "PoolId"))
1257
+ TapeInfo.add_member(:retention_start_date, Shapes::ShapeRef.new(shape: Time, location_name: "RetentionStartDate"))
1258
+ TapeInfo.add_member(:pool_entry_date, Shapes::ShapeRef.new(shape: Time, location_name: "PoolEntryDate"))
1183
1259
  TapeInfo.struct_class = Types::TapeInfo
1184
1260
 
1185
1261
  TapeInfos.member = Shapes::ShapeRef.new(shape: TapeInfo)
@@ -1258,6 +1334,7 @@ module Aws::StorageGateway
1258
1334
  UpdateNFSFileShareInput.add_member(:requester_pays, Shapes::ShapeRef.new(shape: Boolean, location_name: "RequesterPays"))
1259
1335
  UpdateNFSFileShareInput.add_member(:file_share_name, Shapes::ShapeRef.new(shape: FileShareName, location_name: "FileShareName"))
1260
1336
  UpdateNFSFileShareInput.add_member(:cache_attributes, Shapes::ShapeRef.new(shape: CacheAttributes, location_name: "CacheAttributes"))
1337
+ UpdateNFSFileShareInput.add_member(:notification_policy, Shapes::ShapeRef.new(shape: NotificationPolicy, location_name: "NotificationPolicy"))
1261
1338
  UpdateNFSFileShareInput.struct_class = Types::UpdateNFSFileShareInput
1262
1339
 
1263
1340
  UpdateNFSFileShareOutput.add_member(:file_share_arn, Shapes::ShapeRef.new(shape: FileShareARN, location_name: "FileShareARN"))
@@ -1272,6 +1349,7 @@ module Aws::StorageGateway
1272
1349
  UpdateSMBFileShareInput.add_member(:guess_mime_type_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "GuessMIMETypeEnabled"))
1273
1350
  UpdateSMBFileShareInput.add_member(:requester_pays, Shapes::ShapeRef.new(shape: Boolean, location_name: "RequesterPays"))
1274
1351
  UpdateSMBFileShareInput.add_member(:smbacl_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "SMBACLEnabled"))
1352
+ UpdateSMBFileShareInput.add_member(:access_based_enumeration, Shapes::ShapeRef.new(shape: Boolean, location_name: "AccessBasedEnumeration"))
1275
1353
  UpdateSMBFileShareInput.add_member(:admin_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "AdminUserList"))
1276
1354
  UpdateSMBFileShareInput.add_member(:valid_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "ValidUserList"))
1277
1355
  UpdateSMBFileShareInput.add_member(:invalid_user_list, Shapes::ShapeRef.new(shape: FileShareUserList, location_name: "InvalidUserList"))
@@ -1279,11 +1357,19 @@ module Aws::StorageGateway
1279
1357
  UpdateSMBFileShareInput.add_member(:case_sensitivity, Shapes::ShapeRef.new(shape: CaseSensitivity, location_name: "CaseSensitivity"))
1280
1358
  UpdateSMBFileShareInput.add_member(:file_share_name, Shapes::ShapeRef.new(shape: FileShareName, location_name: "FileShareName"))
1281
1359
  UpdateSMBFileShareInput.add_member(:cache_attributes, Shapes::ShapeRef.new(shape: CacheAttributes, location_name: "CacheAttributes"))
1360
+ UpdateSMBFileShareInput.add_member(:notification_policy, Shapes::ShapeRef.new(shape: NotificationPolicy, location_name: "NotificationPolicy"))
1282
1361
  UpdateSMBFileShareInput.struct_class = Types::UpdateSMBFileShareInput
1283
1362
 
1284
1363
  UpdateSMBFileShareOutput.add_member(:file_share_arn, Shapes::ShapeRef.new(shape: FileShareARN, location_name: "FileShareARN"))
1285
1364
  UpdateSMBFileShareOutput.struct_class = Types::UpdateSMBFileShareOutput
1286
1365
 
1366
+ UpdateSMBFileShareVisibilityInput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, required: true, location_name: "GatewayARN"))
1367
+ UpdateSMBFileShareVisibilityInput.add_member(:file_shares_visible, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "FileSharesVisible"))
1368
+ UpdateSMBFileShareVisibilityInput.struct_class = Types::UpdateSMBFileShareVisibilityInput
1369
+
1370
+ UpdateSMBFileShareVisibilityOutput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, location_name: "GatewayARN"))
1371
+ UpdateSMBFileShareVisibilityOutput.struct_class = Types::UpdateSMBFileShareVisibilityOutput
1372
+
1287
1373
  UpdateSMBSecurityStrategyInput.add_member(:gateway_arn, Shapes::ShapeRef.new(shape: GatewayARN, required: true, location_name: "GatewayARN"))
1288
1374
  UpdateSMBSecurityStrategyInput.add_member(:smb_security_strategy, Shapes::ShapeRef.new(shape: SMBSecurityStrategy, required: true, location_name: "SMBSecurityStrategy"))
1289
1375
  UpdateSMBSecurityStrategyInput.struct_class = Types::UpdateSMBSecurityStrategyInput
@@ -1520,6 +1606,16 @@ module Aws::StorageGateway
1520
1606
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1521
1607
  end)
1522
1608
 
1609
+ api.add_operation(:create_tape_pool, Seahorse::Model::Operation.new.tap do |o|
1610
+ o.name = "CreateTapePool"
1611
+ o.http_method = "POST"
1612
+ o.http_request_uri = "/"
1613
+ o.input = Shapes::ShapeRef.new(shape: CreateTapePoolInput)
1614
+ o.output = Shapes::ShapeRef.new(shape: CreateTapePoolOutput)
1615
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
1616
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1617
+ end)
1618
+
1523
1619
  api.add_operation(:create_tape_with_barcode, Seahorse::Model::Operation.new.tap do |o|
1524
1620
  o.name = "CreateTapeWithBarcode"
1525
1621
  o.http_method = "POST"
@@ -1620,6 +1716,16 @@ module Aws::StorageGateway
1620
1716
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1621
1717
  end)
1622
1718
 
1719
+ api.add_operation(:delete_tape_pool, Seahorse::Model::Operation.new.tap do |o|
1720
+ o.name = "DeleteTapePool"
1721
+ o.http_method = "POST"
1722
+ o.http_request_uri = "/"
1723
+ o.input = Shapes::ShapeRef.new(shape: DeleteTapePoolInput)
1724
+ o.output = Shapes::ShapeRef.new(shape: DeleteTapePoolOutput)
1725
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
1726
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1727
+ end)
1728
+
1623
1729
  api.add_operation(:delete_volume, Seahorse::Model::Operation.new.tap do |o|
1624
1730
  o.name = "DeleteVolume"
1625
1731
  o.http_method = "POST"
@@ -1932,6 +2038,16 @@ module Aws::StorageGateway
1932
2038
  )
1933
2039
  end)
1934
2040
 
2041
+ api.add_operation(:list_tape_pools, Seahorse::Model::Operation.new.tap do |o|
2042
+ o.name = "ListTapePools"
2043
+ o.http_method = "POST"
2044
+ o.http_request_uri = "/"
2045
+ o.input = Shapes::ShapeRef.new(shape: ListTapePoolsInput)
2046
+ o.output = Shapes::ShapeRef.new(shape: ListTapePoolsOutput)
2047
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
2048
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2049
+ end)
2050
+
1935
2051
  api.add_operation(:list_tapes, Seahorse::Model::Operation.new.tap do |o|
1936
2052
  o.name = "ListTapes"
1937
2053
  o.http_method = "POST"
@@ -2174,6 +2290,16 @@ module Aws::StorageGateway
2174
2290
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2175
2291
  end)
2176
2292
 
2293
+ api.add_operation(:update_smb_file_share_visibility, Seahorse::Model::Operation.new.tap do |o|
2294
+ o.name = "UpdateSMBFileShareVisibility"
2295
+ o.http_method = "POST"
2296
+ o.http_request_uri = "/"
2297
+ o.input = Shapes::ShapeRef.new(shape: UpdateSMBFileShareVisibilityInput)
2298
+ o.output = Shapes::ShapeRef.new(shape: UpdateSMBFileShareVisibilityOutput)
2299
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGatewayRequestException)
2300
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2301
+ end)
2302
+
2177
2303
  api.add_operation(:update_smb_security_strategy, Seahorse::Model::Operation.new.tap do |o|
2178
2304
  o.name = "UpdateSMBSecurityStrategy"
2179
2305
  o.http_method = "POST"
@@ -111,7 +111,7 @@ module Aws::StorageGateway
111
111
  # The value that indicates the type of medium changer to use for tape
112
112
  # gateway. This field is optional.
113
113
  #
114
- # Valid Values: `STK-L700` \| `AWS-Gateway-VTL`
114
+ # Valid Values: `STK-L700` \| `AWS-Gateway-VTL` \| `IBM-03584L32-0402`
115
115
  # @return [String]
116
116
  #
117
117
  # @!attribute [rw] tags
@@ -368,6 +368,7 @@ module Aws::StorageGateway
368
368
  # {
369
369
  # tape_arn: "TapeARN", # required
370
370
  # pool_id: "PoolId", # required
371
+ # bypass_governance_retention: false,
371
372
  # }
372
373
  #
373
374
  # @!attribute [rw] tape_arn
@@ -386,11 +387,23 @@ module Aws::StorageGateway
386
387
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
387
388
  # @return [String]
388
389
  #
390
+ # @!attribute [rw] bypass_governance_retention
391
+ # Set permissions to bypass governance retention. If the lock type of
392
+ # the archived tape is `Governance`, the tape's archived age is not
393
+ # older than `RetentionLockInDays`, and the user does not already have
394
+ # `BypassGovernanceRetention`, setting this to TRUE enables the user
395
+ # to bypass the retention lock. This parameter is set to true by
396
+ # default for calls from the console.
397
+ #
398
+ # Valid values: `TRUE` \| `FALSE`
399
+ # @return [Boolean]
400
+ #
389
401
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AssignTapePoolInput AWS API Documentation
390
402
  #
391
403
  class AssignTapePoolInput < Struct.new(
392
404
  :tape_arn,
393
- :pool_id)
405
+ :pool_id,
406
+ :bypass_governance_retention)
394
407
  SENSITIVE = []
395
408
  include Aws::Structure
396
409
  end
@@ -517,7 +530,13 @@ module Aws::StorageGateway
517
530
  end
518
531
 
519
532
  # An automatic tape creation policy consists of automatic tape creation
520
- # rules where each rule defines when and how to create new tapes.
533
+ # rules where each rule defines when and how to create new tapes. For
534
+ # more information about automatic tape creation, see [Creating Tapes
535
+ # Automatically][1].
536
+ #
537
+ #
538
+ #
539
+ # [1]: https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically
521
540
  #
522
541
  # @note When making an API call, you may pass AutomaticTapeCreationRule
523
542
  # data as a hash:
@@ -527,6 +546,7 @@ module Aws::StorageGateway
527
546
  # pool_id: "PoolId", # required
528
547
  # tape_size_in_bytes: 1, # required
529
548
  # minimum_num_tapes: 1, # required
549
+ # worm: false,
530
550
  # }
531
551
  #
532
552
  # @!attribute [rw] tape_barcode_prefix
@@ -558,16 +578,29 @@ module Aws::StorageGateway
558
578
  # The minimum number of available virtual tapes that the gateway
559
579
  # maintains at all times. If the number of tapes on the gateway goes
560
580
  # below this value, the gateway creates as many new tapes as are
561
- # needed to have `MinimumNumTapes` on the gateway.
581
+ # needed to have `MinimumNumTapes` on the gateway. For more
582
+ # information about automatic tape creation, see [Creating Tapes
583
+ # Automatically][1].
584
+ #
585
+ #
586
+ #
587
+ # [1]: https://docs.aws.amazon.com/storagegateway/latest/userguide/GettingStartedCreateTapes.html#CreateTapesAutomatically
562
588
  # @return [Integer]
563
589
  #
590
+ # @!attribute [rw] worm
591
+ # Set to `true` to indicate that tapes are to be archived as
592
+ # write-once-read-many (WORM). Set to `false` when WORM is not enabled
593
+ # for tapes.
594
+ # @return [Boolean]
595
+ #
564
596
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/AutomaticTapeCreationRule AWS API Documentation
565
597
  #
566
598
  class AutomaticTapeCreationRule < Struct.new(
567
599
  :tape_barcode_prefix,
568
600
  :pool_id,
569
601
  :tape_size_in_bytes,
570
- :minimum_num_tapes)
602
+ :minimum_num_tapes,
603
+ :worm)
571
604
  SENSITIVE = []
572
605
  include Aws::Structure
573
606
  end
@@ -606,7 +639,7 @@ module Aws::StorageGateway
606
639
  # @return [String]
607
640
  #
608
641
  # @!attribute [rw] volume_id
609
- # The unique identifier of the volume, e.g. vol-AE4B946D.
642
+ # The unique identifier of the volume, e.g., vol-AE4B946D.
610
643
  # @return [String]
611
644
  #
612
645
  # @!attribute [rw] volume_type
@@ -642,7 +675,7 @@ module Aws::StorageGateway
642
675
  #
643
676
  # @!attribute [rw] source_snapshot_id
644
677
  # If the cached volume was created from a snapshot, this field
645
- # contains the snapshot ID used, e.g. snap-78e22663. Otherwise, this
678
+ # contains the snapshot ID used, e.g., snap-78e22663. Otherwise, this
646
679
  # field is not included.
647
680
  # @return [String]
648
681
  #
@@ -653,7 +686,7 @@ module Aws::StorageGateway
653
686
  #
654
687
  # @!attribute [rw] created_date
655
688
  # The date the volume was created. Volumes created prior to March 28,
656
- # 2017 don’t have this time stamp.
689
+ # 2017 don’t have this timestamp.
657
690
  # @return [Time]
658
691
  #
659
692
  # @!attribute [rw] volume_used_in_bytes
@@ -821,7 +854,7 @@ module Aws::StorageGateway
821
854
  #
822
855
  # @!attribute [rw] secret_to_authenticate_target
823
856
  # The secret key that the target must provide to participate in mutual
824
- # CHAP with the initiator (e.g. Windows client).
857
+ # CHAP with the initiator (e.g., Windows client).
825
858
  # @return [String]
826
859
  #
827
860
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ChapInfo AWS API Documentation
@@ -1010,6 +1043,7 @@ module Aws::StorageGateway
1010
1043
  # cache_attributes: {
1011
1044
  # cache_stale_timeout_in_seconds: 1,
1012
1045
  # },
1046
+ # notification_policy: "NotificationPolicy",
1013
1047
  # }
1014
1048
  #
1015
1049
  # @!attribute [rw] client_token
@@ -1140,6 +1174,10 @@ module Aws::StorageGateway
1140
1174
  # Refresh cache information.
1141
1175
  # @return [Types::CacheAttributes]
1142
1176
  #
1177
+ # @!attribute [rw] notification_policy
1178
+ # The notification policy of the file share.
1179
+ # @return [String]
1180
+ #
1143
1181
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateNFSFileShareInput AWS API Documentation
1144
1182
  #
1145
1183
  class CreateNFSFileShareInput < Struct.new(
@@ -1159,7 +1197,8 @@ module Aws::StorageGateway
1159
1197
  :requester_pays,
1160
1198
  :tags,
1161
1199
  :file_share_name,
1162
- :cache_attributes)
1200
+ :cache_attributes,
1201
+ :notification_policy)
1163
1202
  SENSITIVE = []
1164
1203
  include Aws::Structure
1165
1204
  end
@@ -1196,6 +1235,7 @@ module Aws::StorageGateway
1196
1235
  # guess_mime_type_enabled: false,
1197
1236
  # requester_pays: false,
1198
1237
  # smbacl_enabled: false,
1238
+ # access_based_enumeration: false,
1199
1239
  # admin_user_list: ["FileShareUser"],
1200
1240
  # valid_user_list: ["FileShareUser"],
1201
1241
  # invalid_user_list: ["FileShareUser"],
@@ -1212,6 +1252,7 @@ module Aws::StorageGateway
1212
1252
  # cache_attributes: {
1213
1253
  # cache_stale_timeout_in_seconds: 1,
1214
1254
  # },
1255
+ # notification_policy: "NotificationPolicy",
1215
1256
  # }
1216
1257
  #
1217
1258
  # @!attribute [rw] client_token
@@ -1312,6 +1353,11 @@ module Aws::StorageGateway
1312
1353
  # [1]: https://docs.aws.amazon.com/storagegateway/latest/userguide/smb-acl.html
1313
1354
  # @return [Boolean]
1314
1355
  #
1356
+ # @!attribute [rw] access_based_enumeration
1357
+ # The files and folders on this share will only be visible to users
1358
+ # with read access.
1359
+ # @return [Boolean]
1360
+ #
1315
1361
  # @!attribute [rw] admin_user_list
1316
1362
  # A list of users or groups in the Active Directory that will be
1317
1363
  # granted administrator privileges on the file share. These users can
@@ -1383,6 +1429,10 @@ module Aws::StorageGateway
1383
1429
  # Refresh cache information.
1384
1430
  # @return [Types::CacheAttributes]
1385
1431
  #
1432
+ # @!attribute [rw] notification_policy
1433
+ # The notification policy of the file share.
1434
+ # @return [String]
1435
+ #
1386
1436
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateSMBFileShareInput AWS API Documentation
1387
1437
  #
1388
1438
  class CreateSMBFileShareInput < Struct.new(
@@ -1398,6 +1448,7 @@ module Aws::StorageGateway
1398
1448
  :guess_mime_type_enabled,
1399
1449
  :requester_pays,
1400
1450
  :smbacl_enabled,
1451
+ :access_based_enumeration,
1401
1452
  :admin_user_list,
1402
1453
  :valid_user_list,
1403
1454
  :invalid_user_list,
@@ -1406,7 +1457,8 @@ module Aws::StorageGateway
1406
1457
  :case_sensitivity,
1407
1458
  :tags,
1408
1459
  :file_share_name,
1409
- :cache_attributes)
1460
+ :cache_attributes,
1461
+ :notification_policy)
1410
1462
  SENSITIVE = []
1411
1463
  include Aws::Structure
1412
1464
  end
@@ -1730,6 +1782,84 @@ module Aws::StorageGateway
1730
1782
  include Aws::Structure
1731
1783
  end
1732
1784
 
1785
+ # @note When making an API call, you may pass CreateTapePoolInput
1786
+ # data as a hash:
1787
+ #
1788
+ # {
1789
+ # pool_name: "PoolName", # required
1790
+ # storage_class: "DEEP_ARCHIVE", # required, accepts DEEP_ARCHIVE, GLACIER
1791
+ # retention_lock_type: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE, NONE
1792
+ # retention_lock_time_in_days: 1,
1793
+ # tags: [
1794
+ # {
1795
+ # key: "TagKey", # required
1796
+ # value: "TagValue", # required
1797
+ # },
1798
+ # ],
1799
+ # }
1800
+ #
1801
+ # @!attribute [rw] pool_name
1802
+ # The name of the new custom tape pool.
1803
+ # @return [String]
1804
+ #
1805
+ # @!attribute [rw] storage_class
1806
+ # The storage class that is associated with the new custom pool. When
1807
+ # you use your backup application to eject the tape, the tape is
1808
+ # archived directly into the storage class (S3 Glacier or S3 Glacier
1809
+ # Deep Archive) that corresponds to the pool.
1810
+ # @return [String]
1811
+ #
1812
+ # @!attribute [rw] retention_lock_type
1813
+ # Tape retention lock can be configured in two modes. When configured
1814
+ # in governance mode, AWS accounts with specific IAM permissions are
1815
+ # authorized to remove the tape retention lock from archived virtual
1816
+ # tapes. When configured in compliance mode, the tape retention lock
1817
+ # cannot be removed by any user, including the root AWS account.
1818
+ # @return [String]
1819
+ #
1820
+ # @!attribute [rw] retention_lock_time_in_days
1821
+ # Tape retention lock time is set in days. Tape retention lock can be
1822
+ # enabled for up to 100 years (36,500 days).
1823
+ # @return [Integer]
1824
+ #
1825
+ # @!attribute [rw] tags
1826
+ # A list of up to 50 tags that can be assigned to tape pool. Each tag
1827
+ # is a key-value pair.
1828
+ #
1829
+ # <note markdown="1"> Valid characters for key and value are letters, spaces, and numbers
1830
+ # representable in UTF-8 format, and the following special characters:
1831
+ # + - = . \_ : / @. The maximum length of a tag's key is 128
1832
+ # characters, and the maximum length for a tag's value is 256.
1833
+ #
1834
+ # </note>
1835
+ # @return [Array<Types::Tag>]
1836
+ #
1837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapePoolInput AWS API Documentation
1838
+ #
1839
+ class CreateTapePoolInput < Struct.new(
1840
+ :pool_name,
1841
+ :storage_class,
1842
+ :retention_lock_type,
1843
+ :retention_lock_time_in_days,
1844
+ :tags)
1845
+ SENSITIVE = []
1846
+ include Aws::Structure
1847
+ end
1848
+
1849
+ # @!attribute [rw] pool_arn
1850
+ # The unique Amazon Resource Name (ARN) that represents the custom
1851
+ # tape pool. Use the ListTapePools operation to return a list of tape
1852
+ # pools for your account and AWS Region.
1853
+ # @return [String]
1854
+ #
1855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateTapePoolOutput AWS API Documentation
1856
+ #
1857
+ class CreateTapePoolOutput < Struct.new(
1858
+ :pool_arn)
1859
+ SENSITIVE = []
1860
+ include Aws::Structure
1861
+ end
1862
+
1733
1863
  # CreateTapeWithBarcodeInput
1734
1864
  #
1735
1865
  # @note When making an API call, you may pass CreateTapeWithBarcodeInput
@@ -1742,6 +1872,7 @@ module Aws::StorageGateway
1742
1872
  # kms_encrypted: false,
1743
1873
  # kms_key: "KMSKey",
1744
1874
  # pool_id: "PoolId",
1875
+ # worm: false,
1745
1876
  # tags: [
1746
1877
  # {
1747
1878
  # key: "TagKey", # required
@@ -1797,6 +1928,11 @@ module Aws::StorageGateway
1797
1928
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
1798
1929
  # @return [String]
1799
1930
  #
1931
+ # @!attribute [rw] worm
1932
+ # Set to `TRUE` if the tape you are creating is to be configured as a
1933
+ # write-once-read-many (WORM) tape.
1934
+ # @return [Boolean]
1935
+ #
1800
1936
  # @!attribute [rw] tags
1801
1937
  # A list of up to 50 tags that can be assigned to a virtual tape that
1802
1938
  # has a barcode. Each tag is a key-value pair.
@@ -1818,6 +1954,7 @@ module Aws::StorageGateway
1818
1954
  :kms_encrypted,
1819
1955
  :kms_key,
1820
1956
  :pool_id,
1957
+ :worm,
1821
1958
  :tags)
1822
1959
  SENSITIVE = []
1823
1960
  include Aws::Structure
@@ -1852,6 +1989,7 @@ module Aws::StorageGateway
1852
1989
  # kms_encrypted: false,
1853
1990
  # kms_key: "KMSKey",
1854
1991
  # pool_id: "PoolId",
1992
+ # worm: false,
1855
1993
  # tags: [
1856
1994
  # {
1857
1995
  # key: "TagKey", # required
@@ -1924,6 +2062,11 @@ module Aws::StorageGateway
1924
2062
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
1925
2063
  # @return [String]
1926
2064
  #
2065
+ # @!attribute [rw] worm
2066
+ # Set to `TRUE` if the tape you are creating is to be configured as a
2067
+ # write-once-read-many (WORM) tape.
2068
+ # @return [Boolean]
2069
+ #
1927
2070
  # @!attribute [rw] tags
1928
2071
  # A list of up to 50 tags that can be assigned to a virtual tape. Each
1929
2072
  # tag is a key-value pair.
@@ -1947,6 +2090,7 @@ module Aws::StorageGateway
1947
2090
  :kms_encrypted,
1948
2091
  :kms_key,
1949
2092
  :pool_id,
2093
+ :worm,
1950
2094
  :tags)
1951
2095
  SENSITIVE = []
1952
2096
  include Aws::Structure
@@ -2026,7 +2170,7 @@ module Aws::StorageGateway
2026
2170
  # One of the BandwidthType values that indicates the gateway bandwidth
2027
2171
  # rate limit to delete.
2028
2172
  #
2029
- # Valid Values: `Upload` \| `Download` \| `All`
2173
+ # Valid Values: `UPLOAD` \| `DOWNLOAD` \| `ALL`
2030
2174
  # @return [String]
2031
2175
  #
2032
2176
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteBandwidthRateLimitInput AWS API Documentation
@@ -2231,6 +2375,7 @@ module Aws::StorageGateway
2231
2375
  #
2232
2376
  # {
2233
2377
  # tape_arn: "TapeARN", # required
2378
+ # bypass_governance_retention: false,
2234
2379
  # }
2235
2380
  #
2236
2381
  # @!attribute [rw] tape_arn
@@ -2238,10 +2383,18 @@ module Aws::StorageGateway
2238
2383
  # the virtual tape shelf (VTS).
2239
2384
  # @return [String]
2240
2385
  #
2386
+ # @!attribute [rw] bypass_governance_retention
2387
+ # Set to `TRUE` to delete an archived tape that belongs to a custom
2388
+ # pool with tape retention lock. Only archived tapes with tape
2389
+ # retention lock set to `governance` can be deleted. Archived tapes
2390
+ # with tape retention lock set to `compliance` can't be deleted.
2391
+ # @return [Boolean]
2392
+ #
2241
2393
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeArchiveInput AWS API Documentation
2242
2394
  #
2243
2395
  class DeleteTapeArchiveInput < Struct.new(
2244
- :tape_arn)
2396
+ :tape_arn,
2397
+ :bypass_governance_retention)
2245
2398
  SENSITIVE = []
2246
2399
  include Aws::Structure
2247
2400
  end
@@ -2269,6 +2422,7 @@ module Aws::StorageGateway
2269
2422
  # {
2270
2423
  # gateway_arn: "GatewayARN", # required
2271
2424
  # tape_arn: "TapeARN", # required
2425
+ # bypass_governance_retention: false,
2272
2426
  # }
2273
2427
  #
2274
2428
  # @!attribute [rw] gateway_arn
@@ -2282,11 +2436,19 @@ module Aws::StorageGateway
2282
2436
  # The Amazon Resource Name (ARN) of the virtual tape to delete.
2283
2437
  # @return [String]
2284
2438
  #
2439
+ # @!attribute [rw] bypass_governance_retention
2440
+ # Set to `TRUE` to delete an archived tape that belongs to a custom
2441
+ # pool with tape retention lock. Only archived tapes with tape
2442
+ # retention lock set to `governance` can be deleted. Archived tapes
2443
+ # with tape retention lock set to `compliance` can't be deleted.
2444
+ # @return [Boolean]
2445
+ #
2285
2446
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeInput AWS API Documentation
2286
2447
  #
2287
2448
  class DeleteTapeInput < Struct.new(
2288
2449
  :gateway_arn,
2289
- :tape_arn)
2450
+ :tape_arn,
2451
+ :bypass_governance_retention)
2290
2452
  SENSITIVE = []
2291
2453
  include Aws::Structure
2292
2454
  end
@@ -2305,6 +2467,38 @@ module Aws::StorageGateway
2305
2467
  include Aws::Structure
2306
2468
  end
2307
2469
 
2470
+ # @note When making an API call, you may pass DeleteTapePoolInput
2471
+ # data as a hash:
2472
+ #
2473
+ # {
2474
+ # pool_arn: "PoolARN", # required
2475
+ # }
2476
+ #
2477
+ # @!attribute [rw] pool_arn
2478
+ # The Amazon Resource Name (ARN) of the custom tape pool to delete.
2479
+ # @return [String]
2480
+ #
2481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapePoolInput AWS API Documentation
2482
+ #
2483
+ class DeleteTapePoolInput < Struct.new(
2484
+ :pool_arn)
2485
+ SENSITIVE = []
2486
+ include Aws::Structure
2487
+ end
2488
+
2489
+ # @!attribute [rw] pool_arn
2490
+ # The Amazon Resource Name (ARN) of the custom tape pool being
2491
+ # deleted.
2492
+ # @return [String]
2493
+ #
2494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapePoolOutput AWS API Documentation
2495
+ #
2496
+ class DeleteTapePoolOutput < Struct.new(
2497
+ :pool_arn)
2498
+ SENSITIVE = []
2499
+ include Aws::Structure
2500
+ end
2501
+
2308
2502
  # A JSON object containing the DeleteVolumeInput$VolumeARN to delete.
2309
2503
  #
2310
2504
  # @note When making an API call, you may pass DeleteVolumeInput
@@ -2704,7 +2898,7 @@ module Aws::StorageGateway
2704
2898
  # @return [String]
2705
2899
  #
2706
2900
  # @!attribute [rw] cloud_watch_log_group_arn
2707
- # The Amazon Resource Name (ARN) of the Amazon CloudWatch Log Group
2901
+ # The Amazon Resource Name (ARN) of the Amazon CloudWatch log group
2708
2902
  # that is used to monitor events in the gateway.
2709
2903
  # @return [String]
2710
2904
  #
@@ -2994,6 +3188,10 @@ module Aws::StorageGateway
2994
3188
  # Microsoft Windows 8, Windows Server 2012 or newer.
2995
3189
  # @return [String]
2996
3190
  #
3191
+ # @!attribute [rw] file_shares_visible
3192
+ # The shares on this gateway appear when listing shares.
3193
+ # @return [Boolean]
3194
+ #
2997
3195
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DescribeSMBSettingsOutput AWS API Documentation
2998
3196
  #
2999
3197
  class DescribeSMBSettingsOutput < Struct.new(
@@ -3001,7 +3199,8 @@ module Aws::StorageGateway
3001
3199
  :domain_name,
3002
3200
  :active_directory_status,
3003
3201
  :smb_guest_password_set,
3004
- :smb_security_strategy)
3202
+ :smb_security_strategy,
3203
+ :file_shares_visible)
3005
3204
  SENSITIVE = []
3006
3205
  include Aws::Structure
3007
3206
  end
@@ -4213,7 +4412,7 @@ module Aws::StorageGateway
4213
4412
  # ListTagsForResourceOutput
4214
4413
  #
4215
4414
  # @!attribute [rw] resource_arn
4216
- # he Amazon Resource Name (ARN) of the resource for which you want to
4415
+ # The Amazon Resource Name (ARN) of the resource for which you want to
4217
4416
  # list tags.
4218
4417
  # @return [String]
4219
4418
  #
@@ -4236,6 +4435,63 @@ module Aws::StorageGateway
4236
4435
  include Aws::Structure
4237
4436
  end
4238
4437
 
4438
+ # @note When making an API call, you may pass ListTapePoolsInput
4439
+ # data as a hash:
4440
+ #
4441
+ # {
4442
+ # pool_arns: ["PoolARN"],
4443
+ # marker: "Marker",
4444
+ # limit: 1,
4445
+ # }
4446
+ #
4447
+ # @!attribute [rw] pool_arns
4448
+ # The Amazon Resource Name (ARN) of each of the custom tape pools you
4449
+ # want to list. If you don't specify a custom tape pool ARN, the
4450
+ # response lists all custom tape pools.
4451
+ # @return [Array<String>]
4452
+ #
4453
+ # @!attribute [rw] marker
4454
+ # A string that indicates the position at which to begin the returned
4455
+ # list of tape pools.
4456
+ # @return [String]
4457
+ #
4458
+ # @!attribute [rw] limit
4459
+ # An optional number limit for the tape pools in the list returned by
4460
+ # this call.
4461
+ # @return [Integer]
4462
+ #
4463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ListTapePoolsInput AWS API Documentation
4464
+ #
4465
+ class ListTapePoolsInput < Struct.new(
4466
+ :pool_arns,
4467
+ :marker,
4468
+ :limit)
4469
+ SENSITIVE = []
4470
+ include Aws::Structure
4471
+ end
4472
+
4473
+ # @!attribute [rw] pool_infos
4474
+ # An array of `PoolInfo` objects, where each object describes a single
4475
+ # custom tape pool. If there are no custom tape pools, the `PoolInfos`
4476
+ # is an empty array.
4477
+ # @return [Array<Types::PoolInfo>]
4478
+ #
4479
+ # @!attribute [rw] marker
4480
+ # A string that indicates the position at which to begin the returned
4481
+ # list of tape pools. Use the marker in your next request to continue
4482
+ # pagination of tape pools. If there are no more tape pools to list,
4483
+ # this element does not appear in the response body.
4484
+ # @return [String]
4485
+ #
4486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/ListTapePoolsOutput AWS API Documentation
4487
+ #
4488
+ class ListTapePoolsOutput < Struct.new(
4489
+ :pool_infos,
4490
+ :marker)
4491
+ SENSITIVE = []
4492
+ include Aws::Structure
4493
+ end
4494
+
4239
4495
  # A JSON object that contains one or more of the following fields:
4240
4496
  #
4241
4497
  # * ListTapesInput$Limit
@@ -4655,6 +4911,10 @@ module Aws::StorageGateway
4655
4911
  # Refresh cache information.
4656
4912
  # @return [Types::CacheAttributes]
4657
4913
  #
4914
+ # @!attribute [rw] notification_policy
4915
+ # The notification policy of the file share.
4916
+ # @return [String]
4917
+ #
4658
4918
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/NFSFileShareInfo AWS API Documentation
4659
4919
  #
4660
4920
  class NFSFileShareInfo < Struct.new(
@@ -4677,7 +4937,8 @@ module Aws::StorageGateway
4677
4937
  :requester_pays,
4678
4938
  :tags,
4679
4939
  :file_share_name,
4680
- :cache_attributes)
4940
+ :cache_attributes,
4941
+ :notification_policy)
4681
4942
  SENSITIVE = []
4682
4943
  include Aws::Structure
4683
4944
  end
@@ -4748,6 +5009,57 @@ module Aws::StorageGateway
4748
5009
  include Aws::Structure
4749
5010
  end
4750
5011
 
5012
+ # Describes a custom tape pool.
5013
+ #
5014
+ # @!attribute [rw] pool_arn
5015
+ # The Amazon Resource Name (ARN) of the custom tape pool. Use the
5016
+ # ListTapePools operation to return a list of custom tape pools for
5017
+ # your account and AWS Region.
5018
+ # @return [String]
5019
+ #
5020
+ # @!attribute [rw] pool_name
5021
+ # The name of the custom tape pool. `PoolName` can use all ASCII
5022
+ # characters, except '/' and '\\'.
5023
+ # @return [String]
5024
+ #
5025
+ # @!attribute [rw] storage_class
5026
+ # The storage class that is associated with the custom pool. When you
5027
+ # use your backup application to eject the tape, the tape is archived
5028
+ # directly into the storage class (S3 Glacier or S3 Glacier Deep
5029
+ # Archive) that corresponds to the pool.
5030
+ # @return [String]
5031
+ #
5032
+ # @!attribute [rw] retention_lock_type
5033
+ # Tape retention lock type, which can be configured in two modes. When
5034
+ # configured in governance mode, AWS accounts with specific IAM
5035
+ # permissions are authorized to remove the tape retention lock from
5036
+ # archived virtual tapes. When configured in compliance mode, the tape
5037
+ # retention lock cannot be removed by any user, including the root AWS
5038
+ # account.
5039
+ # @return [String]
5040
+ #
5041
+ # @!attribute [rw] retention_lock_time_in_days
5042
+ # Tape retention lock time is set in days. Tape retention lock can be
5043
+ # enabled for up to 100 years (36,500 days).
5044
+ # @return [Integer]
5045
+ #
5046
+ # @!attribute [rw] pool_status
5047
+ # Status of the custom tape pool. Pool can be `ACTIVE` or `DELETED`.
5048
+ # @return [String]
5049
+ #
5050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/PoolInfo AWS API Documentation
5051
+ #
5052
+ class PoolInfo < Struct.new(
5053
+ :pool_arn,
5054
+ :pool_name,
5055
+ :storage_class,
5056
+ :retention_lock_type,
5057
+ :retention_lock_time_in_days,
5058
+ :pool_status)
5059
+ SENSITIVE = []
5060
+ include Aws::Structure
5061
+ end
5062
+
4751
5063
  # RefreshCacheInput
4752
5064
  #
4753
5065
  # @note When making an API call, you may pass RefreshCacheInput
@@ -5102,6 +5414,10 @@ module Aws::StorageGateway
5102
5414
  # [1]: https://docs.aws.amazon.com/storagegateway/latest/userguide/smb-acl.html
5103
5415
  # @return [Boolean]
5104
5416
  #
5417
+ # @!attribute [rw] access_based_enumeration
5418
+ # Indicates whether `AccessBasedEnumeration` is enabled.
5419
+ # @return [Boolean]
5420
+ #
5105
5421
  # @!attribute [rw] admin_user_list
5106
5422
  # A list of users or groups in the Active Directory that have
5107
5423
  # administrator rights to the file share. A group must be prefixed
@@ -5165,6 +5481,10 @@ module Aws::StorageGateway
5165
5481
  # Refresh cache information.
5166
5482
  # @return [Types::CacheAttributes]
5167
5483
  #
5484
+ # @!attribute [rw] notification_policy
5485
+ # The notification policy of the file share.
5486
+ # @return [String]
5487
+ #
5168
5488
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/SMBFileShareInfo AWS API Documentation
5169
5489
  #
5170
5490
  class SMBFileShareInfo < Struct.new(
@@ -5183,6 +5503,7 @@ module Aws::StorageGateway
5183
5503
  :guess_mime_type_enabled,
5184
5504
  :requester_pays,
5185
5505
  :smbacl_enabled,
5506
+ :access_based_enumeration,
5186
5507
  :admin_user_list,
5187
5508
  :valid_user_list,
5188
5509
  :invalid_user_list,
@@ -5191,7 +5512,8 @@ module Aws::StorageGateway
5191
5512
  :case_sensitivity,
5192
5513
  :tags,
5193
5514
  :file_share_name,
5194
- :cache_attributes)
5515
+ :cache_attributes,
5516
+ :notification_policy)
5195
5517
  SENSITIVE = []
5196
5518
  include Aws::Structure
5197
5519
  end
@@ -5448,7 +5770,7 @@ module Aws::StorageGateway
5448
5770
  # @return [String]
5449
5771
  #
5450
5772
  # @!attribute [rw] volume_id
5451
- # The unique identifier of the volume, e.g. vol-AE4B946D.
5773
+ # The unique identifier of the volume, e.g., vol-AE4B946D.
5452
5774
  # @return [String]
5453
5775
  #
5454
5776
  # @!attribute [rw] volume_type
@@ -5508,7 +5830,7 @@ module Aws::StorageGateway
5508
5830
  #
5509
5831
  # @!attribute [rw] created_date
5510
5832
  # The date the volume was created. Volumes created prior to March 28,
5511
- # 2017 don’t have this time stamp.
5833
+ # 2017 don’t have this timestamp.
5512
5834
  # @return [Time]
5513
5835
  #
5514
5836
  # @!attribute [rw] volume_used_in_bytes
@@ -5655,6 +5977,20 @@ module Aws::StorageGateway
5655
5977
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
5656
5978
  # @return [String]
5657
5979
  #
5980
+ # @!attribute [rw] worm
5981
+ # If the tape is archived as write-once-read-many (WORM), this value
5982
+ # is `true`.
5983
+ # @return [Boolean]
5984
+ #
5985
+ # @!attribute [rw] retention_start_date
5986
+ # The date that the tape is first archived with tape retention lock
5987
+ # enabled.
5988
+ # @return [Time]
5989
+ #
5990
+ # @!attribute [rw] pool_entry_date
5991
+ # The date that the tape enters a custom tape pool.
5992
+ # @return [Time]
5993
+ #
5658
5994
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/Tape AWS API Documentation
5659
5995
  #
5660
5996
  class Tape < Struct.new(
@@ -5667,7 +6003,10 @@ module Aws::StorageGateway
5667
6003
  :progress,
5668
6004
  :tape_used_in_bytes,
5669
6005
  :kms_key,
5670
- :pool_id)
6006
+ :pool_id,
6007
+ :worm,
6008
+ :retention_start_date,
6009
+ :pool_entry_date)
5671
6010
  SENSITIVE = []
5672
6011
  include Aws::Structure
5673
6012
  end
@@ -5694,7 +6033,7 @@ module Aws::StorageGateway
5694
6033
  # @!attribute [rw] completion_time
5695
6034
  # The time that the archiving of the virtual tape was completed.
5696
6035
  #
5697
- # The default time stamp format is in the ISO8601 extended
6036
+ # The default timestamp format is in the ISO8601 extended
5698
6037
  # YYYY-MM-DD'T'HH:MM:SS'Z' format.
5699
6038
  # @return [Time]
5700
6039
  #
@@ -5732,6 +6071,23 @@ module Aws::StorageGateway
5732
6071
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
5733
6072
  # @return [String]
5734
6073
  #
6074
+ # @!attribute [rw] worm
6075
+ # Set to `true` if the archived tape is stored as write-once-read-many
6076
+ # (WORM).
6077
+ # @return [Boolean]
6078
+ #
6079
+ # @!attribute [rw] retention_start_date
6080
+ # If the archived tape is subject to tape retention lock, the date
6081
+ # that the archived tape started being retained.
6082
+ # @return [Time]
6083
+ #
6084
+ # @!attribute [rw] pool_entry_date
6085
+ # The time that the tape entered the custom tape pool.
6086
+ #
6087
+ # The default timestamp format is in the ISO8601 extended
6088
+ # YYYY-MM-DD'T'HH:MM:SS'Z' format.
6089
+ # @return [Time]
6090
+ #
5735
6091
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/TapeArchive AWS API Documentation
5736
6092
  #
5737
6093
  class TapeArchive < Struct.new(
@@ -5744,7 +6100,10 @@ module Aws::StorageGateway
5744
6100
  :tape_status,
5745
6101
  :tape_used_in_bytes,
5746
6102
  :kms_key,
5747
- :pool_id)
6103
+ :pool_id,
6104
+ :worm,
6105
+ :retention_start_date,
6106
+ :pool_entry_date)
5748
6107
  SENSITIVE = []
5749
6108
  include Aws::Structure
5750
6109
  end
@@ -5784,6 +6143,15 @@ module Aws::StorageGateway
5784
6143
  # Valid Values: `GLACIER` \| `DEEP_ARCHIVE`
5785
6144
  # @return [String]
5786
6145
  #
6146
+ # @!attribute [rw] retention_start_date
6147
+ # The date that the tape became subject to tape retention lock.
6148
+ # @return [Time]
6149
+ #
6150
+ # @!attribute [rw] pool_entry_date
6151
+ # The date that the tape entered the custom tape pool with tape
6152
+ # retention lock enabled.
6153
+ # @return [Time]
6154
+ #
5787
6155
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/TapeInfo AWS API Documentation
5788
6156
  #
5789
6157
  class TapeInfo < Struct.new(
@@ -5792,7 +6160,9 @@ module Aws::StorageGateway
5792
6160
  :tape_size_in_bytes,
5793
6161
  :tape_status,
5794
6162
  :gateway_arn,
5795
- :pool_id)
6163
+ :pool_id,
6164
+ :retention_start_date,
6165
+ :pool_entry_date)
5796
6166
  SENSITIVE = []
5797
6167
  include Aws::Structure
5798
6168
  end
@@ -5807,7 +6177,7 @@ module Aws::StorageGateway
5807
6177
  # The time when the point-in-time view of the virtual tape was
5808
6178
  # replicated for later recovery.
5809
6179
  #
5810
- # The default time stamp format of the tape recovery point time is in
6180
+ # The default timestamp format of the tape recovery point time is in
5811
6181
  # the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.
5812
6182
  # @return [Time]
5813
6183
  #
@@ -5840,6 +6210,7 @@ module Aws::StorageGateway
5840
6210
  # pool_id: "PoolId", # required
5841
6211
  # tape_size_in_bytes: 1, # required
5842
6212
  # minimum_num_tapes: 1, # required
6213
+ # worm: false,
5843
6214
  # },
5844
6215
  # ],
5845
6216
  # gateway_arn: "GatewayARN", # required
@@ -6048,7 +6419,7 @@ module Aws::StorageGateway
6048
6419
  # The Amazon Resource Name (ARN) of the Amazon CloudWatch log group
6049
6420
  # that you want to use to monitor and log events in the gateway.
6050
6421
  #
6051
- # For more information, see [What is Amazon CloudWatch logs?][1].
6422
+ # For more information, see [What is Amazon CloudWatch Logs?][1]
6052
6423
  #
6053
6424
  #
6054
6425
  #
@@ -6236,6 +6607,7 @@ module Aws::StorageGateway
6236
6607
  # cache_attributes: {
6237
6608
  # cache_stale_timeout_in_seconds: 1,
6238
6609
  # },
6610
+ # notification_policy: "NotificationPolicy",
6239
6611
  # }
6240
6612
  #
6241
6613
  # @!attribute [rw] file_share_arn
@@ -6338,6 +6710,10 @@ module Aws::StorageGateway
6338
6710
  # Refresh cache information.
6339
6711
  # @return [Types::CacheAttributes]
6340
6712
  #
6713
+ # @!attribute [rw] notification_policy
6714
+ # The notification policy of the file share.
6715
+ # @return [String]
6716
+ #
6341
6717
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateNFSFileShareInput AWS API Documentation
6342
6718
  #
6343
6719
  class UpdateNFSFileShareInput < Struct.new(
@@ -6353,7 +6729,8 @@ module Aws::StorageGateway
6353
6729
  :guess_mime_type_enabled,
6354
6730
  :requester_pays,
6355
6731
  :file_share_name,
6356
- :cache_attributes)
6732
+ :cache_attributes,
6733
+ :notification_policy)
6357
6734
  SENSITIVE = []
6358
6735
  include Aws::Structure
6359
6736
  end
@@ -6387,6 +6764,7 @@ module Aws::StorageGateway
6387
6764
  # guess_mime_type_enabled: false,
6388
6765
  # requester_pays: false,
6389
6766
  # smbacl_enabled: false,
6767
+ # access_based_enumeration: false,
6390
6768
  # admin_user_list: ["FileShareUser"],
6391
6769
  # valid_user_list: ["FileShareUser"],
6392
6770
  # invalid_user_list: ["FileShareUser"],
@@ -6396,6 +6774,7 @@ module Aws::StorageGateway
6396
6774
  # cache_attributes: {
6397
6775
  # cache_stale_timeout_in_seconds: 1,
6398
6776
  # },
6777
+ # notification_policy: "NotificationPolicy",
6399
6778
  # }
6400
6779
  #
6401
6780
  # @!attribute [rw] file_share_arn
@@ -6481,6 +6860,11 @@ module Aws::StorageGateway
6481
6860
  # [1]: https://docs.aws.amazon.com/storagegateway/latest/userguide/smb-acl.html
6482
6861
  # @return [Boolean]
6483
6862
  #
6863
+ # @!attribute [rw] access_based_enumeration
6864
+ # The files and folders on this share will only be visible to users
6865
+ # with read access.
6866
+ # @return [Boolean]
6867
+ #
6484
6868
  # @!attribute [rw] admin_user_list
6485
6869
  # A list of users or groups in the Active Directory that have
6486
6870
  # administrator rights to the file share. A group must be prefixed
@@ -6530,6 +6914,10 @@ module Aws::StorageGateway
6530
6914
  # Refresh cache information.
6531
6915
  # @return [Types::CacheAttributes]
6532
6916
  #
6917
+ # @!attribute [rw] notification_policy
6918
+ # The notification policy of the file share.
6919
+ # @return [String]
6920
+ #
6533
6921
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateSMBFileShareInput AWS API Documentation
6534
6922
  #
6535
6923
  class UpdateSMBFileShareInput < Struct.new(
@@ -6542,13 +6930,15 @@ module Aws::StorageGateway
6542
6930
  :guess_mime_type_enabled,
6543
6931
  :requester_pays,
6544
6932
  :smbacl_enabled,
6933
+ :access_based_enumeration,
6545
6934
  :admin_user_list,
6546
6935
  :valid_user_list,
6547
6936
  :invalid_user_list,
6548
6937
  :audit_destination_arn,
6549
6938
  :case_sensitivity,
6550
6939
  :file_share_name,
6551
- :cache_attributes)
6940
+ :cache_attributes,
6941
+ :notification_policy)
6552
6942
  SENSITIVE = []
6553
6943
  include Aws::Structure
6554
6944
  end
@@ -6567,6 +6957,47 @@ module Aws::StorageGateway
6567
6957
  include Aws::Structure
6568
6958
  end
6569
6959
 
6960
+ # @note When making an API call, you may pass UpdateSMBFileShareVisibilityInput
6961
+ # data as a hash:
6962
+ #
6963
+ # {
6964
+ # gateway_arn: "GatewayARN", # required
6965
+ # file_shares_visible: false, # required
6966
+ # }
6967
+ #
6968
+ # @!attribute [rw] gateway_arn
6969
+ # The Amazon Resource Name (ARN) of the gateway. Use the ListGateways
6970
+ # operation to return a list of gateways for your account and AWS
6971
+ # Region.
6972
+ # @return [String]
6973
+ #
6974
+ # @!attribute [rw] file_shares_visible
6975
+ # The shares on this gateway appear when listing shares.
6976
+ # @return [Boolean]
6977
+ #
6978
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateSMBFileShareVisibilityInput AWS API Documentation
6979
+ #
6980
+ class UpdateSMBFileShareVisibilityInput < Struct.new(
6981
+ :gateway_arn,
6982
+ :file_shares_visible)
6983
+ SENSITIVE = []
6984
+ include Aws::Structure
6985
+ end
6986
+
6987
+ # @!attribute [rw] gateway_arn
6988
+ # The Amazon Resource Name (ARN) of the gateway. Use the ListGateways
6989
+ # operation to return a list of gateways for your account and AWS
6990
+ # Region.
6991
+ # @return [String]
6992
+ #
6993
+ # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateSMBFileShareVisibilityOutput AWS API Documentation
6994
+ #
6995
+ class UpdateSMBFileShareVisibilityOutput < Struct.new(
6996
+ :gateway_arn)
6997
+ SENSITIVE = []
6998
+ include Aws::Structure
6999
+ end
7000
+
6570
7001
  # @note When making an API call, you may pass UpdateSMBSecurityStrategyInput
6571
7002
  # data as a hash:
6572
7003
  #
@@ -6727,7 +7158,7 @@ module Aws::StorageGateway
6727
7158
  # @!attribute [rw] device_type
6728
7159
  # The type of medium changer you want to select.
6729
7160
  #
6730
- # Valid Values: `STK-L700` \| `AWS-Gateway-VTL`
7161
+ # Valid Values: `STK-L700` \| `AWS-Gateway-VTL` \| `IBM-03584L32-0402`
6731
7162
  # @return [String]
6732
7163
  #
6733
7164
  # @see http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/UpdateVTLDeviceTypeInput AWS API Documentation