aws-sdk-storagegateway 1.46.0 → 1.51.0

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