aws-sdk-appsync 1.52.0 → 1.54.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-appsync/client.rb +67 -5
- data/lib/aws-sdk-appsync/client_api.rb +29 -1
- data/lib/aws-sdk-appsync/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-appsync/endpoint_provider.rb +111 -0
- data/lib/aws-sdk-appsync/endpoints.rb +715 -0
- data/lib/aws-sdk-appsync/plugins/endpoints.rb +168 -0
- data/lib/aws-sdk-appsync/types.rb +66 -5
- data/lib/aws-sdk-appsync.rb +5 -1
- metadata +8 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ccaf517cf44c0b4c457edcdb0c49b89adc1054388ba6a9bbcb25095f0a0425e7
|
4
|
+
data.tar.gz: e02a12c93bea9f24dcf16f851afb5d5da157d295e6a67976ef27a5cca6790469
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 702bb146e201991ad285f53d64b47c15348b136f7cfd955ddbe1d060c25142511422e312bcf956f7d42df0cd8953fd81336c5628c6163f01040bd91d5aa53eab
|
7
|
+
data.tar.gz: 1d089da1592c47f64f5712e41be7b899c6b770eee91a8905a2cd880d6afc2f998407e81b3a5960e65ce071f7bfc5239ed828c4da65a15f07147d2ab3ec7a03d2
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.54.0 (2022-10-25)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
8
|
+
|
9
|
+
1.53.0 (2022-07-26)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Adds support for a new API to evaluate mapping templates with mock data, allowing you to remotely unit test your AppSync resolvers and functions.
|
13
|
+
|
4
14
|
1.52.0 (2022-02-24)
|
5
15
|
------------------
|
6
16
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.54.0
|
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
|
|
30
30
|
require 'aws-sdk-core/plugins/checksum_algorithm.rb'
|
31
31
|
require 'aws-sdk-core/plugins/defaults_mode.rb'
|
32
32
|
require 'aws-sdk-core/plugins/recursion_detection.rb'
|
33
|
-
require 'aws-sdk-core/plugins/
|
33
|
+
require 'aws-sdk-core/plugins/sign.rb'
|
34
34
|
require 'aws-sdk-core/plugins/protocols/rest_json.rb'
|
35
35
|
|
36
36
|
Aws::Plugins::GlobalConfiguration.add_identifier(:appsync)
|
@@ -79,8 +79,9 @@ module Aws::AppSync
|
|
79
79
|
add_plugin(Aws::Plugins::ChecksumAlgorithm)
|
80
80
|
add_plugin(Aws::Plugins::DefaultsMode)
|
81
81
|
add_plugin(Aws::Plugins::RecursionDetection)
|
82
|
-
add_plugin(Aws::Plugins::
|
82
|
+
add_plugin(Aws::Plugins::Sign)
|
83
83
|
add_plugin(Aws::Plugins::Protocols::RestJson)
|
84
|
+
add_plugin(Aws::AppSync::Plugins::Endpoints)
|
84
85
|
|
85
86
|
# @overload initialize(options)
|
86
87
|
# @param [Hash] options
|
@@ -287,6 +288,19 @@ module Aws::AppSync
|
|
287
288
|
# ** Please note ** When response stubbing is enabled, no HTTP
|
288
289
|
# requests are made, and retries are disabled.
|
289
290
|
#
|
291
|
+
# @option options [Aws::TokenProvider] :token_provider
|
292
|
+
# A Bearer Token Provider. This can be an instance of any one of the
|
293
|
+
# following classes:
|
294
|
+
#
|
295
|
+
# * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
|
296
|
+
# tokens.
|
297
|
+
#
|
298
|
+
# * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
|
299
|
+
# access token generated from `aws login`.
|
300
|
+
#
|
301
|
+
# When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
|
302
|
+
# will be used to search for tokens configured for your profile in shared configuration files.
|
303
|
+
#
|
290
304
|
# @option options [Boolean] :use_dualstack_endpoint
|
291
305
|
# When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
|
292
306
|
# will be used if available.
|
@@ -300,6 +314,9 @@ module Aws::AppSync
|
|
300
314
|
# When `true`, request parameters are validated before
|
301
315
|
# sending the request.
|
302
316
|
#
|
317
|
+
# @option options [Aws::AppSync::EndpointProvider] :endpoint_provider
|
318
|
+
# The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::AppSync::EndpointParameters`
|
319
|
+
#
|
303
320
|
# @option options [URI::HTTP,String] :http_proxy A proxy to send
|
304
321
|
# requests through. Formatted like 'http://proxy.com:123'.
|
305
322
|
#
|
@@ -1010,7 +1027,7 @@ module Aws::AppSync
|
|
1010
1027
|
# },
|
1011
1028
|
# },
|
1012
1029
|
# caching_config: {
|
1013
|
-
# ttl: 1,
|
1030
|
+
# ttl: 1, # required
|
1014
1031
|
# caching_keys: ["String"],
|
1015
1032
|
# },
|
1016
1033
|
# max_batch_size: 1,
|
@@ -1313,6 +1330,51 @@ module Aws::AppSync
|
|
1313
1330
|
req.send_request(options)
|
1314
1331
|
end
|
1315
1332
|
|
1333
|
+
# Evaluates a given template and returns the response. The mapping
|
1334
|
+
# template can be a request or response template.
|
1335
|
+
#
|
1336
|
+
# Request templates take the incoming request after a GraphQL operation
|
1337
|
+
# is parsed and convert it into a request configuration for the selected
|
1338
|
+
# data source operation. Response templates interpret responses from the
|
1339
|
+
# data source and map it to the shape of the GraphQL field output type.
|
1340
|
+
#
|
1341
|
+
# Mapping templates are written in the Apache Velocity Template Language
|
1342
|
+
# (VTL).
|
1343
|
+
#
|
1344
|
+
# @option params [required, String] :template
|
1345
|
+
# The mapping template; this can be a request or response template. A
|
1346
|
+
# `template` is required for this action.
|
1347
|
+
#
|
1348
|
+
# @option params [required, String] :context
|
1349
|
+
# The map that holds all of the contextual information for your resolver
|
1350
|
+
# invocation. A `context` is required for this action.
|
1351
|
+
#
|
1352
|
+
# @return [Types::EvaluateMappingTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1353
|
+
#
|
1354
|
+
# * {Types::EvaluateMappingTemplateResponse#evaluation_result #evaluation_result} => String
|
1355
|
+
# * {Types::EvaluateMappingTemplateResponse#error #error} => Types::ErrorDetail
|
1356
|
+
#
|
1357
|
+
# @example Request syntax with placeholder values
|
1358
|
+
#
|
1359
|
+
# resp = client.evaluate_mapping_template({
|
1360
|
+
# template: "Template", # required
|
1361
|
+
# context: "Context", # required
|
1362
|
+
# })
|
1363
|
+
#
|
1364
|
+
# @example Response structure
|
1365
|
+
#
|
1366
|
+
# resp.evaluation_result #=> String
|
1367
|
+
# resp.error.message #=> String
|
1368
|
+
#
|
1369
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/EvaluateMappingTemplate AWS API Documentation
|
1370
|
+
#
|
1371
|
+
# @overload evaluate_mapping_template(params = {})
|
1372
|
+
# @param [Hash] params ({})
|
1373
|
+
def evaluate_mapping_template(params = {}, options = {})
|
1374
|
+
req = build_request(:evaluate_mapping_template, params)
|
1375
|
+
req.send_request(options)
|
1376
|
+
end
|
1377
|
+
|
1316
1378
|
# Flushes an `ApiCache` object.
|
1317
1379
|
#
|
1318
1380
|
# @option params [required, String] :api_id
|
@@ -2925,7 +2987,7 @@ module Aws::AppSync
|
|
2925
2987
|
# },
|
2926
2988
|
# },
|
2927
2989
|
# caching_config: {
|
2928
|
-
# ttl: 1,
|
2990
|
+
# ttl: 1, # required
|
2929
2991
|
# caching_keys: ["String"],
|
2930
2992
|
# },
|
2931
2993
|
# max_batch_size: 1,
|
@@ -3016,7 +3078,7 @@ module Aws::AppSync
|
|
3016
3078
|
params: params,
|
3017
3079
|
config: config)
|
3018
3080
|
context[:gem_name] = 'aws-sdk-appsync'
|
3019
|
-
context[:gem_version] = '1.
|
3081
|
+
context[:gem_version] = '1.54.0'
|
3020
3082
|
Seahorse::Client::Request.new(handlers, context)
|
3021
3083
|
end
|
3022
3084
|
|
@@ -44,6 +44,7 @@ module Aws::AppSync
|
|
44
44
|
ConcurrentModificationException = Shapes::StructureShape.new(name: 'ConcurrentModificationException')
|
45
45
|
ConflictDetectionType = Shapes::StringShape.new(name: 'ConflictDetectionType')
|
46
46
|
ConflictHandlerType = Shapes::StringShape.new(name: 'ConflictHandlerType')
|
47
|
+
Context = Shapes::StringShape.new(name: 'Context')
|
47
48
|
CreateApiCacheRequest = Shapes::StructureShape.new(name: 'CreateApiCacheRequest')
|
48
49
|
CreateApiCacheResponse = Shapes::StructureShape.new(name: 'CreateApiCacheResponse')
|
49
50
|
CreateApiKeyRequest = Shapes::StructureShape.new(name: 'CreateApiKeyRequest')
|
@@ -89,7 +90,11 @@ module Aws::AppSync
|
|
89
90
|
DomainNameConfigs = Shapes::ListShape.new(name: 'DomainNameConfigs')
|
90
91
|
DynamodbDataSourceConfig = Shapes::StructureShape.new(name: 'DynamodbDataSourceConfig')
|
91
92
|
ElasticsearchDataSourceConfig = Shapes::StructureShape.new(name: 'ElasticsearchDataSourceConfig')
|
93
|
+
ErrorDetail = Shapes::StructureShape.new(name: 'ErrorDetail')
|
92
94
|
ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
|
95
|
+
EvaluateMappingTemplateRequest = Shapes::StructureShape.new(name: 'EvaluateMappingTemplateRequest')
|
96
|
+
EvaluateMappingTemplateResponse = Shapes::StructureShape.new(name: 'EvaluateMappingTemplateResponse')
|
97
|
+
EvaluationResult = Shapes::StringShape.new(name: 'EvaluationResult')
|
93
98
|
FieldLogLevel = Shapes::StringShape.new(name: 'FieldLogLevel')
|
94
99
|
FlushApiCacheRequest = Shapes::StructureShape.new(name: 'FlushApiCacheRequest')
|
95
100
|
FlushApiCacheResponse = Shapes::StructureShape.new(name: 'FlushApiCacheResponse')
|
@@ -175,6 +180,7 @@ module Aws::AppSync
|
|
175
180
|
TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
|
176
181
|
TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
|
177
182
|
TagValue = Shapes::StringShape.new(name: 'TagValue')
|
183
|
+
Template = Shapes::StringShape.new(name: 'Template')
|
178
184
|
Type = Shapes::StructureShape.new(name: 'Type')
|
179
185
|
TypeDefinitionFormat = Shapes::StringShape.new(name: 'TypeDefinitionFormat')
|
180
186
|
TypeList = Shapes::ListShape.new(name: 'TypeList')
|
@@ -259,7 +265,7 @@ module Aws::AppSync
|
|
259
265
|
BadRequestException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
|
260
266
|
BadRequestException.struct_class = Types::BadRequestException
|
261
267
|
|
262
|
-
CachingConfig.add_member(:ttl, Shapes::ShapeRef.new(shape: Long, location_name: "ttl"))
|
268
|
+
CachingConfig.add_member(:ttl, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "ttl"))
|
263
269
|
CachingConfig.add_member(:caching_keys, Shapes::ShapeRef.new(shape: CachingKeys, location_name: "cachingKeys"))
|
264
270
|
CachingConfig.struct_class = Types::CachingConfig
|
265
271
|
|
@@ -459,6 +465,17 @@ module Aws::AppSync
|
|
459
465
|
ElasticsearchDataSourceConfig.add_member(:aws_region, Shapes::ShapeRef.new(shape: String, required: true, location_name: "awsRegion"))
|
460
466
|
ElasticsearchDataSourceConfig.struct_class = Types::ElasticsearchDataSourceConfig
|
461
467
|
|
468
|
+
ErrorDetail.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
|
469
|
+
ErrorDetail.struct_class = Types::ErrorDetail
|
470
|
+
|
471
|
+
EvaluateMappingTemplateRequest.add_member(:template, Shapes::ShapeRef.new(shape: Template, required: true, location_name: "template"))
|
472
|
+
EvaluateMappingTemplateRequest.add_member(:context, Shapes::ShapeRef.new(shape: Context, required: true, location_name: "context"))
|
473
|
+
EvaluateMappingTemplateRequest.struct_class = Types::EvaluateMappingTemplateRequest
|
474
|
+
|
475
|
+
EvaluateMappingTemplateResponse.add_member(:evaluation_result, Shapes::ShapeRef.new(shape: EvaluationResult, location_name: "evaluationResult"))
|
476
|
+
EvaluateMappingTemplateResponse.add_member(:error, Shapes::ShapeRef.new(shape: ErrorDetail, location_name: "error"))
|
477
|
+
EvaluateMappingTemplateResponse.struct_class = Types::EvaluateMappingTemplateResponse
|
478
|
+
|
462
479
|
FlushApiCacheRequest.add_member(:api_id, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "apiId"))
|
463
480
|
FlushApiCacheRequest.struct_class = Types::FlushApiCacheRequest
|
464
481
|
|
@@ -1113,6 +1130,17 @@ module Aws::AppSync
|
|
1113
1130
|
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1114
1131
|
end)
|
1115
1132
|
|
1133
|
+
api.add_operation(:evaluate_mapping_template, Seahorse::Model::Operation.new.tap do |o|
|
1134
|
+
o.name = "EvaluateMappingTemplate"
|
1135
|
+
o.http_method = "POST"
|
1136
|
+
o.http_request_uri = "/v1/dataplane-evaluatetemplate"
|
1137
|
+
o.input = Shapes::ShapeRef.new(shape: EvaluateMappingTemplateRequest)
|
1138
|
+
o.output = Shapes::ShapeRef.new(shape: EvaluateMappingTemplateResponse)
|
1139
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
1140
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
|
1141
|
+
o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
|
1142
|
+
end)
|
1143
|
+
|
1116
1144
|
api.add_operation(:flush_api_cache, Seahorse::Model::Operation.new.tap do |o|
|
1117
1145
|
o.name = "FlushApiCache"
|
1118
1146
|
o.http_method = "DELETE"
|
@@ -0,0 +1,66 @@
|
|
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/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
module Aws::AppSync
|
11
|
+
# Endpoint parameters used to influence endpoints per request.
|
12
|
+
#
|
13
|
+
# @!attribute region
|
14
|
+
# The AWS region used to dispatch the request.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
#
|
18
|
+
# @!attribute use_dual_stack
|
19
|
+
# When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
|
20
|
+
#
|
21
|
+
# @return [Boolean]
|
22
|
+
#
|
23
|
+
# @!attribute use_fips
|
24
|
+
# When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
|
25
|
+
#
|
26
|
+
# @return [Boolean]
|
27
|
+
#
|
28
|
+
# @!attribute endpoint
|
29
|
+
# Override the endpoint used to send this request
|
30
|
+
#
|
31
|
+
# @return [String]
|
32
|
+
#
|
33
|
+
EndpointParameters = Struct.new(
|
34
|
+
:region,
|
35
|
+
:use_dual_stack,
|
36
|
+
:use_fips,
|
37
|
+
:endpoint,
|
38
|
+
) do
|
39
|
+
include Aws::Structure
|
40
|
+
|
41
|
+
# @api private
|
42
|
+
class << self
|
43
|
+
PARAM_MAP = {
|
44
|
+
'Region' => :region,
|
45
|
+
'UseDualStack' => :use_dual_stack,
|
46
|
+
'UseFIPS' => :use_fips,
|
47
|
+
'Endpoint' => :endpoint,
|
48
|
+
}.freeze
|
49
|
+
end
|
50
|
+
|
51
|
+
def initialize(options = {})
|
52
|
+
self[:region] = options[:region]
|
53
|
+
self[:use_dual_stack] = options[:use_dual_stack]
|
54
|
+
self[:use_dual_stack] = false if self[:use_dual_stack].nil?
|
55
|
+
if self[:use_dual_stack].nil?
|
56
|
+
raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
|
57
|
+
end
|
58
|
+
self[:use_fips] = options[:use_fips]
|
59
|
+
self[:use_fips] = false if self[:use_fips].nil?
|
60
|
+
if self[:use_fips].nil?
|
61
|
+
raise ArgumentError, "Missing required EndpointParameter: :use_fips"
|
62
|
+
end
|
63
|
+
self[:endpoint] = options[:endpoint]
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,111 @@
|
|
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/version-3/CONTRIBUTING.md
|
7
|
+
#
|
8
|
+
# WARNING ABOUT GENERATED CODE
|
9
|
+
|
10
|
+
module Aws::AppSync
|
11
|
+
class EndpointProvider
|
12
|
+
def initialize(rule_set = nil)
|
13
|
+
@@rule_set ||= begin
|
14
|
+
endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
|
15
|
+
Aws::Endpoints::RuleSet.new(
|
16
|
+
version: endpoint_rules['version'],
|
17
|
+
service_id: endpoint_rules['serviceId'],
|
18
|
+
parameters: endpoint_rules['parameters'],
|
19
|
+
rules: endpoint_rules['rules']
|
20
|
+
)
|
21
|
+
end
|
22
|
+
@provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
|
23
|
+
end
|
24
|
+
|
25
|
+
def resolve_endpoint(parameters)
|
26
|
+
@provider.resolve_endpoint(parameters)
|
27
|
+
end
|
28
|
+
|
29
|
+
# @api private
|
30
|
+
RULES = <<-JSON
|
31
|
+
eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
|
32
|
+
bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
|
33
|
+
dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
|
34
|
+
cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
|
35
|
+
dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
|
36
|
+
ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
|
37
|
+
ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
|
38
|
+
ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
|
39
|
+
aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
|
40
|
+
OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
|
41
|
+
UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
|
42
|
+
dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
|
43
|
+
UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
|
44
|
+
dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
|
45
|
+
ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
|
46
|
+
IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
|
47
|
+
aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
|
48
|
+
bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
|
49
|
+
ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
|
50
|
+
Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
|
51
|
+
cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
|
52
|
+
InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
|
53
|
+
aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
|
54
|
+
cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
|
55
|
+
InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
|
56
|
+
W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
|
57
|
+
UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
|
58
|
+
SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
|
59
|
+
eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
|
60
|
+
InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
|
61
|
+
LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
|
62
|
+
ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
|
63
|
+
b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
|
64
|
+
fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
|
65
|
+
RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
|
66
|
+
ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
|
67
|
+
ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
|
68
|
+
ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
|
69
|
+
dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
|
70
|
+
dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
|
71
|
+
Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
|
72
|
+
In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
|
73
|
+
YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
|
74
|
+
YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
|
75
|
+
cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
|
76
|
+
dCI6eyJ1cmwiOiJodHRwczovL2FwcHN5bmMtZmlwcy57UmVnaW9ufS57UGFy
|
77
|
+
dGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVz
|
78
|
+
Ijp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsiY29u
|
79
|
+
ZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBhbmQgRHVhbFN0YWNrIGFyZSBl
|
80
|
+
bmFibGVkLCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBv
|
81
|
+
bmUgb3IgYm90aCIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpb
|
82
|
+
eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBT
|
83
|
+
In0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9u
|
84
|
+
cyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6
|
85
|
+
ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwi
|
86
|
+
c3VwcG9ydHNGSVBTIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJj
|
87
|
+
b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
|
88
|
+
aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwc3luYy1m
|
89
|
+
aXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInBy
|
90
|
+
b3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9
|
91
|
+
XX1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgaXMgZW5hYmxl
|
92
|
+
ZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBGSVBTIiwi
|
93
|
+
dHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVh
|
94
|
+
bkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVd
|
95
|
+
fV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZu
|
96
|
+
IjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRy
|
97
|
+
IiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRz
|
98
|
+
RHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25k
|
99
|
+
aXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hcHBzeW5j
|
100
|
+
LntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4
|
101
|
+
fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRw
|
102
|
+
b2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sg
|
103
|
+
aXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9y
|
104
|
+
dCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
|
105
|
+
W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwc3luYy57UmVnaW9u
|
106
|
+
fS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7
|
107
|
+
fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0=
|
108
|
+
|
109
|
+
JSON
|
110
|
+
end
|
111
|
+
end
|