aws-sdk-appstream 1.56.0 → 1.60.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.
@@ -44,6 +44,59 @@ module Aws::AppStream
44
44
  include Aws::Structure
45
45
  end
46
46
 
47
+ # Describes an app block.
48
+ #
49
+ # App blocks are an Amazon AppStream 2.0 resource that stores the
50
+ # details about the virtual hard disk in an S3 bucket. It also stores
51
+ # the setup script with details about how to mount the virtual hard
52
+ # disk. The virtual hard disk includes the application binaries and
53
+ # other files necessary to launch your applications. Multiple
54
+ # applications can be assigned to a single app block.
55
+ #
56
+ # This is only supported for Elastic fleets.
57
+ #
58
+ # @!attribute [rw] name
59
+ # The name of the app block.
60
+ # @return [String]
61
+ #
62
+ # @!attribute [rw] arn
63
+ # The ARN of the app block.
64
+ # @return [String]
65
+ #
66
+ # @!attribute [rw] description
67
+ # The description of the app block.
68
+ # @return [String]
69
+ #
70
+ # @!attribute [rw] display_name
71
+ # The display name of the app block.
72
+ # @return [String]
73
+ #
74
+ # @!attribute [rw] source_s3_location
75
+ # The source S3 location of the app block.
76
+ # @return [Types::S3Location]
77
+ #
78
+ # @!attribute [rw] setup_script_details
79
+ # The setup script details of the app block.
80
+ # @return [Types::ScriptDetails]
81
+ #
82
+ # @!attribute [rw] created_time
83
+ # The created time of the app block.
84
+ # @return [Time]
85
+ #
86
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/AppBlock AWS API Documentation
87
+ #
88
+ class AppBlock < Struct.new(
89
+ :name,
90
+ :arn,
91
+ :description,
92
+ :display_name,
93
+ :source_s3_location,
94
+ :setup_script_details,
95
+ :created_time)
96
+ SENSITIVE = []
97
+ include Aws::Structure
98
+ end
99
+
47
100
  # Describes an application in the application catalog.
48
101
  #
49
102
  # @!attribute [rw] name
@@ -75,6 +128,38 @@ module Aws::AppStream
75
128
  # Additional attributes that describe the application.
76
129
  # @return [Hash<String,String>]
77
130
  #
131
+ # @!attribute [rw] working_directory
132
+ # The working directory for the application.
133
+ # @return [String]
134
+ #
135
+ # @!attribute [rw] description
136
+ # The description of the application.
137
+ # @return [String]
138
+ #
139
+ # @!attribute [rw] arn
140
+ # The ARN of the application.
141
+ # @return [String]
142
+ #
143
+ # @!attribute [rw] app_block_arn
144
+ # The app block ARN of the application.
145
+ # @return [String]
146
+ #
147
+ # @!attribute [rw] icon_s3_location
148
+ # The S3 location of the application icon.
149
+ # @return [Types::S3Location]
150
+ #
151
+ # @!attribute [rw] platforms
152
+ # The platforms on which the application can run.
153
+ # @return [Array<String>]
154
+ #
155
+ # @!attribute [rw] instance_families
156
+ # The instance families for the application.
157
+ # @return [Array<String>]
158
+ #
159
+ # @!attribute [rw] created_time
160
+ # The time at which the application was created within the app block.
161
+ # @return [Time]
162
+ #
78
163
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/Application AWS API Documentation
79
164
  #
80
165
  class Application < Struct.new(
@@ -84,7 +169,34 @@ module Aws::AppStream
84
169
  :launch_path,
85
170
  :launch_parameters,
86
171
  :enabled,
87
- :metadata)
172
+ :metadata,
173
+ :working_directory,
174
+ :description,
175
+ :arn,
176
+ :app_block_arn,
177
+ :icon_s3_location,
178
+ :platforms,
179
+ :instance_families,
180
+ :created_time)
181
+ SENSITIVE = []
182
+ include Aws::Structure
183
+ end
184
+
185
+ # Describes the application fleet association.
186
+ #
187
+ # @!attribute [rw] fleet_name
188
+ # The name of the fleet associated with the application.
189
+ # @return [String]
190
+ #
191
+ # @!attribute [rw] application_arn
192
+ # The ARN of the application associated with the fleet.
193
+ # @return [String]
194
+ #
195
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/ApplicationFleetAssociation AWS API Documentation
196
+ #
197
+ class ApplicationFleetAssociation < Struct.new(
198
+ :fleet_name,
199
+ :application_arn)
88
200
  SENSITIVE = []
89
201
  include Aws::Structure
90
202
  end
@@ -149,6 +261,45 @@ module Aws::AppStream
149
261
  include Aws::Structure
150
262
  end
151
263
 
264
+ # @note When making an API call, you may pass AssociateApplicationFleetRequest
265
+ # data as a hash:
266
+ #
267
+ # {
268
+ # fleet_name: "Name", # required
269
+ # application_arn: "Arn", # required
270
+ # }
271
+ #
272
+ # @!attribute [rw] fleet_name
273
+ # The name of the fleet.
274
+ # @return [String]
275
+ #
276
+ # @!attribute [rw] application_arn
277
+ # The ARN of the application.
278
+ # @return [String]
279
+ #
280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/AssociateApplicationFleetRequest AWS API Documentation
281
+ #
282
+ class AssociateApplicationFleetRequest < Struct.new(
283
+ :fleet_name,
284
+ :application_arn)
285
+ SENSITIVE = []
286
+ include Aws::Structure
287
+ end
288
+
289
+ # @!attribute [rw] application_fleet_association
290
+ # If fleet name is specified, this returns the list of applications
291
+ # that are associated to it. If application ARN is specified, this
292
+ # returns the list of fleets to which it is associated.
293
+ # @return [Types::ApplicationFleetAssociation]
294
+ #
295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/AssociateApplicationFleetResult AWS API Documentation
296
+ #
297
+ class AssociateApplicationFleetResult < Struct.new(
298
+ :application_fleet_association)
299
+ SENSITIVE = []
300
+ include Aws::Structure
301
+ end
302
+
152
303
  # @note When making an API call, you may pass AssociateFleetRequest
153
304
  # data as a hash:
154
305
  #
@@ -373,6 +524,181 @@ module Aws::AppStream
373
524
  include Aws::Structure
374
525
  end
375
526
 
527
+ # @note When making an API call, you may pass CreateAppBlockRequest
528
+ # data as a hash:
529
+ #
530
+ # {
531
+ # name: "Name", # required
532
+ # description: "Description",
533
+ # display_name: "DisplayName",
534
+ # source_s3_location: { # required
535
+ # s3_bucket: "S3Bucket", # required
536
+ # s3_key: "S3Key", # required
537
+ # },
538
+ # setup_script_details: { # required
539
+ # script_s3_location: { # required
540
+ # s3_bucket: "S3Bucket", # required
541
+ # s3_key: "S3Key", # required
542
+ # },
543
+ # executable_path: "String", # required
544
+ # executable_parameters: "String",
545
+ # timeout_in_seconds: 1, # required
546
+ # },
547
+ # tags: {
548
+ # "TagKey" => "TagValue",
549
+ # },
550
+ # }
551
+ #
552
+ # @!attribute [rw] name
553
+ # The name of the app block.
554
+ # @return [String]
555
+ #
556
+ # @!attribute [rw] description
557
+ # The description of the app block.
558
+ # @return [String]
559
+ #
560
+ # @!attribute [rw] display_name
561
+ # The display name of the app block. This is not displayed to the
562
+ # user.
563
+ # @return [String]
564
+ #
565
+ # @!attribute [rw] source_s3_location
566
+ # The source S3 location of the app block.
567
+ # @return [Types::S3Location]
568
+ #
569
+ # @!attribute [rw] setup_script_details
570
+ # The setup script details of the app block.
571
+ # @return [Types::ScriptDetails]
572
+ #
573
+ # @!attribute [rw] tags
574
+ # The tags assigned to the app block.
575
+ # @return [Hash<String,String>]
576
+ #
577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateAppBlockRequest AWS API Documentation
578
+ #
579
+ class CreateAppBlockRequest < Struct.new(
580
+ :name,
581
+ :description,
582
+ :display_name,
583
+ :source_s3_location,
584
+ :setup_script_details,
585
+ :tags)
586
+ SENSITIVE = []
587
+ include Aws::Structure
588
+ end
589
+
590
+ # @!attribute [rw] app_block
591
+ # The app block.
592
+ # @return [Types::AppBlock]
593
+ #
594
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateAppBlockResult AWS API Documentation
595
+ #
596
+ class CreateAppBlockResult < Struct.new(
597
+ :app_block)
598
+ SENSITIVE = []
599
+ include Aws::Structure
600
+ end
601
+
602
+ # @note When making an API call, you may pass CreateApplicationRequest
603
+ # data as a hash:
604
+ #
605
+ # {
606
+ # name: "Name", # required
607
+ # display_name: "DisplayName",
608
+ # description: "Description",
609
+ # icon_s3_location: { # required
610
+ # s3_bucket: "S3Bucket", # required
611
+ # s3_key: "S3Key", # required
612
+ # },
613
+ # launch_path: "String", # required
614
+ # working_directory: "String",
615
+ # launch_parameters: "String",
616
+ # platforms: ["WINDOWS"], # required, accepts WINDOWS, WINDOWS_SERVER_2016, WINDOWS_SERVER_2019, AMAZON_LINUX2
617
+ # instance_families: ["String"], # required
618
+ # app_block_arn: "Arn", # required
619
+ # tags: {
620
+ # "TagKey" => "TagValue",
621
+ # },
622
+ # }
623
+ #
624
+ # @!attribute [rw] name
625
+ # The name of the application. This name is visible to users when
626
+ # display name is not specified.
627
+ # @return [String]
628
+ #
629
+ # @!attribute [rw] display_name
630
+ # The display name of the application. This name is visible to users
631
+ # in the application catalog.
632
+ # @return [String]
633
+ #
634
+ # @!attribute [rw] description
635
+ # The description of the application.
636
+ # @return [String]
637
+ #
638
+ # @!attribute [rw] icon_s3_location
639
+ # The location in S3 of the application icon.
640
+ # @return [Types::S3Location]
641
+ #
642
+ # @!attribute [rw] launch_path
643
+ # The launch path of the application.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] working_directory
647
+ # The working directory of the application.
648
+ # @return [String]
649
+ #
650
+ # @!attribute [rw] launch_parameters
651
+ # The launch parameters of the application.
652
+ # @return [String]
653
+ #
654
+ # @!attribute [rw] platforms
655
+ # The platforms the application supports. WINDOWS\_SERVER\_2019 and
656
+ # AMAZON\_LINUX2 are supported for Elastic fleets.
657
+ # @return [Array<String>]
658
+ #
659
+ # @!attribute [rw] instance_families
660
+ # The instance families the application supports. Valid values are
661
+ # GENERAL\_PURPOSE and GRAPHICS\_G4.
662
+ # @return [Array<String>]
663
+ #
664
+ # @!attribute [rw] app_block_arn
665
+ # The app block ARN to which the application should be associated
666
+ # @return [String]
667
+ #
668
+ # @!attribute [rw] tags
669
+ # The tags assigned to the application.
670
+ # @return [Hash<String,String>]
671
+ #
672
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateApplicationRequest AWS API Documentation
673
+ #
674
+ class CreateApplicationRequest < Struct.new(
675
+ :name,
676
+ :display_name,
677
+ :description,
678
+ :icon_s3_location,
679
+ :launch_path,
680
+ :working_directory,
681
+ :launch_parameters,
682
+ :platforms,
683
+ :instance_families,
684
+ :app_block_arn,
685
+ :tags)
686
+ SENSITIVE = []
687
+ include Aws::Structure
688
+ end
689
+
690
+ # @!attribute [rw] application
691
+ # Describes an application in the application catalog.
692
+ # @return [Types::Application]
693
+ #
694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateApplicationResult AWS API Documentation
695
+ #
696
+ class CreateApplicationResult < Struct.new(
697
+ :application)
698
+ SENSITIVE = []
699
+ include Aws::Structure
700
+ end
701
+
376
702
  # @note When making an API call, you may pass CreateDirectoryConfigRequest
377
703
  # data as a hash:
378
704
  #
@@ -430,8 +756,8 @@ module Aws::AppStream
430
756
  # image_name: "String",
431
757
  # image_arn: "Arn",
432
758
  # instance_type: "String", # required
433
- # fleet_type: "ALWAYS_ON", # accepts ALWAYS_ON, ON_DEMAND
434
- # compute_capacity: { # required
759
+ # fleet_type: "ALWAYS_ON", # accepts ALWAYS_ON, ON_DEMAND, ELASTIC
760
+ # compute_capacity: {
435
761
  # desired_instances: 1, # required
436
762
  # },
437
763
  # vpc_config: {
@@ -453,6 +779,9 @@ module Aws::AppStream
453
779
  # idle_disconnect_timeout_in_seconds: 1,
454
780
  # iam_role_arn: "Arn",
455
781
  # stream_view: "APP", # accepts APP, DESKTOP
782
+ # platform: "WINDOWS", # accepts WINDOWS, WINDOWS_SERVER_2016, WINDOWS_SERVER_2019, AMAZON_LINUX2
783
+ # max_concurrent_sessions: 1,
784
+ # usb_device_filter_strings: ["UsbDeviceFilterString"],
456
785
  # }
457
786
  #
458
787
  # @!attribute [rw] name
@@ -536,6 +865,12 @@ module Aws::AppStream
536
865
  # * stream.graphics-pro.8xlarge
537
866
  #
538
867
  # * stream.graphics-pro.16xlarge
868
+ #
869
+ # The following instance types are available for Elastic fleets:
870
+ #
871
+ # * stream.standard.small
872
+ #
873
+ # * stream.standard.medium
539
874
  # @return [String]
540
875
  #
541
876
  # @!attribute [rw] fleet_type
@@ -556,11 +891,15 @@ module Aws::AppStream
556
891
  # @return [String]
557
892
  #
558
893
  # @!attribute [rw] compute_capacity
559
- # The desired capacity for the fleet.
894
+ # The desired capacity for the fleet. This is not allowed for Elastic
895
+ # fleets. For Elastic fleets, specify MaxConcurrentSessions instead.
560
896
  # @return [Types::ComputeCapacity]
561
897
  #
562
898
  # @!attribute [rw] vpc_config
563
- # The VPC configuration for the fleet.
899
+ # The VPC configuration for the fleet. This is required for Elastic
900
+ # fleets, but not required for other fleet types. Elastic fleets
901
+ # require that you specify at least two subnets in different
902
+ # availability zones.
564
903
  # @return [Types::VpcConfig]
565
904
  #
566
905
  # @!attribute [rw] max_user_duration_in_seconds
@@ -598,7 +937,8 @@ module Aws::AppStream
598
937
  #
599
938
  # @!attribute [rw] domain_join_info
600
939
  # The name of the directory and organizational unit (OU) to use to
601
- # join the fleet to a Microsoft Active Directory domain.
940
+ # join the fleet to a Microsoft Active Directory domain. This is not
941
+ # allowed for Elastic fleets.
602
942
  # @return [Types::DomainJoinInfo]
603
943
  #
604
944
  # @!attribute [rw] tags
@@ -679,6 +1019,22 @@ module Aws::AppStream
679
1019
  # The default value is `APP`.
680
1020
  # @return [String]
681
1021
  #
1022
+ # @!attribute [rw] platform
1023
+ # The fleet platform. WINDOWS\_SERVER\_2019 and AMAZON\_LINUX2 are
1024
+ # supported for Elastic fleets.
1025
+ # @return [String]
1026
+ #
1027
+ # @!attribute [rw] max_concurrent_sessions
1028
+ # The maximum concurrent sessions of the Elastic fleet. This is
1029
+ # required for Elastic fleets, and not allowed for other fleet types.
1030
+ # @return [Integer]
1031
+ #
1032
+ # @!attribute [rw] usb_device_filter_strings
1033
+ # The USB device filter strings that specify which USB devices a user
1034
+ # can redirect to the fleet streaming session, when using the Windows
1035
+ # native client. This is allowed but not required for Elastic fleets.
1036
+ # @return [Array<String>]
1037
+ #
682
1038
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/CreateFleetRequest AWS API Documentation
683
1039
  #
684
1040
  class CreateFleetRequest < Struct.new(
@@ -698,7 +1054,10 @@ module Aws::AppStream
698
1054
  :tags,
699
1055
  :idle_disconnect_timeout_in_seconds,
700
1056
  :iam_role_arn,
701
- :stream_view)
1057
+ :stream_view,
1058
+ :platform,
1059
+ :max_concurrent_sessions,
1060
+ :usb_device_filter_strings)
702
1061
  SENSITIVE = []
703
1062
  include Aws::Structure
704
1063
  end
@@ -1380,6 +1739,52 @@ module Aws::AppStream
1380
1739
  #
1381
1740
  class CreateUserResult < Aws::EmptyStructure; end
1382
1741
 
1742
+ # @note When making an API call, you may pass DeleteAppBlockRequest
1743
+ # data as a hash:
1744
+ #
1745
+ # {
1746
+ # name: "Name", # required
1747
+ # }
1748
+ #
1749
+ # @!attribute [rw] name
1750
+ # The name of the app block.
1751
+ # @return [String]
1752
+ #
1753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DeleteAppBlockRequest AWS API Documentation
1754
+ #
1755
+ class DeleteAppBlockRequest < Struct.new(
1756
+ :name)
1757
+ SENSITIVE = []
1758
+ include Aws::Structure
1759
+ end
1760
+
1761
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DeleteAppBlockResult AWS API Documentation
1762
+ #
1763
+ class DeleteAppBlockResult < Aws::EmptyStructure; end
1764
+
1765
+ # @note When making an API call, you may pass DeleteApplicationRequest
1766
+ # data as a hash:
1767
+ #
1768
+ # {
1769
+ # name: "Name", # required
1770
+ # }
1771
+ #
1772
+ # @!attribute [rw] name
1773
+ # The name of the application.
1774
+ # @return [String]
1775
+ #
1776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DeleteApplicationRequest AWS API Documentation
1777
+ #
1778
+ class DeleteApplicationRequest < Struct.new(
1779
+ :name)
1780
+ SENSITIVE = []
1781
+ include Aws::Structure
1782
+ end
1783
+
1784
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DeleteApplicationResult AWS API Documentation
1785
+ #
1786
+ class DeleteApplicationResult < Aws::EmptyStructure; end
1787
+
1383
1788
  # @note When making an API call, you may pass DeleteDirectoryConfigRequest
1384
1789
  # data as a hash:
1385
1790
  #
@@ -1584,6 +1989,162 @@ module Aws::AppStream
1584
1989
  #
1585
1990
  class DeleteUserResult < Aws::EmptyStructure; end
1586
1991
 
1992
+ # @note When making an API call, you may pass DescribeAppBlocksRequest
1993
+ # data as a hash:
1994
+ #
1995
+ # {
1996
+ # arns: ["Arn"],
1997
+ # next_token: "String",
1998
+ # max_results: 1,
1999
+ # }
2000
+ #
2001
+ # @!attribute [rw] arns
2002
+ # The ARNs of the app blocks.
2003
+ # @return [Array<String>]
2004
+ #
2005
+ # @!attribute [rw] next_token
2006
+ # The pagination token used to retrieve the next page of results for
2007
+ # this operation.
2008
+ # @return [String]
2009
+ #
2010
+ # @!attribute [rw] max_results
2011
+ # The maximum size of each page of results.
2012
+ # @return [Integer]
2013
+ #
2014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeAppBlocksRequest AWS API Documentation
2015
+ #
2016
+ class DescribeAppBlocksRequest < Struct.new(
2017
+ :arns,
2018
+ :next_token,
2019
+ :max_results)
2020
+ SENSITIVE = []
2021
+ include Aws::Structure
2022
+ end
2023
+
2024
+ # @!attribute [rw] app_blocks
2025
+ # The app blocks in the list.
2026
+ # @return [Array<Types::AppBlock>]
2027
+ #
2028
+ # @!attribute [rw] next_token
2029
+ # The pagination token used to retrieve the next page of results for
2030
+ # this operation.
2031
+ # @return [String]
2032
+ #
2033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeAppBlocksResult AWS API Documentation
2034
+ #
2035
+ class DescribeAppBlocksResult < Struct.new(
2036
+ :app_blocks,
2037
+ :next_token)
2038
+ SENSITIVE = []
2039
+ include Aws::Structure
2040
+ end
2041
+
2042
+ # @note When making an API call, you may pass DescribeApplicationFleetAssociationsRequest
2043
+ # data as a hash:
2044
+ #
2045
+ # {
2046
+ # fleet_name: "Name",
2047
+ # application_arn: "Arn",
2048
+ # max_results: 1,
2049
+ # next_token: "String",
2050
+ # }
2051
+ #
2052
+ # @!attribute [rw] fleet_name
2053
+ # The name of the fleet.
2054
+ # @return [String]
2055
+ #
2056
+ # @!attribute [rw] application_arn
2057
+ # The ARN of the application.
2058
+ # @return [String]
2059
+ #
2060
+ # @!attribute [rw] max_results
2061
+ # The maximum size of each page of results.
2062
+ # @return [Integer]
2063
+ #
2064
+ # @!attribute [rw] next_token
2065
+ # The pagination token used to retrieve the next page of results for
2066
+ # this operation.
2067
+ # @return [String]
2068
+ #
2069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeApplicationFleetAssociationsRequest AWS API Documentation
2070
+ #
2071
+ class DescribeApplicationFleetAssociationsRequest < Struct.new(
2072
+ :fleet_name,
2073
+ :application_arn,
2074
+ :max_results,
2075
+ :next_token)
2076
+ SENSITIVE = []
2077
+ include Aws::Structure
2078
+ end
2079
+
2080
+ # @!attribute [rw] application_fleet_associations
2081
+ # The application fleet associations in the list.
2082
+ # @return [Array<Types::ApplicationFleetAssociation>]
2083
+ #
2084
+ # @!attribute [rw] next_token
2085
+ # The pagination token used to retrieve the next page of results for
2086
+ # this operation.
2087
+ # @return [String]
2088
+ #
2089
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeApplicationFleetAssociationsResult AWS API Documentation
2090
+ #
2091
+ class DescribeApplicationFleetAssociationsResult < Struct.new(
2092
+ :application_fleet_associations,
2093
+ :next_token)
2094
+ SENSITIVE = []
2095
+ include Aws::Structure
2096
+ end
2097
+
2098
+ # @note When making an API call, you may pass DescribeApplicationsRequest
2099
+ # data as a hash:
2100
+ #
2101
+ # {
2102
+ # arns: ["Arn"],
2103
+ # next_token: "String",
2104
+ # max_results: 1,
2105
+ # }
2106
+ #
2107
+ # @!attribute [rw] arns
2108
+ # The ARNs for the applications.
2109
+ # @return [Array<String>]
2110
+ #
2111
+ # @!attribute [rw] next_token
2112
+ # The pagination token used to retrieve the next page of results for
2113
+ # this operation.
2114
+ # @return [String]
2115
+ #
2116
+ # @!attribute [rw] max_results
2117
+ # The maximum size of each page of results.
2118
+ # @return [Integer]
2119
+ #
2120
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeApplicationsRequest AWS API Documentation
2121
+ #
2122
+ class DescribeApplicationsRequest < Struct.new(
2123
+ :arns,
2124
+ :next_token,
2125
+ :max_results)
2126
+ SENSITIVE = []
2127
+ include Aws::Structure
2128
+ end
2129
+
2130
+ # @!attribute [rw] applications
2131
+ # The applications in the list.
2132
+ # @return [Array<Types::Application>]
2133
+ #
2134
+ # @!attribute [rw] next_token
2135
+ # The pagination token used to retrieve the next page of results for
2136
+ # this operation.
2137
+ # @return [String]
2138
+ #
2139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DescribeApplicationsResult AWS API Documentation
2140
+ #
2141
+ class DescribeApplicationsResult < Struct.new(
2142
+ :applications,
2143
+ :next_token)
2144
+ SENSITIVE = []
2145
+ include Aws::Structure
2146
+ end
2147
+
1587
2148
  # @note When making an API call, you may pass DescribeDirectoryConfigsRequest
1588
2149
  # data as a hash:
1589
2150
  #
@@ -2199,6 +2760,35 @@ module Aws::AppStream
2199
2760
  #
2200
2761
  class DisableUserResult < Aws::EmptyStructure; end
2201
2762
 
2763
+ # @note When making an API call, you may pass DisassociateApplicationFleetRequest
2764
+ # data as a hash:
2765
+ #
2766
+ # {
2767
+ # fleet_name: "Name", # required
2768
+ # application_arn: "Arn", # required
2769
+ # }
2770
+ #
2771
+ # @!attribute [rw] fleet_name
2772
+ # The name of the fleet.
2773
+ # @return [String]
2774
+ #
2775
+ # @!attribute [rw] application_arn
2776
+ # The ARN of the application.
2777
+ # @return [String]
2778
+ #
2779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DisassociateApplicationFleetRequest AWS API Documentation
2780
+ #
2781
+ class DisassociateApplicationFleetRequest < Struct.new(
2782
+ :fleet_name,
2783
+ :application_arn)
2784
+ SENSITIVE = []
2785
+ include Aws::Structure
2786
+ end
2787
+
2788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/DisassociateApplicationFleetResult AWS API Documentation
2789
+ #
2790
+ class DisassociateApplicationFleetResult < Aws::EmptyStructure; end
2791
+
2202
2792
  # @note When making an API call, you may pass DisassociateFleetRequest
2203
2793
  # data as a hash:
2204
2794
  #
@@ -2538,6 +3128,18 @@ module Aws::AppStream
2538
3128
  # The default value is `APP`.
2539
3129
  # @return [String]
2540
3130
  #
3131
+ # @!attribute [rw] platform
3132
+ # The platform of the fleet.
3133
+ # @return [String]
3134
+ #
3135
+ # @!attribute [rw] max_concurrent_sessions
3136
+ # The maximum number of concurrent sessions for the fleet.
3137
+ # @return [Integer]
3138
+ #
3139
+ # @!attribute [rw] usb_device_filter_strings
3140
+ # The USB device filter strings associated with the fleet.
3141
+ # @return [Array<String>]
3142
+ #
2541
3143
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/Fleet AWS API Documentation
2542
3144
  #
2543
3145
  class Fleet < Struct.new(
@@ -2560,7 +3162,10 @@ module Aws::AppStream
2560
3162
  :domain_join_info,
2561
3163
  :idle_disconnect_timeout_in_seconds,
2562
3164
  :iam_role_arn,
2563
- :stream_view)
3165
+ :stream_view,
3166
+ :platform,
3167
+ :max_concurrent_sessions,
3168
+ :usb_device_filter_strings)
2564
3169
  SENSITIVE = []
2565
3170
  include Aws::Structure
2566
3171
  end
@@ -3281,6 +3886,75 @@ module Aws::AppStream
3281
3886
  include Aws::Structure
3282
3887
  end
3283
3888
 
3889
+ # Describes the S3 location.
3890
+ #
3891
+ # @note When making an API call, you may pass S3Location
3892
+ # data as a hash:
3893
+ #
3894
+ # {
3895
+ # s3_bucket: "S3Bucket", # required
3896
+ # s3_key: "S3Key", # required
3897
+ # }
3898
+ #
3899
+ # @!attribute [rw] s3_bucket
3900
+ # The S3 bucket of the S3 object.
3901
+ # @return [String]
3902
+ #
3903
+ # @!attribute [rw] s3_key
3904
+ # The S3 key of the S3 object.
3905
+ # @return [String]
3906
+ #
3907
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/S3Location AWS API Documentation
3908
+ #
3909
+ class S3Location < Struct.new(
3910
+ :s3_bucket,
3911
+ :s3_key)
3912
+ SENSITIVE = []
3913
+ include Aws::Structure
3914
+ end
3915
+
3916
+ # Describes the details of the script.
3917
+ #
3918
+ # @note When making an API call, you may pass ScriptDetails
3919
+ # data as a hash:
3920
+ #
3921
+ # {
3922
+ # script_s3_location: { # required
3923
+ # s3_bucket: "S3Bucket", # required
3924
+ # s3_key: "S3Key", # required
3925
+ # },
3926
+ # executable_path: "String", # required
3927
+ # executable_parameters: "String",
3928
+ # timeout_in_seconds: 1, # required
3929
+ # }
3930
+ #
3931
+ # @!attribute [rw] script_s3_location
3932
+ # The S3 object location for the script.
3933
+ # @return [Types::S3Location]
3934
+ #
3935
+ # @!attribute [rw] executable_path
3936
+ # The run path for the script.
3937
+ # @return [String]
3938
+ #
3939
+ # @!attribute [rw] executable_parameters
3940
+ # The runtime parameters passed to the run path for the script.
3941
+ # @return [String]
3942
+ #
3943
+ # @!attribute [rw] timeout_in_seconds
3944
+ # The run timeout, in seconds, for the script.
3945
+ # @return [Integer]
3946
+ #
3947
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/ScriptDetails AWS API Documentation
3948
+ #
3949
+ class ScriptDetails < Struct.new(
3950
+ :script_s3_location,
3951
+ :executable_path,
3952
+ :executable_parameters,
3953
+ :timeout_in_seconds)
3954
+ SENSITIVE = []
3955
+ include Aws::Structure
3956
+ end
3957
+
3284
3958
  # Describes the credentials for the service account used by the fleet or
3285
3959
  # image builder to connect to the directory.
3286
3960
  #
@@ -3720,6 +4394,90 @@ module Aws::AppStream
3720
4394
  #
3721
4395
  class UntagResourceResponse < Aws::EmptyStructure; end
3722
4396
 
4397
+ # @note When making an API call, you may pass UpdateApplicationRequest
4398
+ # data as a hash:
4399
+ #
4400
+ # {
4401
+ # name: "Name", # required
4402
+ # display_name: "DisplayName",
4403
+ # description: "Description",
4404
+ # icon_s3_location: {
4405
+ # s3_bucket: "S3Bucket", # required
4406
+ # s3_key: "S3Key", # required
4407
+ # },
4408
+ # launch_path: "String",
4409
+ # working_directory: "String",
4410
+ # launch_parameters: "String",
4411
+ # app_block_arn: "Arn",
4412
+ # attributes_to_delete: ["LAUNCH_PARAMETERS"], # accepts LAUNCH_PARAMETERS, WORKING_DIRECTORY
4413
+ # }
4414
+ #
4415
+ # @!attribute [rw] name
4416
+ # The name of the application. This name is visible to users when
4417
+ # display name is not specified.
4418
+ # @return [String]
4419
+ #
4420
+ # @!attribute [rw] display_name
4421
+ # The display name of the application. This name is visible to users
4422
+ # in the application catalog.
4423
+ # @return [String]
4424
+ #
4425
+ # @!attribute [rw] description
4426
+ # The description of the application.
4427
+ # @return [String]
4428
+ #
4429
+ # @!attribute [rw] icon_s3_location
4430
+ # The icon S3 location of the application.
4431
+ # @return [Types::S3Location]
4432
+ #
4433
+ # @!attribute [rw] launch_path
4434
+ # The launch path of the application.
4435
+ # @return [String]
4436
+ #
4437
+ # @!attribute [rw] working_directory
4438
+ # The working directory of the application.
4439
+ # @return [String]
4440
+ #
4441
+ # @!attribute [rw] launch_parameters
4442
+ # The launch parameters of the application.
4443
+ # @return [String]
4444
+ #
4445
+ # @!attribute [rw] app_block_arn
4446
+ # The ARN of the app block.
4447
+ # @return [String]
4448
+ #
4449
+ # @!attribute [rw] attributes_to_delete
4450
+ # The attributes to delete for an application.
4451
+ # @return [Array<String>]
4452
+ #
4453
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/UpdateApplicationRequest AWS API Documentation
4454
+ #
4455
+ class UpdateApplicationRequest < Struct.new(
4456
+ :name,
4457
+ :display_name,
4458
+ :description,
4459
+ :icon_s3_location,
4460
+ :launch_path,
4461
+ :working_directory,
4462
+ :launch_parameters,
4463
+ :app_block_arn,
4464
+ :attributes_to_delete)
4465
+ SENSITIVE = []
4466
+ include Aws::Structure
4467
+ end
4468
+
4469
+ # @!attribute [rw] application
4470
+ # Describes an application in the application catalog.
4471
+ # @return [Types::Application]
4472
+ #
4473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/UpdateApplicationResult AWS API Documentation
4474
+ #
4475
+ class UpdateApplicationResult < Struct.new(
4476
+ :application)
4477
+ SENSITIVE = []
4478
+ include Aws::Structure
4479
+ end
4480
+
3723
4481
  # @note When making an API call, you may pass UpdateDirectoryConfigRequest
3724
4482
  # data as a hash:
3725
4483
  #
@@ -3794,9 +4552,12 @@ module Aws::AppStream
3794
4552
  # organizational_unit_distinguished_name: "OrganizationalUnitDistinguishedName",
3795
4553
  # },
3796
4554
  # idle_disconnect_timeout_in_seconds: 1,
3797
- # attributes_to_delete: ["VPC_CONFIGURATION"], # accepts VPC_CONFIGURATION, VPC_CONFIGURATION_SECURITY_GROUP_IDS, DOMAIN_JOIN_INFO, IAM_ROLE_ARN
4555
+ # attributes_to_delete: ["VPC_CONFIGURATION"], # accepts VPC_CONFIGURATION, VPC_CONFIGURATION_SECURITY_GROUP_IDS, DOMAIN_JOIN_INFO, IAM_ROLE_ARN, USB_DEVICE_FILTER_STRINGS
3798
4556
  # iam_role_arn: "Arn",
3799
4557
  # stream_view: "APP", # accepts APP, DESKTOP
4558
+ # platform: "WINDOWS", # accepts WINDOWS, WINDOWS_SERVER_2016, WINDOWS_SERVER_2019, AMAZON_LINUX2
4559
+ # max_concurrent_sessions: 1,
4560
+ # usb_device_filter_strings: ["UsbDeviceFilterString"],
3800
4561
  # }
3801
4562
  #
3802
4563
  # @!attribute [rw] image_name
@@ -3880,14 +4641,24 @@ module Aws::AppStream
3880
4641
  # * stream.graphics-pro.8xlarge
3881
4642
  #
3882
4643
  # * stream.graphics-pro.16xlarge
4644
+ #
4645
+ # The following instance types are available for Elastic fleets:
4646
+ #
4647
+ # * stream.standard.small
4648
+ #
4649
+ # * stream.standard.medium
3883
4650
  # @return [String]
3884
4651
  #
3885
4652
  # @!attribute [rw] compute_capacity
3886
- # The desired capacity for the fleet.
4653
+ # The desired capacity for the fleet. This is not allowed for Elastic
4654
+ # fleets.
3887
4655
  # @return [Types::ComputeCapacity]
3888
4656
  #
3889
4657
  # @!attribute [rw] vpc_config
3890
- # The VPC configuration for the fleet.
4658
+ # The VPC configuration for the fleet. This is required for Elastic
4659
+ # fleets, but not required for other fleet types. Elastic fleets
4660
+ # require that you specify at least two subnets in different
4661
+ # availability zones.
3891
4662
  # @return [Types::VpcConfig]
3892
4663
  #
3893
4664
  # @!attribute [rw] max_user_duration_in_seconds
@@ -3994,6 +4765,21 @@ module Aws::AppStream
3994
4765
  # The default value is `APP`.
3995
4766
  # @return [String]
3996
4767
  #
4768
+ # @!attribute [rw] platform
4769
+ # The platform of the fleet. WINDOWS\_SERVER\_2019 and AMAZON\_LINUX2
4770
+ # are supported for Elastic fleets.
4771
+ # @return [String]
4772
+ #
4773
+ # @!attribute [rw] max_concurrent_sessions
4774
+ # The maximum number of concurrent sessions for a fleet.
4775
+ # @return [Integer]
4776
+ #
4777
+ # @!attribute [rw] usb_device_filter_strings
4778
+ # The USB device filter strings that specify which USB devices a user
4779
+ # can redirect to the fleet streaming session, when using the Windows
4780
+ # native client. This is allowed but not required for Elastic fleets.
4781
+ # @return [Array<String>]
4782
+ #
3997
4783
  # @see http://docs.aws.amazon.com/goto/WebAPI/appstream-2016-12-01/UpdateFleetRequest AWS API Documentation
3998
4784
  #
3999
4785
  class UpdateFleetRequest < Struct.new(
@@ -4013,7 +4799,10 @@ module Aws::AppStream
4013
4799
  :idle_disconnect_timeout_in_seconds,
4014
4800
  :attributes_to_delete,
4015
4801
  :iam_role_arn,
4016
- :stream_view)
4802
+ :stream_view,
4803
+ :platform,
4804
+ :max_concurrent_sessions,
4805
+ :usb_device_filter_strings)
4017
4806
  SENSITIVE = []
4018
4807
  include Aws::Structure
4019
4808
  end