/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the iotsecuretunneling-2018-10-05.normal.json service model. */ using System; using System.Collections.Generic; using Amazon.Runtime; using Amazon.IoTSecureTunneling.Model; namespace Amazon.IoTSecureTunneling { /// /// Interface for accessing IoTSecureTunneling /// /// IoT Secure Tunneling /// /// IoT Secure Tunneling creates remote connections to devices deployed in the field. /// /// /// /// For more information about how IoT Secure Tunneling works, see IoT /// Secure Tunneling. /// /// public partial interface IAmazonIoTSecureTunneling : IAmazonService, IDisposable { #if BCL45 || AWS_ASYNC_ENUMERABLES_API /// /// Paginators for the service /// IIoTSecureTunnelingPaginatorFactory Paginators { get; } #endif #region CloseTunnel /// /// Closes a tunnel identified by the unique tunnel id. When a CloseTunnel /// request is received, we close the WebSocket connections between the client and proxy /// server so no data can be transmitted. /// /// /// /// Requires permission to access the CloseTunnel /// action. /// /// /// Container for the necessary parameters to execute the CloseTunnel service method. /// /// The response from the CloseTunnel service method, as returned by IoTSecureTunneling. /// /// Thrown when an operation is attempted on a resource that does not exist. /// /// REST API Reference for CloseTunnel Operation CloseTunnelResponse CloseTunnel(CloseTunnelRequest request); /// /// Initiates the asynchronous execution of the CloseTunnel operation. /// /// /// Container for the necessary parameters to execute the CloseTunnel operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCloseTunnel /// operation. /// REST API Reference for CloseTunnel Operation IAsyncResult BeginCloseTunnel(CloseTunnelRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the CloseTunnel operation. /// /// /// The IAsyncResult returned by the call to BeginCloseTunnel. /// /// Returns a CloseTunnelResult from IoTSecureTunneling. /// REST API Reference for CloseTunnel Operation CloseTunnelResponse EndCloseTunnel(IAsyncResult asyncResult); #endregion #region DescribeTunnel /// /// Gets information about a tunnel identified by the unique tunnel id. /// /// /// /// Requires permission to access the DescribeTunnel /// action. /// /// /// Container for the necessary parameters to execute the DescribeTunnel service method. /// /// The response from the DescribeTunnel service method, as returned by IoTSecureTunneling. /// /// Thrown when an operation is attempted on a resource that does not exist. /// /// REST API Reference for DescribeTunnel Operation DescribeTunnelResponse DescribeTunnel(DescribeTunnelRequest request); /// /// Initiates the asynchronous execution of the DescribeTunnel operation. /// /// /// Container for the necessary parameters to execute the DescribeTunnel operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDescribeTunnel /// operation. /// REST API Reference for DescribeTunnel Operation IAsyncResult BeginDescribeTunnel(DescribeTunnelRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the DescribeTunnel operation. /// /// /// The IAsyncResult returned by the call to BeginDescribeTunnel. /// /// Returns a DescribeTunnelResult from IoTSecureTunneling. /// REST API Reference for DescribeTunnel Operation DescribeTunnelResponse EndDescribeTunnel(IAsyncResult asyncResult); #endregion #region ListTagsForResource /// /// Lists the tags for the specified resource. /// /// Container for the necessary parameters to execute the ListTagsForResource service method. /// /// The response from the ListTagsForResource service method, as returned by IoTSecureTunneling. /// /// Thrown when an operation is attempted on a resource that does not exist. /// /// REST API Reference for ListTagsForResource Operation ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request); /// /// Initiates the asynchronous execution of the ListTagsForResource operation. /// /// /// Container for the necessary parameters to execute the ListTagsForResource operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTagsForResource /// operation. /// REST API Reference for ListTagsForResource Operation IAsyncResult BeginListTagsForResource(ListTagsForResourceRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the ListTagsForResource operation. /// /// /// The IAsyncResult returned by the call to BeginListTagsForResource. /// /// Returns a ListTagsForResourceResult from IoTSecureTunneling. /// REST API Reference for ListTagsForResource Operation ListTagsForResourceResponse EndListTagsForResource(IAsyncResult asyncResult); #endregion #region ListTunnels /// /// List all tunnels for an Amazon Web Services account. Tunnels are listed by creation /// time in descending order, newer tunnels will be listed before older tunnels. /// /// /// /// Requires permission to access the ListTunnels /// action. /// /// /// Container for the necessary parameters to execute the ListTunnels service method. /// /// The response from the ListTunnels service method, as returned by IoTSecureTunneling. /// REST API Reference for ListTunnels Operation ListTunnelsResponse ListTunnels(ListTunnelsRequest request); /// /// Initiates the asynchronous execution of the ListTunnels operation. /// /// /// Container for the necessary parameters to execute the ListTunnels operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTunnels /// operation. /// REST API Reference for ListTunnels Operation IAsyncResult BeginListTunnels(ListTunnelsRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the ListTunnels operation. /// /// /// The IAsyncResult returned by the call to BeginListTunnels. /// /// Returns a ListTunnelsResult from IoTSecureTunneling. /// REST API Reference for ListTunnels Operation ListTunnelsResponse EndListTunnels(IAsyncResult asyncResult); #endregion #region OpenTunnel /// /// Creates a new tunnel, and returns two client access tokens for clients to use to connect /// to the IoT Secure Tunneling proxy server. /// /// /// /// Requires permission to access the OpenTunnel /// action. /// /// /// Container for the necessary parameters to execute the OpenTunnel service method. /// /// The response from the OpenTunnel service method, as returned by IoTSecureTunneling. /// /// Thrown when a tunnel limit is exceeded. /// /// REST API Reference for OpenTunnel Operation OpenTunnelResponse OpenTunnel(OpenTunnelRequest request); /// /// Initiates the asynchronous execution of the OpenTunnel operation. /// /// /// Container for the necessary parameters to execute the OpenTunnel operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndOpenTunnel /// operation. /// REST API Reference for OpenTunnel Operation IAsyncResult BeginOpenTunnel(OpenTunnelRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the OpenTunnel operation. /// /// /// The IAsyncResult returned by the call to BeginOpenTunnel. /// /// Returns a OpenTunnelResult from IoTSecureTunneling. /// REST API Reference for OpenTunnel Operation OpenTunnelResponse EndOpenTunnel(IAsyncResult asyncResult); #endregion #region RotateTunnelAccessToken /// /// Revokes the current client access token (CAT) and returns new CAT for clients to use /// when reconnecting to secure tunneling to access the same tunnel. /// /// /// /// Requires permission to access the RotateTunnelAccessToken /// action. /// /// /// /// Rotating the CAT doesn't extend the tunnel duration. For example, say the tunnel duration /// is 12 hours and the tunnel has already been open for 4 hours. When you rotate the /// access tokens, the new tokens that are generated can only be used for the remaining /// 8 hours. /// /// /// /// Container for the necessary parameters to execute the RotateTunnelAccessToken service method. /// /// The response from the RotateTunnelAccessToken service method, as returned by IoTSecureTunneling. /// /// Thrown when an operation is attempted on a resource that does not exist. /// /// REST API Reference for RotateTunnelAccessToken Operation RotateTunnelAccessTokenResponse RotateTunnelAccessToken(RotateTunnelAccessTokenRequest request); /// /// Initiates the asynchronous execution of the RotateTunnelAccessToken operation. /// /// /// Container for the necessary parameters to execute the RotateTunnelAccessToken operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndRotateTunnelAccessToken /// operation. /// REST API Reference for RotateTunnelAccessToken Operation IAsyncResult BeginRotateTunnelAccessToken(RotateTunnelAccessTokenRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the RotateTunnelAccessToken operation. /// /// /// The IAsyncResult returned by the call to BeginRotateTunnelAccessToken. /// /// Returns a RotateTunnelAccessTokenResult from IoTSecureTunneling. /// REST API Reference for RotateTunnelAccessToken Operation RotateTunnelAccessTokenResponse EndRotateTunnelAccessToken(IAsyncResult asyncResult); #endregion #region TagResource /// /// A resource tag. /// /// Container for the necessary parameters to execute the TagResource service method. /// /// The response from the TagResource service method, as returned by IoTSecureTunneling. /// /// Thrown when an operation is attempted on a resource that does not exist. /// /// REST API Reference for TagResource Operation TagResourceResponse TagResource(TagResourceRequest request); /// /// Initiates the asynchronous execution of the TagResource operation. /// /// /// Container for the necessary parameters to execute the TagResource operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndTagResource /// operation. /// REST API Reference for TagResource Operation IAsyncResult BeginTagResource(TagResourceRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the TagResource operation. /// /// /// The IAsyncResult returned by the call to BeginTagResource. /// /// Returns a TagResourceResult from IoTSecureTunneling. /// REST API Reference for TagResource Operation TagResourceResponse EndTagResource(IAsyncResult asyncResult); #endregion #region UntagResource /// /// Removes a tag from a resource. /// /// Container for the necessary parameters to execute the UntagResource service method. /// /// The response from the UntagResource service method, as returned by IoTSecureTunneling. /// /// Thrown when an operation is attempted on a resource that does not exist. /// /// REST API Reference for UntagResource Operation UntagResourceResponse UntagResource(UntagResourceRequest request); /// /// Initiates the asynchronous execution of the UntagResource operation. /// /// /// Container for the necessary parameters to execute the UntagResource operation on AmazonIoTSecureTunnelingClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUntagResource /// operation. /// REST API Reference for UntagResource Operation IAsyncResult BeginUntagResource(UntagResourceRequest request, AsyncCallback callback, object state); /// /// Finishes the asynchronous execution of the UntagResource operation. /// /// /// The IAsyncResult returned by the call to BeginUntagResource. /// /// Returns a UntagResourceResult from IoTSecureTunneling. /// REST API Reference for UntagResource Operation UntagResourceResponse EndUntagResource(IAsyncResult asyncResult); #endregion } }