You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::IoT1ClickProjects::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::IoT1ClickProjects::Client
- Defined in:
- (unknown)
Overview
An API client for AWS IoT 1-Click Projects Service. To construct a client, you need to configure a :region
and :credentials
.
iot1clickprojects = Aws::IoT1ClickProjects::Client.new(
region: region_name,
credentials: credentials,
# ...
)
See #initialize for a full list of supported configuration options.
Region
You can configure a default region in the following locations:
ENV['AWS_REGION']
Aws.config[:region]
Go here for a list of supported regions.
Credentials
Default credentials are loaded automatically from the following locations:
ENV['AWS_ACCESS_KEY_ID']
andENV['AWS_SECRET_ACCESS_KEY']
Aws.config[:credentials]
- The shared credentials ini file at
~/.aws/credentials
(more information) - From an instance profile when running on EC2
You can also construct a credentials object from one of the following classes:
Alternatively, you configure credentials with :access_key_id
and
:secret_access_key
:
# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))
Aws::IoT1ClickProjects::Client.new(
access_key_id: creds['access_key_id'],
secret_access_key: creds['secret_access_key']
)
Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
Constructor collapse
-
#initialize(options = {}) ⇒ Aws::IoT1ClickProjects::Client
constructor
Constructs an API client.
API Operations collapse
-
#associate_device_with_placement(options = {}) ⇒ Struct
Associates a physical device with a placement.
.
-
#create_placement(options = {}) ⇒ Struct
Creates an empty placement.
.
-
#create_project(options = {}) ⇒ Struct
Creates an empty project with a placement template.
-
#delete_placement(options = {}) ⇒ Struct
Deletes a placement.
-
#delete_project(options = {}) ⇒ Struct
Deletes a project.
-
#describe_placement(options = {}) ⇒ Types::DescribePlacementResponse
Describes a placement in a project.
.
-
#describe_project(options = {}) ⇒ Types::DescribeProjectResponse
Returns an object describing a project.
.
-
#disassociate_device_from_placement(options = {}) ⇒ Struct
Removes a physical device from a placement.
.
-
#get_devices_in_placement(options = {}) ⇒ Types::GetDevicesInPlacementResponse
Returns an object enumerating the devices in a placement.
.
-
#list_placements(options = {}) ⇒ Types::ListPlacementsResponse
Lists the placement(s) of a project.
.
-
#list_projects(options = {}) ⇒ Types::ListProjectsResponse
Lists the AWS IoT 1-Click project(s) associated with your AWS account and region.
.
-
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
Lists the tags (metadata key/value pairs) which you have assigned to the resource.
.
-
#tag_resource(options = {}) ⇒ Struct
Creates or modifies tags for a resource.
-
#untag_resource(options = {}) ⇒ Struct
Removes one or more tags (metadata key/value pairs) from a resource.
.
-
#update_placement(options = {}) ⇒ Struct
Updates a placement with the given attributes.
-
#update_project(options = {}) ⇒ Struct
Updates a project associated with your AWS account and region.
Instance Method Summary collapse
-
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
-
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters.
Methods inherited from Seahorse::Client::Base
add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options = {}) ⇒ Aws::IoT1ClickProjects::Client
Constructs an API client.
Instance Method Details
#associate_device_with_placement(options = {}) ⇒ Struct
Associates a physical device with a placement.
#create_placement(options = {}) ⇒ Struct
Creates an empty placement.
#create_project(options = {}) ⇒ Struct
Creates an empty project with a placement template. A project contains zero or more placements that adhere to the placement template defined in the project.
#delete_placement(options = {}) ⇒ Struct
Deletes a placement. To delete a placement, it must not have any devices associated with it.
When you delete a placement, all associated data becomes irretrievable.
#delete_project(options = {}) ⇒ Struct
Deletes a project. To delete a project, it must not have any placements associated with it.
When you delete a project, all associated data becomes irretrievable.
#describe_placement(options = {}) ⇒ Types::DescribePlacementResponse
Describes a placement in a project.
#describe_project(options = {}) ⇒ Types::DescribeProjectResponse
Returns an object describing a project.
#disassociate_device_from_placement(options = {}) ⇒ Struct
Removes a physical device from a placement.
#get_devices_in_placement(options = {}) ⇒ Types::GetDevicesInPlacementResponse
Returns an object enumerating the devices in a placement.
#list_placements(options = {}) ⇒ Types::ListPlacementsResponse
Lists the placement(s) of a project.
#list_projects(options = {}) ⇒ Types::ListProjectsResponse
Lists the AWS IoT 1-Click project(s) associated with your AWS account and region.
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
Lists the tags (metadata key/value pairs) which you have assigned to the resource.
#tag_resource(options = {}) ⇒ Struct
Creates or modifies tags for a resource. Tags are key/value pairs (metadata) that can be used to manage a resource. For more information, see AWS Tagging Strategies.
#untag_resource(options = {}) ⇒ Struct
Removes one or more tags (metadata key/value pairs) from a resource.
#update_placement(options = {}) ⇒ Struct
Updates a placement with the given attributes. To clear an attribute, pass an empty value (i.e., "").
#update_project(options = {}) ⇒ Struct
Updates a project associated with your AWS account and region. With the exception of device template names, you can pass just the values that need to be updated because the update request will change only the values that are provided. To clear a value, pass the empty string (i.e., ""
).
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
Basic Usage
Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.
# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)
Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:
# poll for ~25 seconds
client.wait_until(...) do |w|
w.max_attempts = 5
w.delay = 5
end
Callbacks
You can be notified before each polling attempt and before each
delay. If you throw :success
or :failure
from these callbacks,
it will terminate the waiter.
started_at = Time.now
client.wait_until(...) do |w|
# disable max attempts
w.max_attempts = nil
# poll for 1 hour, instead of a number of attempts
w.before_wait do |attempts, response|
throw :failure if Time.now - started_at > 3600
end
end
Handling Errors
When a waiter is successful, it returns true
. When a waiter
fails, it raises an error. All errors raised extend from
Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:
Waiter Name | Client Method | Default Delay: | Default Max Attempts: |
---|