aws-sdk-iotsecuretunneling 1.2.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.
- checksums.yaml +7 -0
- data/lib/aws-sdk-iotsecuretunneling.rb +50 -0
- data/lib/aws-sdk-iotsecuretunneling/client.rb +607 -0
- data/lib/aws-sdk-iotsecuretunneling/client_api.rb +248 -0
- data/lib/aws-sdk-iotsecuretunneling/customizations.rb +0 -0
- data/lib/aws-sdk-iotsecuretunneling/errors.rb +68 -0
- data/lib/aws-sdk-iotsecuretunneling/resource.rb +24 -0
- data/lib/aws-sdk-iotsecuretunneling/types.rb +466 -0
- metadata +88 -0
@@ -0,0 +1,248 @@
|
|
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
|
+
module Aws::IoTSecureTunneling
|
9
|
+
# @api private
|
10
|
+
module ClientApi
|
11
|
+
|
12
|
+
include Seahorse::Model
|
13
|
+
|
14
|
+
AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
|
15
|
+
ClientAccessToken = Shapes::StringShape.new(name: 'ClientAccessToken')
|
16
|
+
CloseTunnelRequest = Shapes::StructureShape.new(name: 'CloseTunnelRequest')
|
17
|
+
CloseTunnelResponse = Shapes::StructureShape.new(name: 'CloseTunnelResponse')
|
18
|
+
ConnectionState = Shapes::StructureShape.new(name: 'ConnectionState')
|
19
|
+
ConnectionStatus = Shapes::StringShape.new(name: 'ConnectionStatus')
|
20
|
+
DateType = Shapes::TimestampShape.new(name: 'DateType')
|
21
|
+
DeleteFlag = Shapes::BooleanShape.new(name: 'DeleteFlag')
|
22
|
+
DescribeTunnelRequest = Shapes::StructureShape.new(name: 'DescribeTunnelRequest')
|
23
|
+
DescribeTunnelResponse = Shapes::StructureShape.new(name: 'DescribeTunnelResponse')
|
24
|
+
Description = Shapes::StringShape.new(name: 'Description')
|
25
|
+
DestinationConfig = Shapes::StructureShape.new(name: 'DestinationConfig')
|
26
|
+
ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
|
27
|
+
LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
|
28
|
+
ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
|
29
|
+
ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
|
30
|
+
ListTunnelsRequest = Shapes::StructureShape.new(name: 'ListTunnelsRequest')
|
31
|
+
ListTunnelsResponse = Shapes::StructureShape.new(name: 'ListTunnelsResponse')
|
32
|
+
MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
|
33
|
+
NextToken = Shapes::StringShape.new(name: 'NextToken')
|
34
|
+
OpenTunnelRequest = Shapes::StructureShape.new(name: 'OpenTunnelRequest')
|
35
|
+
OpenTunnelResponse = Shapes::StructureShape.new(name: 'OpenTunnelResponse')
|
36
|
+
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
37
|
+
Service = Shapes::StringShape.new(name: 'Service')
|
38
|
+
ServiceList = Shapes::ListShape.new(name: 'ServiceList')
|
39
|
+
Tag = Shapes::StructureShape.new(name: 'Tag')
|
40
|
+
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
41
|
+
TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
|
42
|
+
TagList = Shapes::ListShape.new(name: 'TagList')
|
43
|
+
TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
|
44
|
+
TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
|
45
|
+
TagValue = Shapes::StringShape.new(name: 'TagValue')
|
46
|
+
ThingName = Shapes::StringShape.new(name: 'ThingName')
|
47
|
+
TimeoutConfig = Shapes::StructureShape.new(name: 'TimeoutConfig')
|
48
|
+
TimeoutInMin = Shapes::IntegerShape.new(name: 'TimeoutInMin')
|
49
|
+
Tunnel = Shapes::StructureShape.new(name: 'Tunnel')
|
50
|
+
TunnelArn = Shapes::StringShape.new(name: 'TunnelArn')
|
51
|
+
TunnelId = Shapes::StringShape.new(name: 'TunnelId')
|
52
|
+
TunnelStatus = Shapes::StringShape.new(name: 'TunnelStatus')
|
53
|
+
TunnelSummary = Shapes::StructureShape.new(name: 'TunnelSummary')
|
54
|
+
TunnelSummaryList = Shapes::ListShape.new(name: 'TunnelSummaryList')
|
55
|
+
UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
|
56
|
+
UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
|
57
|
+
|
58
|
+
CloseTunnelRequest.add_member(:tunnel_id, Shapes::ShapeRef.new(shape: TunnelId, required: true, location_name: "tunnelId"))
|
59
|
+
CloseTunnelRequest.add_member(:delete, Shapes::ShapeRef.new(shape: DeleteFlag, location_name: "delete", metadata: {"box"=>true}))
|
60
|
+
CloseTunnelRequest.struct_class = Types::CloseTunnelRequest
|
61
|
+
|
62
|
+
CloseTunnelResponse.struct_class = Types::CloseTunnelResponse
|
63
|
+
|
64
|
+
ConnectionState.add_member(:status, Shapes::ShapeRef.new(shape: ConnectionStatus, location_name: "status"))
|
65
|
+
ConnectionState.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: DateType, location_name: "lastUpdatedAt"))
|
66
|
+
ConnectionState.struct_class = Types::ConnectionState
|
67
|
+
|
68
|
+
DescribeTunnelRequest.add_member(:tunnel_id, Shapes::ShapeRef.new(shape: TunnelId, required: true, location_name: "tunnelId"))
|
69
|
+
DescribeTunnelRequest.struct_class = Types::DescribeTunnelRequest
|
70
|
+
|
71
|
+
DescribeTunnelResponse.add_member(:tunnel, Shapes::ShapeRef.new(shape: Tunnel, location_name: "tunnel"))
|
72
|
+
DescribeTunnelResponse.struct_class = Types::DescribeTunnelResponse
|
73
|
+
|
74
|
+
DestinationConfig.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location_name: "thingName"))
|
75
|
+
DestinationConfig.add_member(:services, Shapes::ShapeRef.new(shape: ServiceList, required: true, location_name: "services"))
|
76
|
+
DestinationConfig.struct_class = Types::DestinationConfig
|
77
|
+
|
78
|
+
LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
|
79
|
+
LimitExceededException.struct_class = Types::LimitExceededException
|
80
|
+
|
81
|
+
ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "resourceArn"))
|
82
|
+
ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
|
83
|
+
|
84
|
+
ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
|
85
|
+
ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
|
86
|
+
|
87
|
+
ListTunnelsRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, location_name: "thingName"))
|
88
|
+
ListTunnelsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults", metadata: {"box"=>true}))
|
89
|
+
ListTunnelsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
90
|
+
ListTunnelsRequest.struct_class = Types::ListTunnelsRequest
|
91
|
+
|
92
|
+
ListTunnelsResponse.add_member(:tunnel_summaries, Shapes::ShapeRef.new(shape: TunnelSummaryList, location_name: "tunnelSummaries"))
|
93
|
+
ListTunnelsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
|
94
|
+
ListTunnelsResponse.struct_class = Types::ListTunnelsResponse
|
95
|
+
|
96
|
+
OpenTunnelRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
|
97
|
+
OpenTunnelRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
|
98
|
+
OpenTunnelRequest.add_member(:destination_config, Shapes::ShapeRef.new(shape: DestinationConfig, location_name: "destinationConfig"))
|
99
|
+
OpenTunnelRequest.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
|
100
|
+
OpenTunnelRequest.struct_class = Types::OpenTunnelRequest
|
101
|
+
|
102
|
+
OpenTunnelResponse.add_member(:tunnel_id, Shapes::ShapeRef.new(shape: TunnelId, location_name: "tunnelId"))
|
103
|
+
OpenTunnelResponse.add_member(:tunnel_arn, Shapes::ShapeRef.new(shape: TunnelArn, location_name: "tunnelArn"))
|
104
|
+
OpenTunnelResponse.add_member(:source_access_token, Shapes::ShapeRef.new(shape: ClientAccessToken, location_name: "sourceAccessToken"))
|
105
|
+
OpenTunnelResponse.add_member(:destination_access_token, Shapes::ShapeRef.new(shape: ClientAccessToken, location_name: "destinationAccessToken"))
|
106
|
+
OpenTunnelResponse.struct_class = Types::OpenTunnelResponse
|
107
|
+
|
108
|
+
ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
|
109
|
+
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
110
|
+
|
111
|
+
ServiceList.member = Shapes::ShapeRef.new(shape: Service)
|
112
|
+
|
113
|
+
Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "key"))
|
114
|
+
Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "value"))
|
115
|
+
Tag.struct_class = Types::Tag
|
116
|
+
|
117
|
+
TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
|
118
|
+
|
119
|
+
TagList.member = Shapes::ShapeRef.new(shape: Tag)
|
120
|
+
|
121
|
+
TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "resourceArn"))
|
122
|
+
TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "tags"))
|
123
|
+
TagResourceRequest.struct_class = Types::TagResourceRequest
|
124
|
+
|
125
|
+
TagResourceResponse.struct_class = Types::TagResourceResponse
|
126
|
+
|
127
|
+
TimeoutConfig.add_member(:max_lifetime_timeout_minutes, Shapes::ShapeRef.new(shape: TimeoutInMin, location_name: "maxLifetimeTimeoutMinutes", metadata: {"box"=>true}))
|
128
|
+
TimeoutConfig.struct_class = Types::TimeoutConfig
|
129
|
+
|
130
|
+
Tunnel.add_member(:tunnel_id, Shapes::ShapeRef.new(shape: TunnelId, location_name: "tunnelId"))
|
131
|
+
Tunnel.add_member(:tunnel_arn, Shapes::ShapeRef.new(shape: TunnelArn, location_name: "tunnelArn"))
|
132
|
+
Tunnel.add_member(:status, Shapes::ShapeRef.new(shape: TunnelStatus, location_name: "status"))
|
133
|
+
Tunnel.add_member(:source_connection_state, Shapes::ShapeRef.new(shape: ConnectionState, location_name: "sourceConnectionState"))
|
134
|
+
Tunnel.add_member(:destination_connection_state, Shapes::ShapeRef.new(shape: ConnectionState, location_name: "destinationConnectionState"))
|
135
|
+
Tunnel.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
|
136
|
+
Tunnel.add_member(:destination_config, Shapes::ShapeRef.new(shape: DestinationConfig, location_name: "destinationConfig"))
|
137
|
+
Tunnel.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
|
138
|
+
Tunnel.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
|
139
|
+
Tunnel.add_member(:created_at, Shapes::ShapeRef.new(shape: DateType, location_name: "createdAt"))
|
140
|
+
Tunnel.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: DateType, location_name: "lastUpdatedAt"))
|
141
|
+
Tunnel.struct_class = Types::Tunnel
|
142
|
+
|
143
|
+
TunnelSummary.add_member(:tunnel_id, Shapes::ShapeRef.new(shape: TunnelId, location_name: "tunnelId"))
|
144
|
+
TunnelSummary.add_member(:tunnel_arn, Shapes::ShapeRef.new(shape: TunnelArn, location_name: "tunnelArn"))
|
145
|
+
TunnelSummary.add_member(:status, Shapes::ShapeRef.new(shape: TunnelStatus, location_name: "status"))
|
146
|
+
TunnelSummary.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
|
147
|
+
TunnelSummary.add_member(:created_at, Shapes::ShapeRef.new(shape: DateType, location_name: "createdAt"))
|
148
|
+
TunnelSummary.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: DateType, location_name: "lastUpdatedAt"))
|
149
|
+
TunnelSummary.struct_class = Types::TunnelSummary
|
150
|
+
|
151
|
+
TunnelSummaryList.member = Shapes::ShapeRef.new(shape: TunnelSummary)
|
152
|
+
|
153
|
+
UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "resourceArn"))
|
154
|
+
UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "tagKeys"))
|
155
|
+
UntagResourceRequest.struct_class = Types::UntagResourceRequest
|
156
|
+
|
157
|
+
UntagResourceResponse.struct_class = Types::UntagResourceResponse
|
158
|
+
|
159
|
+
|
160
|
+
# @api private
|
161
|
+
API = Seahorse::Model::Api.new.tap do |api|
|
162
|
+
|
163
|
+
api.version = "2018-10-05"
|
164
|
+
|
165
|
+
api.metadata = {
|
166
|
+
"apiVersion" => "2018-10-05",
|
167
|
+
"endpointPrefix" => "api.tunneling.iot",
|
168
|
+
"jsonVersion" => "1.1",
|
169
|
+
"protocol" => "json",
|
170
|
+
"serviceFullName" => "AWS IoT Secure Tunneling",
|
171
|
+
"serviceId" => "IoTSecureTunneling",
|
172
|
+
"signatureVersion" => "v4",
|
173
|
+
"signingName" => "IoTSecuredTunneling",
|
174
|
+
"targetPrefix" => "IoTSecuredTunneling",
|
175
|
+
"uid" => "iotsecuretunneling-2018-10-05",
|
176
|
+
}
|
177
|
+
|
178
|
+
api.add_operation(:close_tunnel, Seahorse::Model::Operation.new.tap do |o|
|
179
|
+
o.name = "CloseTunnel"
|
180
|
+
o.http_method = "POST"
|
181
|
+
o.http_request_uri = "/"
|
182
|
+
o.input = Shapes::ShapeRef.new(shape: CloseTunnelRequest)
|
183
|
+
o.output = Shapes::ShapeRef.new(shape: CloseTunnelResponse)
|
184
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
185
|
+
end)
|
186
|
+
|
187
|
+
api.add_operation(:describe_tunnel, Seahorse::Model::Operation.new.tap do |o|
|
188
|
+
o.name = "DescribeTunnel"
|
189
|
+
o.http_method = "POST"
|
190
|
+
o.http_request_uri = "/"
|
191
|
+
o.input = Shapes::ShapeRef.new(shape: DescribeTunnelRequest)
|
192
|
+
o.output = Shapes::ShapeRef.new(shape: DescribeTunnelResponse)
|
193
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
194
|
+
end)
|
195
|
+
|
196
|
+
api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
|
197
|
+
o.name = "ListTagsForResource"
|
198
|
+
o.http_method = "POST"
|
199
|
+
o.http_request_uri = "/"
|
200
|
+
o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
|
201
|
+
o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
|
202
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
203
|
+
end)
|
204
|
+
|
205
|
+
api.add_operation(:list_tunnels, Seahorse::Model::Operation.new.tap do |o|
|
206
|
+
o.name = "ListTunnels"
|
207
|
+
o.http_method = "POST"
|
208
|
+
o.http_request_uri = "/"
|
209
|
+
o.input = Shapes::ShapeRef.new(shape: ListTunnelsRequest)
|
210
|
+
o.output = Shapes::ShapeRef.new(shape: ListTunnelsResponse)
|
211
|
+
o[:pager] = Aws::Pager.new(
|
212
|
+
limit_key: "max_results",
|
213
|
+
tokens: {
|
214
|
+
"next_token" => "next_token"
|
215
|
+
}
|
216
|
+
)
|
217
|
+
end)
|
218
|
+
|
219
|
+
api.add_operation(:open_tunnel, Seahorse::Model::Operation.new.tap do |o|
|
220
|
+
o.name = "OpenTunnel"
|
221
|
+
o.http_method = "POST"
|
222
|
+
o.http_request_uri = "/"
|
223
|
+
o.input = Shapes::ShapeRef.new(shape: OpenTunnelRequest)
|
224
|
+
o.output = Shapes::ShapeRef.new(shape: OpenTunnelResponse)
|
225
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
226
|
+
end)
|
227
|
+
|
228
|
+
api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
|
229
|
+
o.name = "TagResource"
|
230
|
+
o.http_method = "POST"
|
231
|
+
o.http_request_uri = "/"
|
232
|
+
o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
|
233
|
+
o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
|
234
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
235
|
+
end)
|
236
|
+
|
237
|
+
api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
|
238
|
+
o.name = "UntagResource"
|
239
|
+
o.http_method = "POST"
|
240
|
+
o.http_request_uri = "/"
|
241
|
+
o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
|
242
|
+
o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
|
243
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
244
|
+
end)
|
245
|
+
end
|
246
|
+
|
247
|
+
end
|
248
|
+
end
|
File without changes
|
@@ -0,0 +1,68 @@
|
|
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
|
+
module Aws::IoTSecureTunneling
|
9
|
+
|
10
|
+
# When IoTSecureTunneling returns an error response, the Ruby SDK constructs and raises an error.
|
11
|
+
# These errors all extend Aws::IoTSecureTunneling::Errors::ServiceError < {Aws::Errors::ServiceError}
|
12
|
+
#
|
13
|
+
# You can rescue all IoTSecureTunneling errors using ServiceError:
|
14
|
+
#
|
15
|
+
# begin
|
16
|
+
# # do stuff
|
17
|
+
# rescue Aws::IoTSecureTunneling::Errors::ServiceError
|
18
|
+
# # rescues all IoTSecureTunneling API errors
|
19
|
+
# end
|
20
|
+
#
|
21
|
+
#
|
22
|
+
# ## Request Context
|
23
|
+
# ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
|
24
|
+
# information about the request that generated the error.
|
25
|
+
# See {Seahorse::Client::RequestContext} for more information.
|
26
|
+
#
|
27
|
+
# ## Error Classes
|
28
|
+
# * {LimitExceededException}
|
29
|
+
# * {ResourceNotFoundException}
|
30
|
+
#
|
31
|
+
# Additionally, error classes are dynamically generated for service errors based on the error code
|
32
|
+
# if they are not defined above.
|
33
|
+
module Errors
|
34
|
+
|
35
|
+
extend Aws::Errors::DynamicErrors
|
36
|
+
|
37
|
+
class LimitExceededException < ServiceError
|
38
|
+
|
39
|
+
# @param [Seahorse::Client::RequestContext] context
|
40
|
+
# @param [String] message
|
41
|
+
# @param [Aws::IoTSecureTunneling::Types::LimitExceededException] data
|
42
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
43
|
+
super(context, message, data)
|
44
|
+
end
|
45
|
+
|
46
|
+
# @return [String]
|
47
|
+
def message
|
48
|
+
@message || @data[:message]
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
class ResourceNotFoundException < ServiceError
|
53
|
+
|
54
|
+
# @param [Seahorse::Client::RequestContext] context
|
55
|
+
# @param [String] message
|
56
|
+
# @param [Aws::IoTSecureTunneling::Types::ResourceNotFoundException] data
|
57
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
58
|
+
super(context, message, data)
|
59
|
+
end
|
60
|
+
|
61
|
+
# @return [String]
|
62
|
+
def message
|
63
|
+
@message || @data[:message]
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
end
|
@@ -0,0 +1,24 @@
|
|
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
|
+
module Aws::IoTSecureTunneling
|
9
|
+
|
10
|
+
class Resource
|
11
|
+
|
12
|
+
# @param options ({})
|
13
|
+
# @option options [Client] :client
|
14
|
+
def initialize(options = {})
|
15
|
+
@client = options[:client] || Client.new(options)
|
16
|
+
end
|
17
|
+
|
18
|
+
# @return [Client]
|
19
|
+
def client
|
20
|
+
@client
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,466 @@
|
|
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
|
+
module Aws::IoTSecureTunneling
|
9
|
+
module Types
|
10
|
+
|
11
|
+
# @note When making an API call, you may pass CloseTunnelRequest
|
12
|
+
# data as a hash:
|
13
|
+
#
|
14
|
+
# {
|
15
|
+
# tunnel_id: "TunnelId", # required
|
16
|
+
# delete: false,
|
17
|
+
# }
|
18
|
+
#
|
19
|
+
# @!attribute [rw] tunnel_id
|
20
|
+
# The ID of the tunnel to close.
|
21
|
+
# @return [String]
|
22
|
+
#
|
23
|
+
# @!attribute [rw] delete
|
24
|
+
# When set to true, AWS IoT Secure Tunneling deletes the tunnel data
|
25
|
+
# immediately.
|
26
|
+
# @return [Boolean]
|
27
|
+
#
|
28
|
+
class CloseTunnelRequest < Struct.new(
|
29
|
+
:tunnel_id,
|
30
|
+
:delete)
|
31
|
+
include Aws::Structure
|
32
|
+
end
|
33
|
+
|
34
|
+
class CloseTunnelResponse < Aws::EmptyStructure; end
|
35
|
+
|
36
|
+
# The state of a connection.
|
37
|
+
#
|
38
|
+
# @!attribute [rw] status
|
39
|
+
# The connection status of the tunnel. Valid values are `CONNECTED`
|
40
|
+
# and `DISCONNECTED`.
|
41
|
+
# @return [String]
|
42
|
+
#
|
43
|
+
# @!attribute [rw] last_updated_at
|
44
|
+
# The last time the connection status was updated.
|
45
|
+
# @return [Time]
|
46
|
+
#
|
47
|
+
class ConnectionState < Struct.new(
|
48
|
+
:status,
|
49
|
+
:last_updated_at)
|
50
|
+
include Aws::Structure
|
51
|
+
end
|
52
|
+
|
53
|
+
# @note When making an API call, you may pass DescribeTunnelRequest
|
54
|
+
# data as a hash:
|
55
|
+
#
|
56
|
+
# {
|
57
|
+
# tunnel_id: "TunnelId", # required
|
58
|
+
# }
|
59
|
+
#
|
60
|
+
# @!attribute [rw] tunnel_id
|
61
|
+
# The tunnel to describe.
|
62
|
+
# @return [String]
|
63
|
+
#
|
64
|
+
class DescribeTunnelRequest < Struct.new(
|
65
|
+
:tunnel_id)
|
66
|
+
include Aws::Structure
|
67
|
+
end
|
68
|
+
|
69
|
+
# @!attribute [rw] tunnel
|
70
|
+
# The tunnel being described.
|
71
|
+
# @return [Types::Tunnel]
|
72
|
+
#
|
73
|
+
class DescribeTunnelResponse < Struct.new(
|
74
|
+
:tunnel)
|
75
|
+
include Aws::Structure
|
76
|
+
end
|
77
|
+
|
78
|
+
# The destination configuration.
|
79
|
+
#
|
80
|
+
# @note When making an API call, you may pass DestinationConfig
|
81
|
+
# data as a hash:
|
82
|
+
#
|
83
|
+
# {
|
84
|
+
# thing_name: "ThingName", # required
|
85
|
+
# services: ["Service"], # required
|
86
|
+
# }
|
87
|
+
#
|
88
|
+
# @!attribute [rw] thing_name
|
89
|
+
# The name of the IoT thing to which you want to connect.
|
90
|
+
# @return [String]
|
91
|
+
#
|
92
|
+
# @!attribute [rw] services
|
93
|
+
# A list of service names that identity the target application.
|
94
|
+
# Currently, you can only specify a single name. The AWS IoT client
|
95
|
+
# running on the destination device reads this value and uses it to
|
96
|
+
# look up a port or an IP address and a port. The AWS IoT client
|
97
|
+
# instantiates the local proxy which uses this information to connect
|
98
|
+
# to the destination application.
|
99
|
+
# @return [Array<String>]
|
100
|
+
#
|
101
|
+
class DestinationConfig < Struct.new(
|
102
|
+
:thing_name,
|
103
|
+
:services)
|
104
|
+
include Aws::Structure
|
105
|
+
end
|
106
|
+
|
107
|
+
# Thrown when a tunnel limit is exceeded.
|
108
|
+
#
|
109
|
+
# @!attribute [rw] message
|
110
|
+
# @return [String]
|
111
|
+
#
|
112
|
+
class LimitExceededException < Struct.new(
|
113
|
+
:message)
|
114
|
+
include Aws::Structure
|
115
|
+
end
|
116
|
+
|
117
|
+
# @note When making an API call, you may pass ListTagsForResourceRequest
|
118
|
+
# data as a hash:
|
119
|
+
#
|
120
|
+
# {
|
121
|
+
# resource_arn: "AmazonResourceName", # required
|
122
|
+
# }
|
123
|
+
#
|
124
|
+
# @!attribute [rw] resource_arn
|
125
|
+
# The resource ARN.
|
126
|
+
# @return [String]
|
127
|
+
#
|
128
|
+
class ListTagsForResourceRequest < Struct.new(
|
129
|
+
:resource_arn)
|
130
|
+
include Aws::Structure
|
131
|
+
end
|
132
|
+
|
133
|
+
# @!attribute [rw] tags
|
134
|
+
# The tags for the specified resource.
|
135
|
+
# @return [Array<Types::Tag>]
|
136
|
+
#
|
137
|
+
class ListTagsForResourceResponse < Struct.new(
|
138
|
+
:tags)
|
139
|
+
include Aws::Structure
|
140
|
+
end
|
141
|
+
|
142
|
+
# @note When making an API call, you may pass ListTunnelsRequest
|
143
|
+
# data as a hash:
|
144
|
+
#
|
145
|
+
# {
|
146
|
+
# thing_name: "ThingName",
|
147
|
+
# max_results: 1,
|
148
|
+
# next_token: "NextToken",
|
149
|
+
# }
|
150
|
+
#
|
151
|
+
# @!attribute [rw] thing_name
|
152
|
+
# The name of the IoT thing associated with the destination device.
|
153
|
+
# @return [String]
|
154
|
+
#
|
155
|
+
# @!attribute [rw] max_results
|
156
|
+
# The maximum number of results to return at once.
|
157
|
+
# @return [Integer]
|
158
|
+
#
|
159
|
+
# @!attribute [rw] next_token
|
160
|
+
# A token to retrieve the next set of results.
|
161
|
+
# @return [String]
|
162
|
+
#
|
163
|
+
class ListTunnelsRequest < Struct.new(
|
164
|
+
:thing_name,
|
165
|
+
:max_results,
|
166
|
+
:next_token)
|
167
|
+
include Aws::Structure
|
168
|
+
end
|
169
|
+
|
170
|
+
# @!attribute [rw] tunnel_summaries
|
171
|
+
# A short description of the tunnels in an AWS account.
|
172
|
+
# @return [Array<Types::TunnelSummary>]
|
173
|
+
#
|
174
|
+
# @!attribute [rw] next_token
|
175
|
+
# A token to used to retrieve the next set of results.
|
176
|
+
# @return [String]
|
177
|
+
#
|
178
|
+
class ListTunnelsResponse < Struct.new(
|
179
|
+
:tunnel_summaries,
|
180
|
+
:next_token)
|
181
|
+
include Aws::Structure
|
182
|
+
end
|
183
|
+
|
184
|
+
# @note When making an API call, you may pass OpenTunnelRequest
|
185
|
+
# data as a hash:
|
186
|
+
#
|
187
|
+
# {
|
188
|
+
# description: "Description",
|
189
|
+
# tags: [
|
190
|
+
# {
|
191
|
+
# key: "TagKey", # required
|
192
|
+
# value: "TagValue", # required
|
193
|
+
# },
|
194
|
+
# ],
|
195
|
+
# destination_config: {
|
196
|
+
# thing_name: "ThingName", # required
|
197
|
+
# services: ["Service"], # required
|
198
|
+
# },
|
199
|
+
# timeout_config: {
|
200
|
+
# max_lifetime_timeout_minutes: 1,
|
201
|
+
# },
|
202
|
+
# }
|
203
|
+
#
|
204
|
+
# @!attribute [rw] description
|
205
|
+
# A short text description of the tunnel.
|
206
|
+
# @return [String]
|
207
|
+
#
|
208
|
+
# @!attribute [rw] tags
|
209
|
+
# A collection of tag metadata.
|
210
|
+
# @return [Array<Types::Tag>]
|
211
|
+
#
|
212
|
+
# @!attribute [rw] destination_config
|
213
|
+
# The destination configuration for the OpenTunnel request.
|
214
|
+
# @return [Types::DestinationConfig]
|
215
|
+
#
|
216
|
+
# @!attribute [rw] timeout_config
|
217
|
+
# Timeout configuration for a tunnel.
|
218
|
+
# @return [Types::TimeoutConfig]
|
219
|
+
#
|
220
|
+
class OpenTunnelRequest < Struct.new(
|
221
|
+
:description,
|
222
|
+
:tags,
|
223
|
+
:destination_config,
|
224
|
+
:timeout_config)
|
225
|
+
include Aws::Structure
|
226
|
+
end
|
227
|
+
|
228
|
+
# @!attribute [rw] tunnel_id
|
229
|
+
# A unique alpha-numeric tunnel ID.
|
230
|
+
# @return [String]
|
231
|
+
#
|
232
|
+
# @!attribute [rw] tunnel_arn
|
233
|
+
# The Amazon Resource Name for the tunnel. The tunnel ARN format is
|
234
|
+
# `arn:aws:tunnel:<region>:<account-id>:tunnel/<tunnel-id>`
|
235
|
+
# @return [String]
|
236
|
+
#
|
237
|
+
# @!attribute [rw] source_access_token
|
238
|
+
# The access token the source local proxy uses to connect to AWS IoT
|
239
|
+
# Secure Tunneling.
|
240
|
+
# @return [String]
|
241
|
+
#
|
242
|
+
# @!attribute [rw] destination_access_token
|
243
|
+
# The access token the destination local proxy uses to connect to AWS
|
244
|
+
# IoT Secure Tunneling.
|
245
|
+
# @return [String]
|
246
|
+
#
|
247
|
+
class OpenTunnelResponse < Struct.new(
|
248
|
+
:tunnel_id,
|
249
|
+
:tunnel_arn,
|
250
|
+
:source_access_token,
|
251
|
+
:destination_access_token)
|
252
|
+
include Aws::Structure
|
253
|
+
end
|
254
|
+
|
255
|
+
# Thrown when an operation is attempted on a resource that does not
|
256
|
+
# exist.
|
257
|
+
#
|
258
|
+
# @!attribute [rw] message
|
259
|
+
# @return [String]
|
260
|
+
#
|
261
|
+
class ResourceNotFoundException < Struct.new(
|
262
|
+
:message)
|
263
|
+
include Aws::Structure
|
264
|
+
end
|
265
|
+
|
266
|
+
# An arbitary key/value pair used to add searchable metadata to secure
|
267
|
+
# tunnel resources.
|
268
|
+
#
|
269
|
+
# @note When making an API call, you may pass Tag
|
270
|
+
# data as a hash:
|
271
|
+
#
|
272
|
+
# {
|
273
|
+
# key: "TagKey", # required
|
274
|
+
# value: "TagValue", # required
|
275
|
+
# }
|
276
|
+
#
|
277
|
+
# @!attribute [rw] key
|
278
|
+
# The key of the tag.
|
279
|
+
# @return [String]
|
280
|
+
#
|
281
|
+
# @!attribute [rw] value
|
282
|
+
# The value of the tag.
|
283
|
+
# @return [String]
|
284
|
+
#
|
285
|
+
class Tag < Struct.new(
|
286
|
+
:key,
|
287
|
+
:value)
|
288
|
+
include Aws::Structure
|
289
|
+
end
|
290
|
+
|
291
|
+
# @note When making an API call, you may pass TagResourceRequest
|
292
|
+
# data as a hash:
|
293
|
+
#
|
294
|
+
# {
|
295
|
+
# resource_arn: "AmazonResourceName", # required
|
296
|
+
# tags: [ # required
|
297
|
+
# {
|
298
|
+
# key: "TagKey", # required
|
299
|
+
# value: "TagValue", # required
|
300
|
+
# },
|
301
|
+
# ],
|
302
|
+
# }
|
303
|
+
#
|
304
|
+
# @!attribute [rw] resource_arn
|
305
|
+
# The ARN of the resource.
|
306
|
+
# @return [String]
|
307
|
+
#
|
308
|
+
# @!attribute [rw] tags
|
309
|
+
# The tags for the resource.
|
310
|
+
# @return [Array<Types::Tag>]
|
311
|
+
#
|
312
|
+
class TagResourceRequest < Struct.new(
|
313
|
+
:resource_arn,
|
314
|
+
:tags)
|
315
|
+
include Aws::Structure
|
316
|
+
end
|
317
|
+
|
318
|
+
class TagResourceResponse < Aws::EmptyStructure; end
|
319
|
+
|
320
|
+
# Tunnel timeout configuration.
|
321
|
+
#
|
322
|
+
# @note When making an API call, you may pass TimeoutConfig
|
323
|
+
# data as a hash:
|
324
|
+
#
|
325
|
+
# {
|
326
|
+
# max_lifetime_timeout_minutes: 1,
|
327
|
+
# }
|
328
|
+
#
|
329
|
+
# @!attribute [rw] max_lifetime_timeout_minutes
|
330
|
+
# The maximum amount of time (in minutes) a tunnel can remain open. If
|
331
|
+
# not specified, maxLifetimeTimeoutMinutes defaults to 720 minutes.
|
332
|
+
# Valid values are from 1 minute to 12 hours (720 minutes)
|
333
|
+
# @return [Integer]
|
334
|
+
#
|
335
|
+
class TimeoutConfig < Struct.new(
|
336
|
+
:max_lifetime_timeout_minutes)
|
337
|
+
include Aws::Structure
|
338
|
+
end
|
339
|
+
|
340
|
+
# A connection between a source computer and a destination device.
|
341
|
+
#
|
342
|
+
# @!attribute [rw] tunnel_id
|
343
|
+
# A unique alpha-numeric ID that identifies a tunnel.
|
344
|
+
# @return [String]
|
345
|
+
#
|
346
|
+
# @!attribute [rw] tunnel_arn
|
347
|
+
# The Amazon Resource Name (ARN) of a tunnel. The tunnel ARN format is
|
348
|
+
# `arn:aws:tunnel:<region>:<account-id>:tunnel/<tunnel-id>`
|
349
|
+
# @return [String]
|
350
|
+
#
|
351
|
+
# @!attribute [rw] status
|
352
|
+
# The status of a tunnel. Valid values are: Open and Closed.
|
353
|
+
# @return [String]
|
354
|
+
#
|
355
|
+
# @!attribute [rw] source_connection_state
|
356
|
+
# The connection state of the source application.
|
357
|
+
# @return [Types::ConnectionState]
|
358
|
+
#
|
359
|
+
# @!attribute [rw] destination_connection_state
|
360
|
+
# The connection state of the destination application.
|
361
|
+
# @return [Types::ConnectionState]
|
362
|
+
#
|
363
|
+
# @!attribute [rw] description
|
364
|
+
# A description of the tunnel.
|
365
|
+
# @return [String]
|
366
|
+
#
|
367
|
+
# @!attribute [rw] destination_config
|
368
|
+
# The destination configuration that specifies the thing name of the
|
369
|
+
# destination device and a service name that the local proxy uses to
|
370
|
+
# connect to the destination application.
|
371
|
+
# @return [Types::DestinationConfig]
|
372
|
+
#
|
373
|
+
# @!attribute [rw] timeout_config
|
374
|
+
# Timeout configuration for the tunnel.
|
375
|
+
# @return [Types::TimeoutConfig]
|
376
|
+
#
|
377
|
+
# @!attribute [rw] tags
|
378
|
+
# A list of tag metadata associated with the secure tunnel.
|
379
|
+
# @return [Array<Types::Tag>]
|
380
|
+
#
|
381
|
+
# @!attribute [rw] created_at
|
382
|
+
# The time when the tunnel was created.
|
383
|
+
# @return [Time]
|
384
|
+
#
|
385
|
+
# @!attribute [rw] last_updated_at
|
386
|
+
# The last time the tunnel was updated.
|
387
|
+
# @return [Time]
|
388
|
+
#
|
389
|
+
class Tunnel < Struct.new(
|
390
|
+
:tunnel_id,
|
391
|
+
:tunnel_arn,
|
392
|
+
:status,
|
393
|
+
:source_connection_state,
|
394
|
+
:destination_connection_state,
|
395
|
+
:description,
|
396
|
+
:destination_config,
|
397
|
+
:timeout_config,
|
398
|
+
:tags,
|
399
|
+
:created_at,
|
400
|
+
:last_updated_at)
|
401
|
+
include Aws::Structure
|
402
|
+
end
|
403
|
+
|
404
|
+
# Information about the tunnel.
|
405
|
+
#
|
406
|
+
# @!attribute [rw] tunnel_id
|
407
|
+
# The unique alpha-numeric identifier for the tunnel.
|
408
|
+
# @return [String]
|
409
|
+
#
|
410
|
+
# @!attribute [rw] tunnel_arn
|
411
|
+
# The Amazon Resource Name of the tunnel. The tunnel ARN format is
|
412
|
+
# `arn:aws:tunnel:<region>:<account-id>:tunnel/<tunnel-id>`
|
413
|
+
# @return [String]
|
414
|
+
#
|
415
|
+
# @!attribute [rw] status
|
416
|
+
# The status of a tunnel. Valid values are: Open and Closed.
|
417
|
+
# @return [String]
|
418
|
+
#
|
419
|
+
# @!attribute [rw] description
|
420
|
+
# A description of the tunnel.
|
421
|
+
# @return [String]
|
422
|
+
#
|
423
|
+
# @!attribute [rw] created_at
|
424
|
+
# The time the tunnel was created.
|
425
|
+
# @return [Time]
|
426
|
+
#
|
427
|
+
# @!attribute [rw] last_updated_at
|
428
|
+
# The time the tunnel was last updated.
|
429
|
+
# @return [Time]
|
430
|
+
#
|
431
|
+
class TunnelSummary < Struct.new(
|
432
|
+
:tunnel_id,
|
433
|
+
:tunnel_arn,
|
434
|
+
:status,
|
435
|
+
:description,
|
436
|
+
:created_at,
|
437
|
+
:last_updated_at)
|
438
|
+
include Aws::Structure
|
439
|
+
end
|
440
|
+
|
441
|
+
# @note When making an API call, you may pass UntagResourceRequest
|
442
|
+
# data as a hash:
|
443
|
+
#
|
444
|
+
# {
|
445
|
+
# resource_arn: "AmazonResourceName", # required
|
446
|
+
# tag_keys: ["TagKey"], # required
|
447
|
+
# }
|
448
|
+
#
|
449
|
+
# @!attribute [rw] resource_arn
|
450
|
+
# The resource ARN.
|
451
|
+
# @return [String]
|
452
|
+
#
|
453
|
+
# @!attribute [rw] tag_keys
|
454
|
+
# The keys of the tags to remove.
|
455
|
+
# @return [Array<String>]
|
456
|
+
#
|
457
|
+
class UntagResourceRequest < Struct.new(
|
458
|
+
:resource_arn,
|
459
|
+
:tag_keys)
|
460
|
+
include Aws::Structure
|
461
|
+
end
|
462
|
+
|
463
|
+
class UntagResourceResponse < Aws::EmptyStructure; end
|
464
|
+
|
465
|
+
end
|
466
|
+
end
|