You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::MediaConnect::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::MediaConnect::Client
- Defined in:
- (unknown)
Overview
An API client for AWS MediaConnect. To construct a client, you need to configure a :region
and :credentials
.
mediaconnect = Aws::MediaConnect::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::MediaConnect::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::MediaConnect::Client
constructor
Constructs an API client.
API Operations collapse
-
#add_flow_outputs(options = {}) ⇒ Types::AddFlowOutputsResponse
Adds outputs to an existing flow.
-
#add_flow_sources(options = {}) ⇒ Types::AddFlowSourcesResponse
Adds Sources to flow.
-
#add_flow_vpc_interfaces(options = {}) ⇒ Types::AddFlowVpcInterfacesResponse
Adds VPC interfaces to flow.
-
#create_flow(options = {}) ⇒ Types::CreateFlowResponse
Creates a new flow.
-
#delete_flow(options = {}) ⇒ Types::DeleteFlowResponse
Deletes a flow.
-
#describe_flow(options = {}) ⇒ Types::DescribeFlowResponse
Displays the details of a flow.
-
#describe_offering(options = {}) ⇒ Types::DescribeOfferingResponse
Displays the details of an offering.
-
#describe_reservation(options = {}) ⇒ Types::DescribeReservationResponse
Displays the details of a reservation.
-
#grant_flow_entitlements(options = {}) ⇒ Types::GrantFlowEntitlementsResponse
Grants entitlements to an existing flow.
-
#list_entitlements(options = {}) ⇒ Types::ListEntitlementsResponse
Displays a list of all entitlements that have been granted to this account.
-
#list_flows(options = {}) ⇒ Types::ListFlowsResponse
Displays a list of flows that are associated with this account.
-
#list_offerings(options = {}) ⇒ Types::ListOfferingsResponse
Displays a list of all offerings that are available to this account in the current AWS Region.
-
#list_reservations(options = {}) ⇒ Types::ListReservationsResponse
Displays a list of all reservations that have been purchased by this account in the current AWS Region.
-
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
List all tags on an AWS Elemental MediaConnect resource.
-
#purchase_offering(options = {}) ⇒ Types::PurchaseOfferingResponse
Submits a request to purchase an offering.
-
#remove_flow_output(options = {}) ⇒ Types::RemoveFlowOutputResponse
Removes an output from an existing flow.
-
#remove_flow_source(options = {}) ⇒ Types::RemoveFlowSourceResponse
Removes a source from an existing flow.
-
#remove_flow_vpc_interface(options = {}) ⇒ Types::RemoveFlowVpcInterfaceResponse
Removes a VPC Interface from an existing flow.
-
#revoke_flow_entitlement(options = {}) ⇒ Types::RevokeFlowEntitlementResponse
Revokes an entitlement from a flow.
-
#start_flow(options = {}) ⇒ Types::StartFlowResponse
Starts a flow.
-
#stop_flow(options = {}) ⇒ Types::StopFlowResponse
Stops a flow.
-
#tag_resource(options = {}) ⇒ Struct
Associates the specified tags to a resource with the specified resourceArn.
-
#untag_resource(options = {}) ⇒ Struct
Deletes specified tags from a resource.
-
#update_flow(options = {}) ⇒ Types::UpdateFlowResponse
Updates flow.
-
#update_flow_entitlement(options = {}) ⇒ Types::UpdateFlowEntitlementResponse
You can change an entitlement's description, subscribers, and encryption.
-
#update_flow_output(options = {}) ⇒ Types::UpdateFlowOutputResponse
Updates an existing flow output.
-
#update_flow_source(options = {}) ⇒ Types::UpdateFlowSourceResponse
Updates the source of a flow.
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::MediaConnect::Client
Constructs an API client.
Instance Method Details
#add_flow_outputs(options = {}) ⇒ Types::AddFlowOutputsResponse
Adds outputs to an existing flow. You can create up to 50 outputs per flow.
#add_flow_sources(options = {}) ⇒ Types::AddFlowSourcesResponse
Adds Sources to flow
#add_flow_vpc_interfaces(options = {}) ⇒ Types::AddFlowVpcInterfacesResponse
Adds VPC interfaces to flow
#create_flow(options = {}) ⇒ Types::CreateFlowResponse
Creates a new flow. The request must include one source. The request optionally can include outputs (up to 50) and entitlements (up to 50).
#delete_flow(options = {}) ⇒ Types::DeleteFlowResponse
Deletes a flow. Before you can delete a flow, you must stop the flow.
#describe_flow(options = {}) ⇒ Types::DescribeFlowResponse
Displays the details of a flow. The response includes the flow ARN, name, and Availability Zone, as well as details about the source, outputs, and entitlements.
#describe_offering(options = {}) ⇒ Types::DescribeOfferingResponse
Displays the details of an offering. The response includes the offering description, duration, outbound bandwidth, price, and Amazon Resource Name (ARN).
#describe_reservation(options = {}) ⇒ Types::DescribeReservationResponse
Displays the details of a reservation. The response includes the reservation name, state, start date and time, and the details of the offering that make up the rest of the reservation (such as price, duration, and outbound bandwidth).
#grant_flow_entitlements(options = {}) ⇒ Types::GrantFlowEntitlementsResponse
Grants entitlements to an existing flow.
#list_entitlements(options = {}) ⇒ Types::ListEntitlementsResponse
Displays a list of all entitlements that have been granted to this account. This request returns 20 results per page.
#list_flows(options = {}) ⇒ Types::ListFlowsResponse
Displays a list of flows that are associated with this account. This request returns a paginated result.
#list_offerings(options = {}) ⇒ Types::ListOfferingsResponse
Displays a list of all offerings that are available to this account in the current AWS Region. If you have an active reservation (which means you've purchased an offering that has already started and hasn't expired yet), your account isn't eligible for other offerings.
#list_reservations(options = {}) ⇒ Types::ListReservationsResponse
Displays a list of all reservations that have been purchased by this account in the current AWS Region. This list includes all reservations in all states (such as active and expired).
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
List all tags on an AWS Elemental MediaConnect resource
#purchase_offering(options = {}) ⇒ Types::PurchaseOfferingResponse
Submits a request to purchase an offering. If you already have an active reservation, you can't purchase another offering.
#remove_flow_output(options = {}) ⇒ Types::RemoveFlowOutputResponse
Removes an output from an existing flow. This request can be made only on an output that does not have an entitlement associated with it. If the output has an entitlement, you must revoke the entitlement instead. When an entitlement is revoked from a flow, the service automatically removes the associated output.
#remove_flow_source(options = {}) ⇒ Types::RemoveFlowSourceResponse
Removes a source from an existing flow. This request can be made only if there is more than one source on the flow.
#remove_flow_vpc_interface(options = {}) ⇒ Types::RemoveFlowVpcInterfaceResponse
Removes a VPC Interface from an existing flow. This request can be made only on a VPC interface that does not have a Source or Output associated with it. If the VPC interface is referenced by a Source or Output, you must first delete or update the Source or Output to no longer reference the VPC interface.
#revoke_flow_entitlement(options = {}) ⇒ Types::RevokeFlowEntitlementResponse
Revokes an entitlement from a flow. Once an entitlement is revoked, the content becomes unavailable to the subscriber and the associated output is removed.
#start_flow(options = {}) ⇒ Types::StartFlowResponse
Starts a flow.
#stop_flow(options = {}) ⇒ Types::StopFlowResponse
Stops a flow.
#tag_resource(options = {}) ⇒ Struct
Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed. When a resource is deleted, the tags associated with that resource are deleted as well.
#untag_resource(options = {}) ⇒ Struct
Deletes specified tags from a resource.
#update_flow(options = {}) ⇒ Types::UpdateFlowResponse
Updates flow
#update_flow_entitlement(options = {}) ⇒ Types::UpdateFlowEntitlementResponse
You can change an entitlement's description, subscribers, and encryption. If you change the subscribers, the service will remove the outputs that are are used by the subscribers that are removed.
#update_flow_output(options = {}) ⇒ Types::UpdateFlowOutputResponse
Updates an existing flow output.
#update_flow_source(options = {}) ⇒ Types::UpdateFlowSourceResponse
Updates the source of a flow.
#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: |
---|