aws-sdk-mobile 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: 1ae07c6423da1dd9e43e668a7ec23aeca46594aa
4
+ data.tar.gz: b6394ca7ba8e2c39f4e8ad44087e07fb1cd658ff
5
+ SHA512:
6
+ metadata.gz: a7e205a18a9c3056285bcb390f35cc535298f9c495edb034d5032594cc8e18521b5e4c986227771de122d7b3e4e6bf23b2838f75a3ec303a821d3916db3f3a03
7
+ data.tar.gz: cb329e745244a6af1d92280e7e361c184256ca273291e5977850294679e1b3b00496c3d07d931a6706cc48d88d0e43c37ac17e919c9615a686333cbd50180264
@@ -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-mobile/types'
12
+ require_relative 'aws-sdk-mobile/client_api'
13
+ require_relative 'aws-sdk-mobile/client'
14
+ require_relative 'aws-sdk-mobile/errors'
15
+ require_relative 'aws-sdk-mobile/resource'
16
+ require_relative 'aws-sdk-mobile/customizations'
17
+
18
+ # This module provides support for AWS Mobile. This module is available in the
19
+ # `aws-sdk-mobile` 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 Mobile all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::Mobile::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::Mobile
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,564 @@
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/rest_json.rb'
24
+
25
+ Aws::Plugins::GlobalConfiguration.add_identifier(:mobile)
26
+
27
+ module Aws::Mobile
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :mobile
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::RestJson)
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] :stub_responses (false)
130
+ # Causes the client to return stubbed responses. By default
131
+ # fake responses are generated and returned. You can specify
132
+ # the response data to return or errors to raise by calling
133
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
134
+ #
135
+ # ** Please note ** When response stubbing is enabled, no HTTP
136
+ # requests are made, and retries are disabled.
137
+ #
138
+ # @option options [Boolean] :validate_params (true)
139
+ # When `true`, request parameters are validated before
140
+ # sending the request.
141
+ #
142
+ def initialize(*args)
143
+ super
144
+ end
145
+
146
+ # @!group API Operations
147
+
148
+ # Creates an AWS Mobile Hub project.
149
+ #
150
+ # @option params [String] :name
151
+ # Name of the project.
152
+ #
153
+ # @option params [String] :region
154
+ # Default region where project resources should be created.
155
+ #
156
+ # @option params [String, IO] :contents
157
+ # ZIP or YAML file which contains configuration settings to be used when
158
+ # creating the project. This may be the contents of the file downloaded
159
+ # from the URL provided in an export project operation.
160
+ #
161
+ # @option params [String] :snapshot_id
162
+ # Unique identifier for an exported snapshot of project configuration.
163
+ # This snapshot identifier is included in the share URL when a project
164
+ # is exported.
165
+ #
166
+ # @return [Types::CreateProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
167
+ #
168
+ # * {Types::CreateProjectResult#details #details} => Types::ProjectDetails
169
+ #
170
+ # @example Request syntax with placeholder values
171
+ #
172
+ # resp = client.create_project({
173
+ # name: "ProjectName",
174
+ # region: "ProjectRegion",
175
+ # contents: "data",
176
+ # snapshot_id: "SnapshotId",
177
+ # })
178
+ #
179
+ # @example Response structure
180
+ #
181
+ # resp.details.name #=> String
182
+ # resp.details.project_id #=> String
183
+ # resp.details.region #=> String
184
+ # resp.details.state #=> String, one of "NORMAL", "SYNCING", "IMPORTING"
185
+ # resp.details.created_date #=> Time
186
+ # resp.details.last_updated_date #=> Time
187
+ # resp.details.console_url #=> String
188
+ # resp.details.resources #=> Array
189
+ # resp.details.resources[0].type #=> String
190
+ # resp.details.resources[0].name #=> String
191
+ # resp.details.resources[0].arn #=> String
192
+ # resp.details.resources[0].feature #=> String
193
+ # resp.details.resources[0].attributes #=> Hash
194
+ # resp.details.resources[0].attributes["AttributeKey"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
195
+ #
196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/CreateProject AWS API Documentation
197
+ #
198
+ # @overload create_project(params = {})
199
+ # @param [Hash] params ({})
200
+ def create_project(params = {}, options = {})
201
+ req = build_request(:create_project, params)
202
+ req.send_request(options)
203
+ end
204
+
205
+ # Delets a project in AWS Mobile Hub.
206
+ #
207
+ # @option params [required, String] :project_id
208
+ # Unique project identifier.
209
+ #
210
+ # @return [Types::DeleteProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
211
+ #
212
+ # * {Types::DeleteProjectResult#deleted_resources #deleted_resources} => Array&lt;Types::Resource&gt;
213
+ # * {Types::DeleteProjectResult#orphaned_resources #orphaned_resources} => Array&lt;Types::Resource&gt;
214
+ #
215
+ # @example Request syntax with placeholder values
216
+ #
217
+ # resp = client.delete_project({
218
+ # project_id: "ProjectId", # required
219
+ # })
220
+ #
221
+ # @example Response structure
222
+ #
223
+ # resp.deleted_resources #=> Array
224
+ # resp.deleted_resources[0].type #=> String
225
+ # resp.deleted_resources[0].name #=> String
226
+ # resp.deleted_resources[0].arn #=> String
227
+ # resp.deleted_resources[0].feature #=> String
228
+ # resp.deleted_resources[0].attributes #=> Hash
229
+ # resp.deleted_resources[0].attributes["AttributeKey"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
230
+ # resp.orphaned_resources #=> Array
231
+ # resp.orphaned_resources[0].type #=> String
232
+ # resp.orphaned_resources[0].name #=> String
233
+ # resp.orphaned_resources[0].arn #=> String
234
+ # resp.orphaned_resources[0].feature #=> String
235
+ # resp.orphaned_resources[0].attributes #=> Hash
236
+ # resp.orphaned_resources[0].attributes["AttributeKey"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
237
+ #
238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DeleteProject AWS API Documentation
239
+ #
240
+ # @overload delete_project(params = {})
241
+ # @param [Hash] params ({})
242
+ def delete_project(params = {}, options = {})
243
+ req = build_request(:delete_project, params)
244
+ req.send_request(options)
245
+ end
246
+
247
+ # Get the bundle details for the requested bundle id.
248
+ #
249
+ # @option params [required, String] :bundle_id
250
+ # Unique bundle identifier.
251
+ #
252
+ # @return [Types::DescribeBundleResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
253
+ #
254
+ # * {Types::DescribeBundleResult#details #details} => Types::BundleDetails
255
+ #
256
+ # @example Request syntax with placeholder values
257
+ #
258
+ # resp = client.describe_bundle({
259
+ # bundle_id: "BundleId", # required
260
+ # })
261
+ #
262
+ # @example Response structure
263
+ #
264
+ # resp.details.bundle_id #=> String
265
+ # resp.details.title #=> String
266
+ # resp.details.version #=> String
267
+ # resp.details.description #=> String
268
+ # resp.details.icon_url #=> String
269
+ # resp.details.available_platforms #=> Array
270
+ # resp.details.available_platforms[0] #=> String, one of "OSX", "WINDOWS", "LINUX", "OBJC", "SWIFT", "ANDROID", "JAVASCRIPT"
271
+ #
272
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DescribeBundle AWS API Documentation
273
+ #
274
+ # @overload describe_bundle(params = {})
275
+ # @param [Hash] params ({})
276
+ def describe_bundle(params = {}, options = {})
277
+ req = build_request(:describe_bundle, params)
278
+ req.send_request(options)
279
+ end
280
+
281
+ # Gets details about a project in AWS Mobile Hub.
282
+ #
283
+ # @option params [required, String] :project_id
284
+ # Unique project identifier.
285
+ #
286
+ # @option params [Boolean] :sync_from_resources
287
+ # If set to true, causes AWS Mobile Hub to synchronize information from
288
+ # other services, e.g., update state of AWS CloudFormation stacks in the
289
+ # AWS Mobile Hub project.
290
+ #
291
+ # @return [Types::DescribeProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
292
+ #
293
+ # * {Types::DescribeProjectResult#details #details} => Types::ProjectDetails
294
+ #
295
+ # @example Request syntax with placeholder values
296
+ #
297
+ # resp = client.describe_project({
298
+ # project_id: "ProjectId", # required
299
+ # sync_from_resources: false,
300
+ # })
301
+ #
302
+ # @example Response structure
303
+ #
304
+ # resp.details.name #=> String
305
+ # resp.details.project_id #=> String
306
+ # resp.details.region #=> String
307
+ # resp.details.state #=> String, one of "NORMAL", "SYNCING", "IMPORTING"
308
+ # resp.details.created_date #=> Time
309
+ # resp.details.last_updated_date #=> Time
310
+ # resp.details.console_url #=> String
311
+ # resp.details.resources #=> Array
312
+ # resp.details.resources[0].type #=> String
313
+ # resp.details.resources[0].name #=> String
314
+ # resp.details.resources[0].arn #=> String
315
+ # resp.details.resources[0].feature #=> String
316
+ # resp.details.resources[0].attributes #=> Hash
317
+ # resp.details.resources[0].attributes["AttributeKey"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
318
+ #
319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DescribeProject AWS API Documentation
320
+ #
321
+ # @overload describe_project(params = {})
322
+ # @param [Hash] params ({})
323
+ def describe_project(params = {}, options = {})
324
+ req = build_request(:describe_project, params)
325
+ req.send_request(options)
326
+ end
327
+
328
+ # Generates customized software development kit (SDK) and or tool
329
+ # packages used to integrate mobile web or mobile app clients with
330
+ # backend AWS resources.
331
+ #
332
+ # @option params [required, String] :bundle_id
333
+ # Unique bundle identifier.
334
+ #
335
+ # @option params [String] :project_id
336
+ # Unique project identifier.
337
+ #
338
+ # @option params [String] :platform
339
+ # Developer desktop or target application platform.
340
+ #
341
+ # @return [Types::ExportBundleResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
342
+ #
343
+ # * {Types::ExportBundleResult#download_url #download_url} => String
344
+ #
345
+ # @example Request syntax with placeholder values
346
+ #
347
+ # resp = client.export_bundle({
348
+ # bundle_id: "BundleId", # required
349
+ # project_id: "ProjectId",
350
+ # platform: "OSX", # accepts OSX, WINDOWS, LINUX, OBJC, SWIFT, ANDROID, JAVASCRIPT
351
+ # })
352
+ #
353
+ # @example Response structure
354
+ #
355
+ # resp.download_url #=> String
356
+ #
357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ExportBundle AWS API Documentation
358
+ #
359
+ # @overload export_bundle(params = {})
360
+ # @param [Hash] params ({})
361
+ def export_bundle(params = {}, options = {})
362
+ req = build_request(:export_bundle, params)
363
+ req.send_request(options)
364
+ end
365
+
366
+ # Exports project configuration to a snapshot which can be downloaded
367
+ # and shared. Note that mobile app push credentials are encrypted in
368
+ # exported projects, so they can only be shared successfully within the
369
+ # same AWS account.
370
+ #
371
+ # @option params [required, String] :project_id
372
+ # Unique project identifier.
373
+ #
374
+ # @return [Types::ExportProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
375
+ #
376
+ # * {Types::ExportProjectResult#download_url #download_url} => String
377
+ # * {Types::ExportProjectResult#share_url #share_url} => String
378
+ # * {Types::ExportProjectResult#snapshot_id #snapshot_id} => String
379
+ #
380
+ # @example Request syntax with placeholder values
381
+ #
382
+ # resp = client.export_project({
383
+ # project_id: "ProjectId", # required
384
+ # })
385
+ #
386
+ # @example Response structure
387
+ #
388
+ # resp.download_url #=> String
389
+ # resp.share_url #=> String
390
+ # resp.snapshot_id #=> String
391
+ #
392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ExportProject AWS API Documentation
393
+ #
394
+ # @overload export_project(params = {})
395
+ # @param [Hash] params ({})
396
+ def export_project(params = {}, options = {})
397
+ req = build_request(:export_project, params)
398
+ req.send_request(options)
399
+ end
400
+
401
+ # List all available bundles.
402
+ #
403
+ # @option params [Integer] :max_results
404
+ # Maximum number of records to list in a single response.
405
+ #
406
+ # @option params [String] :next_token
407
+ # Pagination token. Set to null to start listing bundles from start. If
408
+ # non-null pagination token is returned in a result, then pass its value
409
+ # in here in another request to list more bundles.
410
+ #
411
+ # @return [Types::ListBundlesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
412
+ #
413
+ # * {Types::ListBundlesResult#bundle_list #bundle_list} => Array&lt;Types::BundleDetails&gt;
414
+ # * {Types::ListBundlesResult#next_token #next_token} => String
415
+ #
416
+ # @example Request syntax with placeholder values
417
+ #
418
+ # resp = client.list_bundles({
419
+ # max_results: 1,
420
+ # next_token: "NextToken",
421
+ # })
422
+ #
423
+ # @example Response structure
424
+ #
425
+ # resp.bundle_list #=> Array
426
+ # resp.bundle_list[0].bundle_id #=> String
427
+ # resp.bundle_list[0].title #=> String
428
+ # resp.bundle_list[0].version #=> String
429
+ # resp.bundle_list[0].description #=> String
430
+ # resp.bundle_list[0].icon_url #=> String
431
+ # resp.bundle_list[0].available_platforms #=> Array
432
+ # resp.bundle_list[0].available_platforms[0] #=> String, one of "OSX", "WINDOWS", "LINUX", "OBJC", "SWIFT", "ANDROID", "JAVASCRIPT"
433
+ # resp.next_token #=> String
434
+ #
435
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ListBundles AWS API Documentation
436
+ #
437
+ # @overload list_bundles(params = {})
438
+ # @param [Hash] params ({})
439
+ def list_bundles(params = {}, options = {})
440
+ req = build_request(:list_bundles, params)
441
+ req.send_request(options)
442
+ end
443
+
444
+ # Lists projects in AWS Mobile Hub.
445
+ #
446
+ # @option params [Integer] :max_results
447
+ # Maximum number of records to list in a single response.
448
+ #
449
+ # @option params [String] :next_token
450
+ # Pagination token. Set to null to start listing projects from start. If
451
+ # non-null pagination token is returned in a result, then pass its value
452
+ # in here in another request to list more projects.
453
+ #
454
+ # @return [Types::ListProjectsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
455
+ #
456
+ # * {Types::ListProjectsResult#projects #projects} => Array&lt;Types::ProjectSummary&gt;
457
+ # * {Types::ListProjectsResult#next_token #next_token} => String
458
+ #
459
+ # @example Request syntax with placeholder values
460
+ #
461
+ # resp = client.list_projects({
462
+ # max_results: 1,
463
+ # next_token: "NextToken",
464
+ # })
465
+ #
466
+ # @example Response structure
467
+ #
468
+ # resp.projects #=> Array
469
+ # resp.projects[0].name #=> String
470
+ # resp.projects[0].project_id #=> String
471
+ # resp.next_token #=> String
472
+ #
473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ListProjects AWS API Documentation
474
+ #
475
+ # @overload list_projects(params = {})
476
+ # @param [Hash] params ({})
477
+ def list_projects(params = {}, options = {})
478
+ req = build_request(:list_projects, params)
479
+ req.send_request(options)
480
+ end
481
+
482
+ # Update an existing project.
483
+ #
484
+ # @option params [String, IO] :contents
485
+ # ZIP or YAML file which contains project configuration to be updated.
486
+ # This should be the contents of the file downloaded from the URL
487
+ # provided in an export project operation.
488
+ #
489
+ # @option params [required, String] :project_id
490
+ # Unique project identifier.
491
+ #
492
+ # @return [Types::UpdateProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
493
+ #
494
+ # * {Types::UpdateProjectResult#details #details} => Types::ProjectDetails
495
+ #
496
+ # @example Request syntax with placeholder values
497
+ #
498
+ # resp = client.update_project({
499
+ # contents: "data",
500
+ # project_id: "ProjectId", # required
501
+ # })
502
+ #
503
+ # @example Response structure
504
+ #
505
+ # resp.details.name #=> String
506
+ # resp.details.project_id #=> String
507
+ # resp.details.region #=> String
508
+ # resp.details.state #=> String, one of "NORMAL", "SYNCING", "IMPORTING"
509
+ # resp.details.created_date #=> Time
510
+ # resp.details.last_updated_date #=> Time
511
+ # resp.details.console_url #=> String
512
+ # resp.details.resources #=> Array
513
+ # resp.details.resources[0].type #=> String
514
+ # resp.details.resources[0].name #=> String
515
+ # resp.details.resources[0].arn #=> String
516
+ # resp.details.resources[0].feature #=> String
517
+ # resp.details.resources[0].attributes #=> Hash
518
+ # resp.details.resources[0].attributes["AttributeKey"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
519
+ #
520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/UpdateProject AWS API Documentation
521
+ #
522
+ # @overload update_project(params = {})
523
+ # @param [Hash] params ({})
524
+ def update_project(params = {}, options = {})
525
+ req = build_request(:update_project, params)
526
+ req.send_request(options)
527
+ end
528
+
529
+ # @!endgroup
530
+
531
+ # @param params ({})
532
+ # @api private
533
+ def build_request(operation_name, params = {})
534
+ handlers = @handlers.for(operation_name)
535
+ context = Seahorse::Client::RequestContext.new(
536
+ operation_name: operation_name,
537
+ operation: config.api.operation(operation_name),
538
+ client: self,
539
+ params: params,
540
+ config: config)
541
+ context[:gem_name] = 'aws-sdk-mobile'
542
+ context[:gem_version] = '1.0.0'
543
+ Seahorse::Client::Request.new(handlers, context)
544
+ end
545
+
546
+ # @api private
547
+ # @deprecated
548
+ def waiter_names
549
+ []
550
+ end
551
+
552
+ class << self
553
+
554
+ # @api private
555
+ attr_reader :identifier
556
+
557
+ # @api private
558
+ def errors_module
559
+ Errors
560
+ end
561
+
562
+ end
563
+ end
564
+ end