26
26
import java .time .ZonedDateTime ;
27
27
import java .util .ArrayList ;
28
28
import java .util .Arrays ;
29
- import java .util .LinkedHashMap ;
30
29
import java .util .List ;
31
30
import java .util .Map ;
32
31
import java .util .function .Consumer ;
@@ -83,8 +82,6 @@ final class DefaultRestClient implements RestClient {
83
82
84
83
private static final ClientRequestObservationConvention DEFAULT_OBSERVATION_CONVENTION = new DefaultClientRequestObservationConvention ();
85
84
86
- private static final String URI_TEMPLATE_ATTRIBUTE = RestClient .class .getName () + ".uriTemplate" ;
87
-
88
85
89
86
private final ClientHttpRequestFactory clientRequestFactory ;
90
87
@@ -256,7 +253,8 @@ private class DefaultRequestBodyUriSpec implements RequestBodyUriSpec {
256
253
@ Nullable
257
254
private InternalBody body ;
258
255
259
- private final Map <String , Object > attributes = new LinkedHashMap <>(4 );
256
+ @ Nullable
257
+ private String uriTemplate ;
260
258
261
259
@ Nullable
262
260
private Consumer <ClientHttpRequest > httpRequestConsumer ;
@@ -267,19 +265,19 @@ public DefaultRequestBodyUriSpec(HttpMethod httpMethod) {
267
265
268
266
@ Override
269
267
public RequestBodySpec uri (String uriTemplate , Object ... uriVariables ) {
270
- attribute ( URI_TEMPLATE_ATTRIBUTE , uriTemplate ) ;
268
+ this . uriTemplate = uriTemplate ;
271
269
return uri (DefaultRestClient .this .uriBuilderFactory .expand (uriTemplate , uriVariables ));
272
270
}
273
271
274
272
@ Override
275
273
public RequestBodySpec uri (String uriTemplate , Map <String , ?> uriVariables ) {
276
- attribute ( URI_TEMPLATE_ATTRIBUTE , uriTemplate ) ;
274
+ this . uriTemplate = uriTemplate ;
277
275
return uri (DefaultRestClient .this .uriBuilderFactory .expand (uriTemplate , uriVariables ));
278
276
}
279
277
280
278
@ Override
281
279
public RequestBodySpec uri (String uriTemplate , Function <UriBuilder , URI > uriFunction ) {
282
- attribute ( URI_TEMPLATE_ATTRIBUTE , uriTemplate ) ;
280
+ this . uriTemplate = uriTemplate ;
283
281
return uri (uriFunction .apply (DefaultRestClient .this .uriBuilderFactory .uriString (uriTemplate )));
284
282
}
285
283
@@ -351,18 +349,6 @@ public DefaultRequestBodyUriSpec ifNoneMatch(String... ifNoneMatches) {
351
349
return this ;
352
350
}
353
351
354
- @ Override
355
- public RequestBodySpec attribute (String name , Object value ) {
356
- this .attributes .put (name , value );
357
- return this ;
358
- }
359
-
360
- @ Override
361
- public RequestBodySpec attributes (Consumer <Map <String , Object >> attributesConsumer ) {
362
- attributesConsumer .accept (this .attributes );
363
- return this ;
364
- }
365
-
366
352
@ Override
367
353
public RequestBodySpec httpRequest (Consumer <ClientHttpRequest > requestConsumer ) {
368
354
this .httpRequestConsumer = (this .httpRequestConsumer != null ?
@@ -455,7 +441,7 @@ private <T> T exchangeInternal(ExchangeFunction<T> exchangeFunction, boolean clo
455
441
ClientHttpRequest clientRequest = createRequest (uri );
456
442
clientRequest .getHeaders ().addAll (headers );
457
443
ClientRequestObservationContext observationContext = new ClientRequestObservationContext (clientRequest );
458
- observationContext .setUriTemplate (( String ) this .attributes . get ( URI_TEMPLATE_ATTRIBUTE ) );
444
+ observationContext .setUriTemplate (this .uriTemplate );
459
445
observation = ClientHttpObservationDocumentation .HTTP_CLIENT_EXCHANGES .observation (observationConvention ,
460
446
DEFAULT_OBSERVATION_CONVENTION , () -> observationContext , observationRegistry ).start ();
461
447
if (this .body != null ) {
0 commit comments