aws-sdk-appmesh 1.46.0 → 1.48.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-appmesh/client.rb +176 -3
- data/lib/aws-sdk-appmesh/client_api.rb +34 -0
- data/lib/aws-sdk-appmesh/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-appmesh/endpoint_provider.rb +111 -0
- data/lib/aws-sdk-appmesh/endpoints.rb +547 -0
- data/lib/aws-sdk-appmesh/plugins/endpoints.rb +144 -0
- data/lib/aws-sdk-appmesh/types.rb +298 -3
- data/lib/aws-sdk-appmesh.rb +5 -1
- metadata +8 -4
@@ -149,6 +149,10 @@ module Aws::AppMesh
|
|
149
149
|
HttpTimeout = Shapes::StructureShape.new(name: 'HttpTimeout')
|
150
150
|
InternalServerErrorException = Shapes::StructureShape.new(name: 'InternalServerErrorException')
|
151
151
|
IpPreference = Shapes::StringShape.new(name: 'IpPreference')
|
152
|
+
JsonFormat = Shapes::ListShape.new(name: 'JsonFormat')
|
153
|
+
JsonFormatRef = Shapes::StructureShape.new(name: 'JsonFormatRef')
|
154
|
+
JsonKey = Shapes::StringShape.new(name: 'JsonKey')
|
155
|
+
JsonValue = Shapes::StringShape.new(name: 'JsonValue')
|
152
156
|
LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
|
153
157
|
ListGatewayRoutesInput = Shapes::StructureShape.new(name: 'ListGatewayRoutesInput')
|
154
158
|
ListGatewayRoutesLimit = Shapes::IntegerShape.new(name: 'ListGatewayRoutesLimit')
|
@@ -174,6 +178,7 @@ module Aws::AppMesh
|
|
174
178
|
ListVirtualServicesLimit = Shapes::IntegerShape.new(name: 'ListVirtualServicesLimit')
|
175
179
|
ListVirtualServicesOutput = Shapes::StructureShape.new(name: 'ListVirtualServicesOutput')
|
176
180
|
Listener = Shapes::StructureShape.new(name: 'Listener')
|
181
|
+
ListenerPort = Shapes::IntegerShape.new(name: 'ListenerPort')
|
177
182
|
ListenerTimeout = Shapes::UnionShape.new(name: 'ListenerTimeout')
|
178
183
|
ListenerTls = Shapes::StructureShape.new(name: 'ListenerTls')
|
179
184
|
ListenerTlsAcmCertificate = Shapes::StructureShape.new(name: 'ListenerTlsAcmCertificate')
|
@@ -185,6 +190,7 @@ module Aws::AppMesh
|
|
185
190
|
ListenerTlsValidationContextTrust = Shapes::UnionShape.new(name: 'ListenerTlsValidationContextTrust')
|
186
191
|
Listeners = Shapes::ListShape.new(name: 'Listeners')
|
187
192
|
Logging = Shapes::StructureShape.new(name: 'Logging')
|
193
|
+
LoggingFormat = Shapes::UnionShape.new(name: 'LoggingFormat')
|
188
194
|
Long = Shapes::IntegerShape.new(name: 'Long')
|
189
195
|
MatchRange = Shapes::StructureShape.new(name: 'MatchRange')
|
190
196
|
MaxConnections = Shapes::IntegerShape.new(name: 'MaxConnections')
|
@@ -242,7 +248,9 @@ module Aws::AppMesh
|
|
242
248
|
TcpRetryPolicyEvents = Shapes::ListShape.new(name: 'TcpRetryPolicyEvents')
|
243
249
|
TcpRoute = Shapes::StructureShape.new(name: 'TcpRoute')
|
244
250
|
TcpRouteAction = Shapes::StructureShape.new(name: 'TcpRouteAction')
|
251
|
+
TcpRouteMatch = Shapes::StructureShape.new(name: 'TcpRouteMatch')
|
245
252
|
TcpTimeout = Shapes::StructureShape.new(name: 'TcpTimeout')
|
253
|
+
TextFormat = Shapes::StringShape.new(name: 'TextFormat')
|
246
254
|
Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
|
247
255
|
TlsValidationContext = Shapes::StructureShape.new(name: 'TlsValidationContext')
|
248
256
|
TlsValidationContextAcmTrust = Shapes::StructureShape.new(name: 'TlsValidationContextAcmTrust')
|
@@ -637,6 +645,7 @@ module Aws::AppMesh
|
|
637
645
|
EgressFilter.add_member(:type, Shapes::ShapeRef.new(shape: EgressFilterType, required: true, location_name: "type"))
|
638
646
|
EgressFilter.struct_class = Types::EgressFilter
|
639
647
|
|
648
|
+
FileAccessLog.add_member(:format, Shapes::ShapeRef.new(shape: LoggingFormat, location_name: "format"))
|
640
649
|
FileAccessLog.add_member(:path, Shapes::ShapeRef.new(shape: FilePath, required: true, location_name: "path"))
|
641
650
|
FileAccessLog.struct_class = Types::FileAccessLog
|
642
651
|
|
@@ -680,6 +689,7 @@ module Aws::AppMesh
|
|
680
689
|
GatewayRouteStatus.add_member(:status, Shapes::ShapeRef.new(shape: GatewayRouteStatusCode, required: true, location_name: "status"))
|
681
690
|
GatewayRouteStatus.struct_class = Types::GatewayRouteStatus
|
682
691
|
|
692
|
+
GatewayRouteTarget.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
683
693
|
GatewayRouteTarget.add_member(:virtual_service, Shapes::ShapeRef.new(shape: GatewayRouteVirtualService, required: true, location_name: "virtualService"))
|
684
694
|
GatewayRouteTarget.struct_class = Types::GatewayRouteTarget
|
685
695
|
|
@@ -696,6 +706,7 @@ module Aws::AppMesh
|
|
696
706
|
|
697
707
|
GrpcGatewayRouteMatch.add_member(:hostname, Shapes::ShapeRef.new(shape: GatewayRouteHostnameMatch, location_name: "hostname"))
|
698
708
|
GrpcGatewayRouteMatch.add_member(:metadata, Shapes::ShapeRef.new(shape: GrpcGatewayRouteMetadataList, location_name: "metadata"))
|
709
|
+
GrpcGatewayRouteMatch.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
699
710
|
GrpcGatewayRouteMatch.add_member(:service_name, Shapes::ShapeRef.new(shape: ServiceName, location_name: "serviceName"))
|
700
711
|
GrpcGatewayRouteMatch.struct_class = Types::GrpcGatewayRouteMatch
|
701
712
|
|
@@ -743,6 +754,7 @@ module Aws::AppMesh
|
|
743
754
|
|
744
755
|
GrpcRouteMatch.add_member(:metadata, Shapes::ShapeRef.new(shape: GrpcRouteMetadataList, location_name: "metadata"))
|
745
756
|
GrpcRouteMatch.add_member(:method_name, Shapes::ShapeRef.new(shape: MethodName, location_name: "methodName"))
|
757
|
+
GrpcRouteMatch.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
746
758
|
GrpcRouteMatch.add_member(:service_name, Shapes::ShapeRef.new(shape: ServiceName, location_name: "serviceName"))
|
747
759
|
GrpcRouteMatch.struct_class = Types::GrpcRouteMatch
|
748
760
|
|
@@ -813,6 +825,7 @@ module Aws::AppMesh
|
|
813
825
|
HttpGatewayRouteMatch.add_member(:hostname, Shapes::ShapeRef.new(shape: GatewayRouteHostnameMatch, location_name: "hostname"))
|
814
826
|
HttpGatewayRouteMatch.add_member(:method, Shapes::ShapeRef.new(shape: HttpMethod, location_name: "method"))
|
815
827
|
HttpGatewayRouteMatch.add_member(:path, Shapes::ShapeRef.new(shape: HttpPathMatch, location_name: "path"))
|
828
|
+
HttpGatewayRouteMatch.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
816
829
|
HttpGatewayRouteMatch.add_member(:prefix, Shapes::ShapeRef.new(shape: String, location_name: "prefix"))
|
817
830
|
HttpGatewayRouteMatch.add_member(:query_parameters, Shapes::ShapeRef.new(shape: HttpQueryParameters, location_name: "queryParameters"))
|
818
831
|
HttpGatewayRouteMatch.struct_class = Types::HttpGatewayRouteMatch
|
@@ -866,6 +879,7 @@ module Aws::AppMesh
|
|
866
879
|
HttpRouteMatch.add_member(:headers, Shapes::ShapeRef.new(shape: HttpRouteHeaders, location_name: "headers"))
|
867
880
|
HttpRouteMatch.add_member(:method, Shapes::ShapeRef.new(shape: HttpMethod, location_name: "method"))
|
868
881
|
HttpRouteMatch.add_member(:path, Shapes::ShapeRef.new(shape: HttpPathMatch, location_name: "path"))
|
882
|
+
HttpRouteMatch.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
869
883
|
HttpRouteMatch.add_member(:prefix, Shapes::ShapeRef.new(shape: String, location_name: "prefix"))
|
870
884
|
HttpRouteMatch.add_member(:query_parameters, Shapes::ShapeRef.new(shape: HttpQueryParameters, location_name: "queryParameters"))
|
871
885
|
HttpRouteMatch.add_member(:scheme, Shapes::ShapeRef.new(shape: HttpScheme, location_name: "scheme"))
|
@@ -878,6 +892,12 @@ module Aws::AppMesh
|
|
878
892
|
InternalServerErrorException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
|
879
893
|
InternalServerErrorException.struct_class = Types::InternalServerErrorException
|
880
894
|
|
895
|
+
JsonFormat.member = Shapes::ShapeRef.new(shape: JsonFormatRef)
|
896
|
+
|
897
|
+
JsonFormatRef.add_member(:key, Shapes::ShapeRef.new(shape: JsonKey, required: true, location_name: "key"))
|
898
|
+
JsonFormatRef.add_member(:value, Shapes::ShapeRef.new(shape: JsonValue, required: true, location_name: "value"))
|
899
|
+
JsonFormatRef.struct_class = Types::JsonFormatRef
|
900
|
+
|
881
901
|
LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
|
882
902
|
LimitExceededException.struct_class = Types::LimitExceededException
|
883
903
|
|
@@ -1022,6 +1042,14 @@ module Aws::AppMesh
|
|
1022
1042
|
Logging.add_member(:access_log, Shapes::ShapeRef.new(shape: AccessLog, location_name: "accessLog"))
|
1023
1043
|
Logging.struct_class = Types::Logging
|
1024
1044
|
|
1045
|
+
LoggingFormat.add_member(:json, Shapes::ShapeRef.new(shape: JsonFormat, location_name: "json"))
|
1046
|
+
LoggingFormat.add_member(:text, Shapes::ShapeRef.new(shape: TextFormat, location_name: "text"))
|
1047
|
+
LoggingFormat.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
|
1048
|
+
LoggingFormat.add_member_subclass(:json, Types::LoggingFormat::Json)
|
1049
|
+
LoggingFormat.add_member_subclass(:text, Types::LoggingFormat::Text)
|
1050
|
+
LoggingFormat.add_member_subclass(:unknown, Types::LoggingFormat::Unknown)
|
1051
|
+
LoggingFormat.struct_class = Types::LoggingFormat
|
1052
|
+
|
1025
1053
|
MatchRange.add_member(:end, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "end"))
|
1026
1054
|
MatchRange.add_member(:start, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "start"))
|
1027
1055
|
MatchRange.struct_class = Types::MatchRange
|
@@ -1150,12 +1178,16 @@ module Aws::AppMesh
|
|
1150
1178
|
TcpRetryPolicyEvents.member = Shapes::ShapeRef.new(shape: TcpRetryPolicyEvent)
|
1151
1179
|
|
1152
1180
|
TcpRoute.add_member(:action, Shapes::ShapeRef.new(shape: TcpRouteAction, required: true, location_name: "action"))
|
1181
|
+
TcpRoute.add_member(:match, Shapes::ShapeRef.new(shape: TcpRouteMatch, location_name: "match"))
|
1153
1182
|
TcpRoute.add_member(:timeout, Shapes::ShapeRef.new(shape: TcpTimeout, location_name: "timeout"))
|
1154
1183
|
TcpRoute.struct_class = Types::TcpRoute
|
1155
1184
|
|
1156
1185
|
TcpRouteAction.add_member(:weighted_targets, Shapes::ShapeRef.new(shape: WeightedTargets, required: true, location_name: "weightedTargets"))
|
1157
1186
|
TcpRouteAction.struct_class = Types::TcpRouteAction
|
1158
1187
|
|
1188
|
+
TcpRouteMatch.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
1189
|
+
TcpRouteMatch.struct_class = Types::TcpRouteMatch
|
1190
|
+
|
1159
1191
|
TcpTimeout.add_member(:idle, Shapes::ShapeRef.new(shape: Duration, location_name: "idle"))
|
1160
1192
|
TcpTimeout.struct_class = Types::TcpTimeout
|
1161
1193
|
|
@@ -1323,6 +1355,7 @@ module Aws::AppMesh
|
|
1323
1355
|
VirtualGatewayData.add_member(:virtual_gateway_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "virtualGatewayName"))
|
1324
1356
|
VirtualGatewayData.struct_class = Types::VirtualGatewayData
|
1325
1357
|
|
1358
|
+
VirtualGatewayFileAccessLog.add_member(:format, Shapes::ShapeRef.new(shape: LoggingFormat, location_name: "format"))
|
1326
1359
|
VirtualGatewayFileAccessLog.add_member(:path, Shapes::ShapeRef.new(shape: FilePath, required: true, location_name: "path"))
|
1327
1360
|
VirtualGatewayFileAccessLog.struct_class = Types::VirtualGatewayFileAccessLog
|
1328
1361
|
|
@@ -1567,6 +1600,7 @@ module Aws::AppMesh
|
|
1567
1600
|
VirtualServiceStatus.add_member(:status, Shapes::ShapeRef.new(shape: VirtualServiceStatusCode, required: true, location_name: "status"))
|
1568
1601
|
VirtualServiceStatus.struct_class = Types::VirtualServiceStatus
|
1569
1602
|
|
1603
|
+
WeightedTarget.add_member(:port, Shapes::ShapeRef.new(shape: ListenerPort, location_name: "port"))
|
1570
1604
|
WeightedTarget.add_member(:virtual_node, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "virtualNode"))
|
1571
1605
|
WeightedTarget.add_member(:weight, Shapes::ShapeRef.new(shape: PercentInt, required: true, location_name: "weight"))
|
1572
1606
|
WeightedTarget.struct_class = Types::WeightedTarget
|
@@ -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::AppMesh
|
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::AppMesh
|
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
|
+
dCI6eyJ1cmwiOiJodHRwczovL2FwcG1lc2gtZmlwcy57UmVnaW9ufS57UGFy
|
77
|
+
dGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVz
|
78
|
+
Ijp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsiY29u
|
79
|
+
ZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBhbmQgRHVhbFN0YWNrIGFyZSBl
|
80
|
+
bmFibGVkLCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBv
|
81
|
+
bmUgb3IgYm90aCIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpb
|
82
|
+
eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBT
|
83
|
+
In0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9u
|
84
|
+
cyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6
|
85
|
+
ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwi
|
86
|
+
c3VwcG9ydHNGSVBTIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJj
|
87
|
+
b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
|
88
|
+
aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwbWVzaC1m
|
89
|
+
aXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInBy
|
90
|
+
b3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9
|
91
|
+
XX1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgaXMgZW5hYmxl
|
92
|
+
ZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBGSVBTIiwi
|
93
|
+
dHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVh
|
94
|
+
bkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVd
|
95
|
+
fV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZu
|
96
|
+
IjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRy
|
97
|
+
IiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRz
|
98
|
+
RHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25k
|
99
|
+
aXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hcHBtZXNo
|
100
|
+
LntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4
|
101
|
+
fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRw
|
102
|
+
b2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sg
|
103
|
+
aXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9y
|
104
|
+
dCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
|
105
|
+
W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwbWVzaC57UmVnaW9u
|
106
|
+
fS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7
|
107
|
+
fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0=
|
108
|
+
|
109
|
+
JSON
|
110
|
+
end
|
111
|
+
end
|