aws-sdk-timestreamquery 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,211 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::TimestreamQuery
11
+ # @api private
12
+ module ClientApi
13
+
14
+ include Seahorse::Model
15
+
16
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
+ CancelQueryRequest = Shapes::StructureShape.new(name: 'CancelQueryRequest')
18
+ CancelQueryResponse = Shapes::StructureShape.new(name: 'CancelQueryResponse')
19
+ ClientRequestToken = Shapes::StringShape.new(name: 'ClientRequestToken')
20
+ ColumnInfo = Shapes::StructureShape.new(name: 'ColumnInfo')
21
+ ColumnInfoList = Shapes::ListShape.new(name: 'ColumnInfoList')
22
+ ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
23
+ Datum = Shapes::StructureShape.new(name: 'Datum')
24
+ DatumList = Shapes::ListShape.new(name: 'DatumList')
25
+ DescribeEndpointsRequest = Shapes::StructureShape.new(name: 'DescribeEndpointsRequest')
26
+ DescribeEndpointsResponse = Shapes::StructureShape.new(name: 'DescribeEndpointsResponse')
27
+ Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
28
+ Endpoints = Shapes::ListShape.new(name: 'Endpoints')
29
+ ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
30
+ InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
31
+ InvalidEndpointException = Shapes::StructureShape.new(name: 'InvalidEndpointException')
32
+ Long = Shapes::IntegerShape.new(name: 'Long')
33
+ MaxQueryResults = Shapes::IntegerShape.new(name: 'MaxQueryResults')
34
+ NullableBoolean = Shapes::BooleanShape.new(name: 'NullableBoolean')
35
+ QueryExecutionException = Shapes::StructureShape.new(name: 'QueryExecutionException')
36
+ QueryId = Shapes::StringShape.new(name: 'QueryId')
37
+ QueryRequest = Shapes::StructureShape.new(name: 'QueryRequest')
38
+ QueryResponse = Shapes::StructureShape.new(name: 'QueryResponse')
39
+ QueryString = Shapes::StringShape.new(name: 'QueryString')
40
+ Row = Shapes::StructureShape.new(name: 'Row')
41
+ RowList = Shapes::ListShape.new(name: 'RowList')
42
+ ScalarType = Shapes::StringShape.new(name: 'ScalarType')
43
+ ScalarValue = Shapes::StringShape.new(name: 'ScalarValue')
44
+ ServiceErrorMessage = Shapes::StringShape.new(name: 'ServiceErrorMessage')
45
+ String = Shapes::StringShape.new(name: 'String')
46
+ ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
47
+ TimeSeriesDataPoint = Shapes::StructureShape.new(name: 'TimeSeriesDataPoint')
48
+ TimeSeriesDataPointList = Shapes::ListShape.new(name: 'TimeSeriesDataPointList')
49
+ Timestamp = Shapes::StringShape.new(name: 'Timestamp')
50
+ Type = Shapes::StructureShape.new(name: 'Type')
51
+ ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
52
+
53
+ AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ServiceErrorMessage, location_name: "Message"))
54
+ AccessDeniedException.struct_class = Types::AccessDeniedException
55
+
56
+ CancelQueryRequest.add_member(:query_id, Shapes::ShapeRef.new(shape: QueryId, required: true, location_name: "QueryId"))
57
+ CancelQueryRequest.struct_class = Types::CancelQueryRequest
58
+
59
+ CancelQueryResponse.add_member(:cancellation_message, Shapes::ShapeRef.new(shape: String, location_name: "CancellationMessage"))
60
+ CancelQueryResponse.struct_class = Types::CancelQueryResponse
61
+
62
+ ColumnInfo.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
63
+ ColumnInfo.add_member(:type, Shapes::ShapeRef.new(shape: Type, required: true, location_name: "Type"))
64
+ ColumnInfo.struct_class = Types::ColumnInfo
65
+
66
+ ColumnInfoList.member = Shapes::ShapeRef.new(shape: ColumnInfo)
67
+
68
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
69
+ ConflictException.struct_class = Types::ConflictException
70
+
71
+ Datum.add_member(:scalar_value, Shapes::ShapeRef.new(shape: ScalarValue, location_name: "ScalarValue"))
72
+ Datum.add_member(:time_series_value, Shapes::ShapeRef.new(shape: TimeSeriesDataPointList, location_name: "TimeSeriesValue"))
73
+ Datum.add_member(:array_value, Shapes::ShapeRef.new(shape: DatumList, location_name: "ArrayValue"))
74
+ Datum.add_member(:row_value, Shapes::ShapeRef.new(shape: Row, location_name: "RowValue"))
75
+ Datum.add_member(:null_value, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "NullValue"))
76
+ Datum.struct_class = Types::Datum
77
+
78
+ DatumList.member = Shapes::ShapeRef.new(shape: Datum)
79
+
80
+ DescribeEndpointsRequest.struct_class = Types::DescribeEndpointsRequest
81
+
82
+ DescribeEndpointsResponse.add_member(:endpoints, Shapes::ShapeRef.new(shape: Endpoints, required: true, location_name: "Endpoints"))
83
+ DescribeEndpointsResponse.struct_class = Types::DescribeEndpointsResponse
84
+
85
+ Endpoint.add_member(:address, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Address"))
86
+ Endpoint.add_member(:cache_period_in_minutes, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "CachePeriodInMinutes"))
87
+ Endpoint.struct_class = Types::Endpoint
88
+
89
+ Endpoints.member = Shapes::ShapeRef.new(shape: Endpoint)
90
+
91
+ InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
92
+ InternalServerException.struct_class = Types::InternalServerException
93
+
94
+ InvalidEndpointException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
95
+ InvalidEndpointException.struct_class = Types::InvalidEndpointException
96
+
97
+ QueryExecutionException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
98
+ QueryExecutionException.struct_class = Types::QueryExecutionException
99
+
100
+ QueryRequest.add_member(:query_string, Shapes::ShapeRef.new(shape: QueryString, required: true, location_name: "QueryString"))
101
+ QueryRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
102
+ QueryRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
103
+ QueryRequest.add_member(:max_rows, Shapes::ShapeRef.new(shape: MaxQueryResults, location_name: "MaxRows"))
104
+ QueryRequest.struct_class = Types::QueryRequest
105
+
106
+ QueryResponse.add_member(:query_id, Shapes::ShapeRef.new(shape: QueryId, required: true, location_name: "QueryId"))
107
+ QueryResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
108
+ QueryResponse.add_member(:rows, Shapes::ShapeRef.new(shape: RowList, required: true, location_name: "Rows"))
109
+ QueryResponse.add_member(:column_info, Shapes::ShapeRef.new(shape: ColumnInfoList, required: true, location_name: "ColumnInfo"))
110
+ QueryResponse.struct_class = Types::QueryResponse
111
+
112
+ Row.add_member(:data, Shapes::ShapeRef.new(shape: DatumList, required: true, location_name: "Data"))
113
+ Row.struct_class = Types::Row
114
+
115
+ RowList.member = Shapes::ShapeRef.new(shape: Row)
116
+
117
+ ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
118
+ ThrottlingException.struct_class = Types::ThrottlingException
119
+
120
+ TimeSeriesDataPoint.add_member(:time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "Time"))
121
+ TimeSeriesDataPoint.add_member(:value, Shapes::ShapeRef.new(shape: Datum, required: true, location_name: "Value"))
122
+ TimeSeriesDataPoint.struct_class = Types::TimeSeriesDataPoint
123
+
124
+ TimeSeriesDataPointList.member = Shapes::ShapeRef.new(shape: TimeSeriesDataPoint)
125
+
126
+ Type.add_member(:scalar_type, Shapes::ShapeRef.new(shape: ScalarType, location_name: "ScalarType"))
127
+ Type.add_member(:array_column_info, Shapes::ShapeRef.new(shape: ColumnInfo, location_name: "ArrayColumnInfo"))
128
+ Type.add_member(:time_series_measure_value_column_info, Shapes::ShapeRef.new(shape: ColumnInfo, location_name: "TimeSeriesMeasureValueColumnInfo"))
129
+ Type.add_member(:row_column_info, Shapes::ShapeRef.new(shape: ColumnInfoList, location_name: "RowColumnInfo"))
130
+ Type.struct_class = Types::Type
131
+
132
+ ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
133
+ ValidationException.struct_class = Types::ValidationException
134
+
135
+
136
+ # @api private
137
+ API = Seahorse::Model::Api.new.tap do |api|
138
+
139
+ api.version = "2018-11-01"
140
+
141
+ api.metadata = {
142
+ "apiVersion" => "2018-11-01",
143
+ "endpointPrefix" => "query.timestream",
144
+ "jsonVersion" => "1.0",
145
+ "protocol" => "json",
146
+ "serviceAbbreviation" => "Timestream Query",
147
+ "serviceFullName" => "Amazon Timestream Query",
148
+ "serviceId" => "Timestream Query",
149
+ "signatureVersion" => "v4",
150
+ "signingName" => "timestream",
151
+ "targetPrefix" => "Timestream_20181101",
152
+ "uid" => "timestream-query-2018-11-01",
153
+ }
154
+ api.endpoint_operation = :describe_endpoints
155
+ api.require_endpoint_discovery = true
156
+
157
+ api.add_operation(:cancel_query, Seahorse::Model::Operation.new.tap do |o|
158
+ o.name = "CancelQuery"
159
+ o.http_method = "POST"
160
+ o.http_request_uri = "/"
161
+ o.endpoint_discovery = {
162
+ "required" => true,
163
+ }
164
+ o.input = Shapes::ShapeRef.new(shape: CancelQueryRequest)
165
+ o.output = Shapes::ShapeRef.new(shape: CancelQueryResponse)
166
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
167
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
168
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
169
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
170
+ o.errors << Shapes::ShapeRef.new(shape: InvalidEndpointException)
171
+ end)
172
+
173
+ api.add_operation(:describe_endpoints, Seahorse::Model::Operation.new.tap do |o|
174
+ o.name = "DescribeEndpoints"
175
+ o.http_method = "POST"
176
+ o.http_request_uri = "/"
177
+ o.endpoint_operation = true
178
+ o.input = Shapes::ShapeRef.new(shape: DescribeEndpointsRequest)
179
+ o.output = Shapes::ShapeRef.new(shape: DescribeEndpointsResponse)
180
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
181
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
182
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
183
+ end)
184
+
185
+ api.add_operation(:query, Seahorse::Model::Operation.new.tap do |o|
186
+ o.name = "Query"
187
+ o.http_method = "POST"
188
+ o.http_request_uri = "/"
189
+ o.endpoint_discovery = {
190
+ "required" => true,
191
+ }
192
+ o.input = Shapes::ShapeRef.new(shape: QueryRequest)
193
+ o.output = Shapes::ShapeRef.new(shape: QueryResponse)
194
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
195
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
196
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
197
+ o.errors << Shapes::ShapeRef.new(shape: QueryExecutionException)
198
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
199
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
200
+ o.errors << Shapes::ShapeRef.new(shape: InvalidEndpointException)
201
+ o[:pager] = Aws::Pager.new(
202
+ limit_key: "max_rows",
203
+ tokens: {
204
+ "next_token" => "next_token"
205
+ }
206
+ )
207
+ end)
208
+ end
209
+
210
+ end
211
+ end
@@ -0,0 +1,150 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::TimestreamQuery
11
+
12
+ # When TimestreamQuery returns an error response, the Ruby SDK constructs and raises an error.
13
+ # These errors all extend Aws::TimestreamQuery::Errors::ServiceError < {Aws::Errors::ServiceError}
14
+ #
15
+ # You can rescue all TimestreamQuery errors using ServiceError:
16
+ #
17
+ # begin
18
+ # # do stuff
19
+ # rescue Aws::TimestreamQuery::Errors::ServiceError
20
+ # # rescues all TimestreamQuery API errors
21
+ # end
22
+ #
23
+ #
24
+ # ## Request Context
25
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
26
+ # information about the request that generated the error.
27
+ # See {Seahorse::Client::RequestContext} for more information.
28
+ #
29
+ # ## Error Classes
30
+ # * {AccessDeniedException}
31
+ # * {ConflictException}
32
+ # * {InternalServerException}
33
+ # * {InvalidEndpointException}
34
+ # * {QueryExecutionException}
35
+ # * {ThrottlingException}
36
+ # * {ValidationException}
37
+ #
38
+ # Additionally, error classes are dynamically generated for service errors based on the error code
39
+ # if they are not defined above.
40
+ module Errors
41
+
42
+ extend Aws::Errors::DynamicErrors
43
+
44
+ class AccessDeniedException < ServiceError
45
+
46
+ # @param [Seahorse::Client::RequestContext] context
47
+ # @param [String] message
48
+ # @param [Aws::TimestreamQuery::Types::AccessDeniedException] data
49
+ def initialize(context, message, data = Aws::EmptyStructure.new)
50
+ super(context, message, data)
51
+ end
52
+
53
+ # @return [String]
54
+ def message
55
+ @message || @data[:message]
56
+ end
57
+ end
58
+
59
+ class ConflictException < ServiceError
60
+
61
+ # @param [Seahorse::Client::RequestContext] context
62
+ # @param [String] message
63
+ # @param [Aws::TimestreamQuery::Types::ConflictException] data
64
+ def initialize(context, message, data = Aws::EmptyStructure.new)
65
+ super(context, message, data)
66
+ end
67
+
68
+ # @return [String]
69
+ def message
70
+ @message || @data[:message]
71
+ end
72
+ end
73
+
74
+ class InternalServerException < ServiceError
75
+
76
+ # @param [Seahorse::Client::RequestContext] context
77
+ # @param [String] message
78
+ # @param [Aws::TimestreamQuery::Types::InternalServerException] data
79
+ def initialize(context, message, data = Aws::EmptyStructure.new)
80
+ super(context, message, data)
81
+ end
82
+
83
+ # @return [String]
84
+ def message
85
+ @message || @data[:message]
86
+ end
87
+ end
88
+
89
+ class InvalidEndpointException < ServiceError
90
+
91
+ # @param [Seahorse::Client::RequestContext] context
92
+ # @param [String] message
93
+ # @param [Aws::TimestreamQuery::Types::InvalidEndpointException] data
94
+ def initialize(context, message, data = Aws::EmptyStructure.new)
95
+ super(context, message, data)
96
+ end
97
+
98
+ # @return [String]
99
+ def message
100
+ @message || @data[:message]
101
+ end
102
+ end
103
+
104
+ class QueryExecutionException < ServiceError
105
+
106
+ # @param [Seahorse::Client::RequestContext] context
107
+ # @param [String] message
108
+ # @param [Aws::TimestreamQuery::Types::QueryExecutionException] data
109
+ def initialize(context, message, data = Aws::EmptyStructure.new)
110
+ super(context, message, data)
111
+ end
112
+
113
+ # @return [String]
114
+ def message
115
+ @message || @data[:message]
116
+ end
117
+ end
118
+
119
+ class ThrottlingException < ServiceError
120
+
121
+ # @param [Seahorse::Client::RequestContext] context
122
+ # @param [String] message
123
+ # @param [Aws::TimestreamQuery::Types::ThrottlingException] data
124
+ def initialize(context, message, data = Aws::EmptyStructure.new)
125
+ super(context, message, data)
126
+ end
127
+
128
+ # @return [String]
129
+ def message
130
+ @message || @data[:message]
131
+ end
132
+ end
133
+
134
+ class ValidationException < ServiceError
135
+
136
+ # @param [Seahorse::Client::RequestContext] context
137
+ # @param [String] message
138
+ # @param [Aws::TimestreamQuery::Types::ValidationException] data
139
+ def initialize(context, message, data = Aws::EmptyStructure.new)
140
+ super(context, message, data)
141
+ end
142
+
143
+ # @return [String]
144
+ def message
145
+ @message || @data[:message]
146
+ end
147
+ end
148
+
149
+ end
150
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::TimestreamQuery
11
+
12
+ class Resource
13
+
14
+ # @param options ({})
15
+ # @option options [Client] :client
16
+ def initialize(options = {})
17
+ @client = options[:client] || Client.new(options)
18
+ end
19
+
20
+ # @return [Client]
21
+ def client
22
+ @client
23
+ end
24
+
25
+ end
26
+ end
@@ -0,0 +1,394 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::TimestreamQuery
11
+ module Types
12
+
13
+ # You are not authorized to perform this action.
14
+ #
15
+ # @!attribute [rw] message
16
+ # @return [String]
17
+ #
18
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/AccessDeniedException AWS API Documentation
19
+ #
20
+ class AccessDeniedException < Struct.new(
21
+ :message)
22
+ SENSITIVE = []
23
+ include Aws::Structure
24
+ end
25
+
26
+ # @note When making an API call, you may pass CancelQueryRequest
27
+ # data as a hash:
28
+ #
29
+ # {
30
+ # query_id: "QueryId", # required
31
+ # }
32
+ #
33
+ # @!attribute [rw] query_id
34
+ # The id of the query that needs to be cancelled. `QueryID` is
35
+ # returned as part of QueryResult.
36
+ # @return [String]
37
+ #
38
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/CancelQueryRequest AWS API Documentation
39
+ #
40
+ class CancelQueryRequest < Struct.new(
41
+ :query_id)
42
+ SENSITIVE = []
43
+ include Aws::Structure
44
+ end
45
+
46
+ # @!attribute [rw] cancellation_message
47
+ # A `CancellationMessage` is returned when a `CancelQuery` request for
48
+ # the query specified by `QueryId` has already been issued.
49
+ # @return [String]
50
+ #
51
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/CancelQueryResponse AWS API Documentation
52
+ #
53
+ class CancelQueryResponse < Struct.new(
54
+ :cancellation_message)
55
+ SENSITIVE = []
56
+ include Aws::Structure
57
+ end
58
+
59
+ # Contains the meta data for query results such as the column names,
60
+ # data types, and other attributes.
61
+ #
62
+ # @!attribute [rw] name
63
+ # The name of the result set column. The name of the result set is
64
+ # available for columns of all data types except for arrays.
65
+ # @return [String]
66
+ #
67
+ # @!attribute [rw] type
68
+ # The data type of the result set column. The data type can be a
69
+ # scalar or complex. Scalar data types are integers, strings, doubles,
70
+ # booleans, and others. Complex data types are types such as arrays,
71
+ # rows, and others.
72
+ # @return [Types::Type]
73
+ #
74
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/ColumnInfo AWS API Documentation
75
+ #
76
+ class ColumnInfo < Struct.new(
77
+ :name,
78
+ :type)
79
+ SENSITIVE = []
80
+ include Aws::Structure
81
+ end
82
+
83
+ # Unable to poll results for a cancelled query.
84
+ #
85
+ # @!attribute [rw] message
86
+ # @return [String]
87
+ #
88
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/ConflictException AWS API Documentation
89
+ #
90
+ class ConflictException < Struct.new(
91
+ :message)
92
+ SENSITIVE = []
93
+ include Aws::Structure
94
+ end
95
+
96
+ # Datum represents a single data point in a query result.
97
+ #
98
+ # @!attribute [rw] scalar_value
99
+ # Indicates if the data point is a scalar value such as integer,
100
+ # string, double, or boolean.
101
+ # @return [String]
102
+ #
103
+ # @!attribute [rw] time_series_value
104
+ # Indicates if the data point is of timeseries data type.
105
+ # @return [Array<Types::TimeSeriesDataPoint>]
106
+ #
107
+ # @!attribute [rw] array_value
108
+ # Indicates if the data point is an array.
109
+ # @return [Array<Types::Datum>]
110
+ #
111
+ # @!attribute [rw] row_value
112
+ # Indicates if the data point is a row.
113
+ # @return [Types::Row]
114
+ #
115
+ # @!attribute [rw] null_value
116
+ # Indicates if the data point is null.
117
+ # @return [Boolean]
118
+ #
119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/Datum AWS API Documentation
120
+ #
121
+ class Datum < Struct.new(
122
+ :scalar_value,
123
+ :time_series_value,
124
+ :array_value,
125
+ :row_value,
126
+ :null_value)
127
+ SENSITIVE = []
128
+ include Aws::Structure
129
+ end
130
+
131
+ # @api private
132
+ #
133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/DescribeEndpointsRequest AWS API Documentation
134
+ #
135
+ class DescribeEndpointsRequest < Aws::EmptyStructure; end
136
+
137
+ # @!attribute [rw] endpoints
138
+ # An `Endpoints` object is returned when a `DescribeEndpoints` request
139
+ # is made.
140
+ # @return [Array<Types::Endpoint>]
141
+ #
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/DescribeEndpointsResponse AWS API Documentation
143
+ #
144
+ class DescribeEndpointsResponse < Struct.new(
145
+ :endpoints)
146
+ SENSITIVE = []
147
+ include Aws::Structure
148
+ end
149
+
150
+ # Represents an available endpoint against which to make API calls
151
+ # agaisnt, as well as the TTL for that endpoint.
152
+ #
153
+ # @!attribute [rw] address
154
+ # An endpoint address.
155
+ # @return [String]
156
+ #
157
+ # @!attribute [rw] cache_period_in_minutes
158
+ # The TTL for the endpoint, in minutes.
159
+ # @return [Integer]
160
+ #
161
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/Endpoint AWS API Documentation
162
+ #
163
+ class Endpoint < Struct.new(
164
+ :address,
165
+ :cache_period_in_minutes)
166
+ SENSITIVE = []
167
+ include Aws::Structure
168
+ end
169
+
170
+ # Timestream was unable to fully process this request because of an
171
+ # internal server error.
172
+ #
173
+ # @!attribute [rw] message
174
+ # @return [String]
175
+ #
176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/InternalServerException AWS API Documentation
177
+ #
178
+ class InternalServerException < Struct.new(
179
+ :message)
180
+ SENSITIVE = []
181
+ include Aws::Structure
182
+ end
183
+
184
+ # The requested endpoint was invalid.
185
+ #
186
+ # @!attribute [rw] message
187
+ # @return [String]
188
+ #
189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/InvalidEndpointException AWS API Documentation
190
+ #
191
+ class InvalidEndpointException < Struct.new(
192
+ :message)
193
+ SENSITIVE = []
194
+ include Aws::Structure
195
+ end
196
+
197
+ # Timestream was unable to run the query successfully.
198
+ #
199
+ # @!attribute [rw] message
200
+ # @return [String]
201
+ #
202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/QueryExecutionException AWS API Documentation
203
+ #
204
+ class QueryExecutionException < Struct.new(
205
+ :message)
206
+ SENSITIVE = []
207
+ include Aws::Structure
208
+ end
209
+
210
+ # @note When making an API call, you may pass QueryRequest
211
+ # data as a hash:
212
+ #
213
+ # {
214
+ # query_string: "QueryString", # required
215
+ # client_token: "ClientRequestToken",
216
+ # next_token: "String",
217
+ # max_rows: 1,
218
+ # }
219
+ #
220
+ # @!attribute [rw] query_string
221
+ # The query to be executed by Timestream.
222
+ # @return [String]
223
+ #
224
+ # @!attribute [rw] client_token
225
+ # Unique, case-sensitive string of up to 64 ASCII characters that you
226
+ # specify when you make a Query request. Providing a `ClientToken`
227
+ # makes the call to `Query` idempotent, meaning that multiple
228
+ # identical calls have the same effect as one single call.
229
+ #
230
+ # Your query request will fail in the following cases:
231
+ #
232
+ # * If you submit a request with the same client token outside the
233
+ # 5-minute idepotency window.
234
+ #
235
+ # * If you submit a request with the same client token but a change in
236
+ # other parameters within the 5-minute idempotency window.
237
+ #
238
+ # After 4 hours, any request with the same client token is treated as
239
+ # a new request.
240
+ #
241
+ # **A suitable default value is auto-generated.** You should normally
242
+ # not need to pass this option.
243
+ # @return [String]
244
+ #
245
+ # @!attribute [rw] next_token
246
+ # A pagination token passed to get a set of results.
247
+ # @return [String]
248
+ #
249
+ # @!attribute [rw] max_rows
250
+ # The total number of rows to return in the output. If the total
251
+ # number of rows available is more than the value specified, a
252
+ # NextToken is provided in the command's output. To resume
253
+ # pagination, provide the NextToken value in the starting-token
254
+ # argument of a subsequent command.
255
+ # @return [Integer]
256
+ #
257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/QueryRequest AWS API Documentation
258
+ #
259
+ class QueryRequest < Struct.new(
260
+ :query_string,
261
+ :client_token,
262
+ :next_token,
263
+ :max_rows)
264
+ SENSITIVE = [:query_string, :client_token]
265
+ include Aws::Structure
266
+ end
267
+
268
+ # @!attribute [rw] query_id
269
+ # A unique ID for the given query.
270
+ # @return [String]
271
+ #
272
+ # @!attribute [rw] next_token
273
+ # A pagination token that can be used again on a `Query` call to get
274
+ # the next set of results.
275
+ # @return [String]
276
+ #
277
+ # @!attribute [rw] rows
278
+ # The result set rows returned by the query.
279
+ # @return [Array<Types::Row>]
280
+ #
281
+ # @!attribute [rw] column_info
282
+ # The column data types of the returned result set.
283
+ # @return [Array<Types::ColumnInfo>]
284
+ #
285
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/QueryResponse AWS API Documentation
286
+ #
287
+ class QueryResponse < Struct.new(
288
+ :query_id,
289
+ :next_token,
290
+ :rows,
291
+ :column_info)
292
+ SENSITIVE = []
293
+ include Aws::Structure
294
+ end
295
+
296
+ # Represents a single row in the query results.
297
+ #
298
+ # @!attribute [rw] data
299
+ # List of data points in a single row of the result set.
300
+ # @return [Array<Types::Datum>]
301
+ #
302
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/Row AWS API Documentation
303
+ #
304
+ class Row < Struct.new(
305
+ :data)
306
+ SENSITIVE = []
307
+ include Aws::Structure
308
+ end
309
+
310
+ # The request was denied due to request throttling.
311
+ #
312
+ # @!attribute [rw] message
313
+ # @return [String]
314
+ #
315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/ThrottlingException AWS API Documentation
316
+ #
317
+ class ThrottlingException < Struct.new(
318
+ :message)
319
+ SENSITIVE = []
320
+ include Aws::Structure
321
+ end
322
+
323
+ # The timeseries datatype represents the values of a measure over time.
324
+ # A time series is an array of rows of timestamps and measure values,
325
+ # with rows sorted in ascending order of time. A TimeSeriesDataPoint is
326
+ # a single data point in the timeseries. It represents a tuple of (time,
327
+ # measure value) in a timeseries.
328
+ #
329
+ # @!attribute [rw] time
330
+ # The timestamp when the measure value was collected.
331
+ # @return [String]
332
+ #
333
+ # @!attribute [rw] value
334
+ # The measure value for the data point.
335
+ # @return [Types::Datum]
336
+ #
337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/TimeSeriesDataPoint AWS API Documentation
338
+ #
339
+ class TimeSeriesDataPoint < Struct.new(
340
+ :time,
341
+ :value)
342
+ SENSITIVE = []
343
+ include Aws::Structure
344
+ end
345
+
346
+ # Contains the data type of a column in a query result set. The data
347
+ # type can be scalar or complex. The supported scalar data types are
348
+ # integers, boolean, string, double, timestamp, date, time, and
349
+ # intervals. The supported complex data types are arrays, rows, and
350
+ # timeseries.
351
+ #
352
+ # @!attribute [rw] scalar_type
353
+ # Indicates if the column is of type string, integer, boolean, double,
354
+ # timestamp, date, time.
355
+ # @return [String]
356
+ #
357
+ # @!attribute [rw] array_column_info
358
+ # Indicates if the column is an array.
359
+ # @return [Types::ColumnInfo]
360
+ #
361
+ # @!attribute [rw] time_series_measure_value_column_info
362
+ # Indicates if the column is a timeseries data type.
363
+ # @return [Types::ColumnInfo]
364
+ #
365
+ # @!attribute [rw] row_column_info
366
+ # Indicates if the column is a row.
367
+ # @return [Array<Types::ColumnInfo>]
368
+ #
369
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/Type AWS API Documentation
370
+ #
371
+ class Type < Struct.new(
372
+ :scalar_type,
373
+ :array_column_info,
374
+ :time_series_measure_value_column_info,
375
+ :row_column_info)
376
+ SENSITIVE = []
377
+ include Aws::Structure
378
+ end
379
+
380
+ # Invalid or malformed request.
381
+ #
382
+ # @!attribute [rw] message
383
+ # @return [String]
384
+ #
385
+ # @see http://docs.aws.amazon.com/goto/WebAPI/timestream-query-2018-11-01/ValidationException AWS API Documentation
386
+ #
387
+ class ValidationException < Struct.new(
388
+ :message)
389
+ SENSITIVE = []
390
+ include Aws::Structure
391
+ end
392
+
393
+ end
394
+ end