aws-sdk-cloud9 1.0.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: b81d38b88649b2e3b60cd47e5e37e9d3971d9e43
4
+ data.tar.gz: 21c034fb576f07f367e790943f614efc8037c3b7
5
+ SHA512:
6
+ metadata.gz: ed405a4a3b35c407ed347da2a1fa20f14af921c40fccf65b576700445fac657d0b591956064855e7fb1473a7217d618e3726182ae803680f7d2f815d47634f25
7
+ data.tar.gz: 9da8c0a0dd90ab7d00f660699856a5d85a5d8492cb915d099ef966ae876de394f4102edbdac020c81afbe6942fb8fbedb68839ad30a87beba8371a65a82a52da
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-cloud9/types'
12
+ require_relative 'aws-sdk-cloud9/client_api'
13
+ require_relative 'aws-sdk-cloud9/client'
14
+ require_relative 'aws-sdk-cloud9/errors'
15
+ require_relative 'aws-sdk-cloud9/resource'
16
+ require_relative 'aws-sdk-cloud9/customizations'
17
+
18
+ # This module provides support for AWS Cloud9. This module is available in the
19
+ # `aws-sdk-cloud9` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from AWS Cloud9 all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::Cloud9::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::Cloud9
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,615 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
22
+ require 'aws-sdk-core/plugins/signature_v4.rb'
23
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
24
+
25
+ Aws::Plugins::GlobalConfiguration.add_identifier(:cloud9)
26
+
27
+ module Aws::Cloud9
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :cloud9
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
52
+
53
+ # @option options [required, Aws::CredentialProvider] :credentials
54
+ # Your AWS credentials. This can be an instance of any one of the
55
+ # following classes:
56
+ #
57
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
58
+ # credentials.
59
+ #
60
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
61
+ # from an EC2 IMDS on an EC2 instance.
62
+ #
63
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
64
+ # shared file, such as `~/.aws/config`.
65
+ #
66
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
67
+ #
68
+ # When `:credentials` are not configured directly, the following
69
+ # locations will be searched for credentials:
70
+ #
71
+ # * `Aws.config[:credentials]`
72
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
73
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
74
+ # * `~/.aws/credentials`
75
+ # * `~/.aws/config`
76
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
77
+ # very aggressive. Construct and pass an instance of
78
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
79
+ # timeouts.
80
+ #
81
+ # @option options [required, String] :region
82
+ # The AWS region to connect to. The configured `:region` is
83
+ # used to determine the service `:endpoint`. When not passed,
84
+ # a default `:region` is search for in the following locations:
85
+ #
86
+ # * `Aws.config[:region]`
87
+ # * `ENV['AWS_REGION']`
88
+ # * `ENV['AMAZON_REGION']`
89
+ # * `ENV['AWS_DEFAULT_REGION']`
90
+ # * `~/.aws/credentials`
91
+ # * `~/.aws/config`
92
+ #
93
+ # @option options [String] :access_key_id
94
+ #
95
+ # @option options [Boolean] :convert_params (true)
96
+ # When `true`, an attempt is made to coerce request parameters into
97
+ # the required types.
98
+ #
99
+ # @option options [String] :endpoint
100
+ # The client endpoint is normally constructed from the `:region`
101
+ # option. You should only configure an `:endpoint` when connecting
102
+ # to test endpoints. This should be avalid HTTP(S) URI.
103
+ #
104
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
105
+ # The log formatter.
106
+ #
107
+ # @option options [Symbol] :log_level (:info)
108
+ # The log level to send messages to the `:logger` at.
109
+ #
110
+ # @option options [Logger] :logger
111
+ # The Logger instance to send log messages to. If this option
112
+ # is not set, logging will be disabled.
113
+ #
114
+ # @option options [String] :profile ("default")
115
+ # Used when loading credentials from the shared credentials file
116
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
117
+ #
118
+ # @option options [Integer] :retry_limit (3)
119
+ # The maximum number of times to retry failed requests. Only
120
+ # ~ 500 level server errors and certain ~ 400 level client errors
121
+ # are retried. Generally, these are throttling errors, data
122
+ # checksum errors, networking errors, timeout errors and auth
123
+ # errors from expired credentials.
124
+ #
125
+ # @option options [String] :secret_access_key
126
+ #
127
+ # @option options [String] :session_token
128
+ #
129
+ # @option options [Boolean] :simple_json (false)
130
+ # Disables request parameter conversion, validation, and formatting.
131
+ # Also disable response data type conversions. This option is useful
132
+ # when you want to ensure the highest level of performance by
133
+ # avoiding overhead of walking request parameters and response data
134
+ # structures.
135
+ #
136
+ # When `:simple_json` is enabled, the request parameters hash must
137
+ # be formatted exactly as the DynamoDB API expects.
138
+ #
139
+ # @option options [Boolean] :stub_responses (false)
140
+ # Causes the client to return stubbed responses. By default
141
+ # fake responses are generated and returned. You can specify
142
+ # the response data to return or errors to raise by calling
143
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
144
+ #
145
+ # ** Please note ** When response stubbing is enabled, no HTTP
146
+ # requests are made, and retries are disabled.
147
+ #
148
+ # @option options [Boolean] :validate_params (true)
149
+ # When `true`, request parameters are validated before
150
+ # sending the request.
151
+ #
152
+ def initialize(*args)
153
+ super
154
+ end
155
+
156
+ # @!group API Operations
157
+
158
+ # Creates an AWS Cloud9 development environment, launches an Amazon
159
+ # Elastic Compute Cloud (Amazon EC2) instance, and then hosts the
160
+ # environment on the instance.
161
+ #
162
+ # @option params [required, String] :name
163
+ # The name of the environment to create.
164
+ #
165
+ # This name is visible to other AWS IAM users in the same AWS account.
166
+ #
167
+ # @option params [String] :description
168
+ # The description of the environment to create.
169
+ #
170
+ # @option params [String] :client_request_token
171
+ # A unique, case-sensitive string that helps AWS Cloud9 to ensure this
172
+ # operation completes no more than one time.
173
+ #
174
+ # For more information, see [Client Tokens][1] in the *Amazon EC2 API
175
+ # Reference*.
176
+ #
177
+ #
178
+ #
179
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
180
+ #
181
+ # @option params [required, String] :instance_type
182
+ # The type of instance to host the environment on (for example,
183
+ # `t2.micro`).
184
+ #
185
+ # @option params [String] :subnet_id
186
+ # The ID of the subnet in Amazon VPC that AWS Cloud9 will use to
187
+ # communicate with the Amazon EC2 instance.
188
+ #
189
+ # @option params [Integer] :automatic_stop_time_minutes
190
+ # The number of minutes until the running instance is shut down after
191
+ # the environment has last been used.
192
+ #
193
+ # @option params [String] :owner_arn
194
+ # The Amazon Resource Name (ARN) of the environment owner. This ARN can
195
+ # be the ARN of any AWS IAM principal. If this value is not specified,
196
+ # the ARN defaults to this environment's creator.
197
+ #
198
+ # @return [Types::CreateEnvironmentEC2Result] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
199
+ #
200
+ # * {Types::CreateEnvironmentEC2Result#environment_id #environment_id} => String
201
+ #
202
+ # @example Request syntax with placeholder values
203
+ #
204
+ # resp = client.create_environment_ec2({
205
+ # name: "EnvironmentName", # required
206
+ # description: "EnvironmentDescription",
207
+ # client_request_token: "ClientRequestToken",
208
+ # instance_type: "InstanceType", # required
209
+ # subnet_id: "SubnetId",
210
+ # automatic_stop_time_minutes: 1,
211
+ # owner_arn: "UserArn",
212
+ # })
213
+ #
214
+ # @example Response structure
215
+ #
216
+ # resp.environment_id #=> String
217
+ #
218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/CreateEnvironmentEC2 AWS API Documentation
219
+ #
220
+ # @overload create_environment_ec2(params = {})
221
+ # @param [Hash] params ({})
222
+ def create_environment_ec2(params = {}, options = {})
223
+ req = build_request(:create_environment_ec2, params)
224
+ req.send_request(options)
225
+ end
226
+
227
+ # Adds an environment member to an AWS Cloud9 development environment.
228
+ #
229
+ # @option params [required, String] :environment_id
230
+ # The ID of the environment that contains the environment member you
231
+ # want to add.
232
+ #
233
+ # @option params [required, String] :user_arn
234
+ # The Amazon Resource Name (ARN) of the environment member you want to
235
+ # add.
236
+ #
237
+ # @option params [required, String] :permissions
238
+ # The type of environment member permissions you want to associate with
239
+ # this environment member. Available values include:
240
+ #
241
+ # * `read-only`\: Has read-only access to the environment.
242
+ #
243
+ # * `read-write`\: Has read-write access to the environment.
244
+ #
245
+ # @return [Types::CreateEnvironmentMembershipResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
246
+ #
247
+ # * {Types::CreateEnvironmentMembershipResult#membership #membership} => Types::EnvironmentMember
248
+ #
249
+ # @example Request syntax with placeholder values
250
+ #
251
+ # resp = client.create_environment_membership({
252
+ # environment_id: "EnvironmentId", # required
253
+ # user_arn: "UserArn", # required
254
+ # permissions: "read-write", # required, accepts read-write, read-only
255
+ # })
256
+ #
257
+ # @example Response structure
258
+ #
259
+ # resp.membership.permissions #=> String, one of "owner", "read-write", "read-only"
260
+ # resp.membership.user_id #=> String
261
+ # resp.membership.user_arn #=> String
262
+ # resp.membership.environment_id #=> String
263
+ # resp.membership.last_access #=> Time
264
+ #
265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/CreateEnvironmentMembership AWS API Documentation
266
+ #
267
+ # @overload create_environment_membership(params = {})
268
+ # @param [Hash] params ({})
269
+ def create_environment_membership(params = {}, options = {})
270
+ req = build_request(:create_environment_membership, params)
271
+ req.send_request(options)
272
+ end
273
+
274
+ # Deletes an AWS Cloud9 development environment. If the environment is
275
+ # hosted on an Amazon Elastic Compute Cloud (Amazon EC2) instance, also
276
+ # terminates the instance.
277
+ #
278
+ # @option params [required, String] :environment_id
279
+ # The ID of the environment to delete.
280
+ #
281
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
282
+ #
283
+ # @example Request syntax with placeholder values
284
+ #
285
+ # resp = client.delete_environment({
286
+ # environment_id: "EnvironmentId", # required
287
+ # })
288
+ #
289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/DeleteEnvironment AWS API Documentation
290
+ #
291
+ # @overload delete_environment(params = {})
292
+ # @param [Hash] params ({})
293
+ def delete_environment(params = {}, options = {})
294
+ req = build_request(:delete_environment, params)
295
+ req.send_request(options)
296
+ end
297
+
298
+ # Deletes an environment member from an AWS Cloud9 development
299
+ # environment.
300
+ #
301
+ # @option params [required, String] :environment_id
302
+ # The ID of the environment to delete the environment member from.
303
+ #
304
+ # @option params [required, String] :user_arn
305
+ # The Amazon Resource Name (ARN) of the environment member to delete
306
+ # from the environment.
307
+ #
308
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
309
+ #
310
+ # @example Request syntax with placeholder values
311
+ #
312
+ # resp = client.delete_environment_membership({
313
+ # environment_id: "EnvironmentId", # required
314
+ # user_arn: "UserArn", # required
315
+ # })
316
+ #
317
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/DeleteEnvironmentMembership AWS API Documentation
318
+ #
319
+ # @overload delete_environment_membership(params = {})
320
+ # @param [Hash] params ({})
321
+ def delete_environment_membership(params = {}, options = {})
322
+ req = build_request(:delete_environment_membership, params)
323
+ req.send_request(options)
324
+ end
325
+
326
+ # Gets information about environment members for an AWS Cloud9
327
+ # development environment.
328
+ #
329
+ # @option params [String] :user_arn
330
+ # The Amazon Resource Name (ARN) of an individual environment member to
331
+ # get information about. If no value is specified, information about all
332
+ # environment members are returned.
333
+ #
334
+ # @option params [String] :environment_id
335
+ # The ID of the environment to get environment member information about.
336
+ #
337
+ # @option params [Array<String>] :permissions
338
+ # The type of environment member permissions to get information about.
339
+ # Available values include:
340
+ #
341
+ # * `owner`\: Owns the environment.
342
+ #
343
+ # * `read-only`\: Has read-only access to the environment.
344
+ #
345
+ # * `read-write`\: Has read-write access to the environment.
346
+ #
347
+ # If no value is specified, information about all environment members
348
+ # are returned.
349
+ #
350
+ # @option params [String] :next_token
351
+ # During a previous call, if there are more than 25 items in the list,
352
+ # only the first 25 items are returned, along with a unique string
353
+ # called a *next token*. To get the next batch of items in the list,
354
+ # call this operation again, adding the next token to the call. To get
355
+ # all of the items in the list, keep calling this operation with each
356
+ # subsequent next token that is returned, until no more next tokens are
357
+ # returned.
358
+ #
359
+ # @option params [Integer] :max_results
360
+ # The maximum number of environment members to get information about.
361
+ #
362
+ # @return [Types::DescribeEnvironmentMembershipsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
363
+ #
364
+ # * {Types::DescribeEnvironmentMembershipsResult#memberships #memberships} => Array&lt;Types::EnvironmentMember&gt;
365
+ # * {Types::DescribeEnvironmentMembershipsResult#next_token #next_token} => String
366
+ #
367
+ # @example Request syntax with placeholder values
368
+ #
369
+ # resp = client.describe_environment_memberships({
370
+ # user_arn: "UserArn",
371
+ # environment_id: "EnvironmentId",
372
+ # permissions: ["owner"], # accepts owner, read-write, read-only
373
+ # next_token: "String",
374
+ # max_results: 1,
375
+ # })
376
+ #
377
+ # @example Response structure
378
+ #
379
+ # resp.memberships #=> Array
380
+ # resp.memberships[0].permissions #=> String, one of "owner", "read-write", "read-only"
381
+ # resp.memberships[0].user_id #=> String
382
+ # resp.memberships[0].user_arn #=> String
383
+ # resp.memberships[0].environment_id #=> String
384
+ # resp.memberships[0].last_access #=> Time
385
+ # resp.next_token #=> String
386
+ #
387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/DescribeEnvironmentMemberships AWS API Documentation
388
+ #
389
+ # @overload describe_environment_memberships(params = {})
390
+ # @param [Hash] params ({})
391
+ def describe_environment_memberships(params = {}, options = {})
392
+ req = build_request(:describe_environment_memberships, params)
393
+ req.send_request(options)
394
+ end
395
+
396
+ # Gets status information for an AWS Cloud9 development environment.
397
+ #
398
+ # @option params [required, String] :environment_id
399
+ # The ID of the environment to get status information about.
400
+ #
401
+ # @return [Types::DescribeEnvironmentStatusResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
402
+ #
403
+ # * {Types::DescribeEnvironmentStatusResult#status #status} => String
404
+ # * {Types::DescribeEnvironmentStatusResult#message #message} => String
405
+ #
406
+ # @example Request syntax with placeholder values
407
+ #
408
+ # resp = client.describe_environment_status({
409
+ # environment_id: "EnvironmentId", # required
410
+ # })
411
+ #
412
+ # @example Response structure
413
+ #
414
+ # resp.status #=> String, one of "error", "creating", "connecting", "ready", "stopping", "stopped", "deleting"
415
+ # resp.message #=> String
416
+ #
417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/DescribeEnvironmentStatus AWS API Documentation
418
+ #
419
+ # @overload describe_environment_status(params = {})
420
+ # @param [Hash] params ({})
421
+ def describe_environment_status(params = {}, options = {})
422
+ req = build_request(:describe_environment_status, params)
423
+ req.send_request(options)
424
+ end
425
+
426
+ # Gets information about AWS Cloud9 development environments.
427
+ #
428
+ # @option params [required, Array<String>] :environment_ids
429
+ # The IDs of invidividual environments to get information about.
430
+ #
431
+ # @return [Types::DescribeEnvironmentsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
432
+ #
433
+ # * {Types::DescribeEnvironmentsResult#environments #environments} => Array&lt;Types::Environment&gt;
434
+ #
435
+ # @example Request syntax with placeholder values
436
+ #
437
+ # resp = client.describe_environments({
438
+ # environment_ids: ["EnvironmentId"], # required
439
+ # })
440
+ #
441
+ # @example Response structure
442
+ #
443
+ # resp.environments #=> Array
444
+ # resp.environments[0].id #=> String
445
+ # resp.environments[0].name #=> String
446
+ # resp.environments[0].description #=> String
447
+ # resp.environments[0].type #=> String, one of "ssh", "ec2"
448
+ # resp.environments[0].arn #=> String
449
+ # resp.environments[0].owner_arn #=> String
450
+ #
451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/DescribeEnvironments AWS API Documentation
452
+ #
453
+ # @overload describe_environments(params = {})
454
+ # @param [Hash] params ({})
455
+ def describe_environments(params = {}, options = {})
456
+ req = build_request(:describe_environments, params)
457
+ req.send_request(options)
458
+ end
459
+
460
+ # Gets a list of AWS Cloud9 development environment identifiers.
461
+ #
462
+ # @option params [String] :next_token
463
+ # During a previous call, if there are more than 25 items in the list,
464
+ # only the first 25 items are returned, along with a unique string
465
+ # called a *next token*. To get the next batch of items in the list,
466
+ # call this operation again, adding the next token to the call. To get
467
+ # all of the items in the list, keep calling this operation with each
468
+ # subsequent next token that is returned, until no more next tokens are
469
+ # returned.
470
+ #
471
+ # @option params [Integer] :max_results
472
+ # The maximum number of environments to get identifiers for.
473
+ #
474
+ # @return [Types::ListEnvironmentsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
475
+ #
476
+ # * {Types::ListEnvironmentsResult#next_token #next_token} => String
477
+ # * {Types::ListEnvironmentsResult#environment_ids #environment_ids} => Array&lt;String&gt;
478
+ #
479
+ # @example Request syntax with placeholder values
480
+ #
481
+ # resp = client.list_environments({
482
+ # next_token: "String",
483
+ # max_results: 1,
484
+ # })
485
+ #
486
+ # @example Response structure
487
+ #
488
+ # resp.next_token #=> String
489
+ # resp.environment_ids #=> Array
490
+ # resp.environment_ids[0] #=> String
491
+ #
492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ListEnvironments AWS API Documentation
493
+ #
494
+ # @overload list_environments(params = {})
495
+ # @param [Hash] params ({})
496
+ def list_environments(params = {}, options = {})
497
+ req = build_request(:list_environments, params)
498
+ req.send_request(options)
499
+ end
500
+
501
+ # Changes the settings of an existing AWS Cloud9 development
502
+ # environment.
503
+ #
504
+ # @option params [required, String] :environment_id
505
+ # The ID of the environment to change settings.
506
+ #
507
+ # @option params [String] :name
508
+ # Any replacement name for the environment.
509
+ #
510
+ # @option params [String] :description
511
+ # Any new or replacement description for the environment.
512
+ #
513
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
514
+ #
515
+ # @example Request syntax with placeholder values
516
+ #
517
+ # resp = client.update_environment({
518
+ # environment_id: "EnvironmentId", # required
519
+ # name: "EnvironmentName",
520
+ # description: "EnvironmentDescription",
521
+ # })
522
+ #
523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UpdateEnvironment AWS API Documentation
524
+ #
525
+ # @overload update_environment(params = {})
526
+ # @param [Hash] params ({})
527
+ def update_environment(params = {}, options = {})
528
+ req = build_request(:update_environment, params)
529
+ req.send_request(options)
530
+ end
531
+
532
+ # Changes the settings of an existing environment member for an AWS
533
+ # Cloud9 development environment.
534
+ #
535
+ # @option params [required, String] :environment_id
536
+ # The ID of the environment for the environment member whose settings
537
+ # you want to change.
538
+ #
539
+ # @option params [required, String] :user_arn
540
+ # The Amazon Resource Name (ARN) of the environment member whose
541
+ # settings you want to change.
542
+ #
543
+ # @option params [required, String] :permissions
544
+ # The replacement type of environment member permissions you want to
545
+ # associate with this environment member. Available values include:
546
+ #
547
+ # * `read-only`\: Has read-only access to the environment.
548
+ #
549
+ # * `read-write`\: Has read-write access to the environment.
550
+ #
551
+ # @return [Types::UpdateEnvironmentMembershipResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
552
+ #
553
+ # * {Types::UpdateEnvironmentMembershipResult#membership #membership} => Types::EnvironmentMember
554
+ #
555
+ # @example Request syntax with placeholder values
556
+ #
557
+ # resp = client.update_environment_membership({
558
+ # environment_id: "EnvironmentId", # required
559
+ # user_arn: "UserArn", # required
560
+ # permissions: "read-write", # required, accepts read-write, read-only
561
+ # })
562
+ #
563
+ # @example Response structure
564
+ #
565
+ # resp.membership.permissions #=> String, one of "owner", "read-write", "read-only"
566
+ # resp.membership.user_id #=> String
567
+ # resp.membership.user_arn #=> String
568
+ # resp.membership.environment_id #=> String
569
+ # resp.membership.last_access #=> Time
570
+ #
571
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UpdateEnvironmentMembership AWS API Documentation
572
+ #
573
+ # @overload update_environment_membership(params = {})
574
+ # @param [Hash] params ({})
575
+ def update_environment_membership(params = {}, options = {})
576
+ req = build_request(:update_environment_membership, params)
577
+ req.send_request(options)
578
+ end
579
+
580
+ # @!endgroup
581
+
582
+ # @param params ({})
583
+ # @api private
584
+ def build_request(operation_name, params = {})
585
+ handlers = @handlers.for(operation_name)
586
+ context = Seahorse::Client::RequestContext.new(
587
+ operation_name: operation_name,
588
+ operation: config.api.operation(operation_name),
589
+ client: self,
590
+ params: params,
591
+ config: config)
592
+ context[:gem_name] = 'aws-sdk-cloud9'
593
+ context[:gem_version] = '1.0.0'
594
+ Seahorse::Client::Request.new(handlers, context)
595
+ end
596
+
597
+ # @api private
598
+ # @deprecated
599
+ def waiter_names
600
+ []
601
+ end
602
+
603
+ class << self
604
+
605
+ # @api private
606
+ attr_reader :identifier
607
+
608
+ # @api private
609
+ def errors_module
610
+ Errors
611
+ end
612
+
613
+ end
614
+ end
615
+ end