Class KevlarHttpRequestExtensions

Namespace
Kevlar.Extensions.Http
Assembly
Kevlar.Extensions.Http.dll

Configures Kevlar behavior on individual HTTP requests.

public static class KevlarHttpRequestExtensions
Inheritance
KevlarHttpRequestExtensions
Inherited Members

Methods

AllowReplay(HttpRequestMessage)

Permits retries, hedges, and other additional attempts for this request even though its HTTP method is not replay-safe. Content must still be replayable.

public static HttpRequestMessage AllowReplay(this HttpRequestMessage request)

Parameters

request HttpRequestMessage

Returns

HttpRequestMessage

Remarks

Opt in only when the server treats the operation as idempotent, for example because the request carries an idempotency key that the server deduplicates. Clones preserve headers, so every attempt sends the same key.

DisableReplay(HttpRequestMessage)

Suppresses retries, hedges, and other additional attempts for this request.

public static HttpRequestMessage DisableReplay(this HttpRequestMessage request)

Parameters

request HttpRequestMessage

Returns

HttpRequestMessage

WithKevlarCancellationToken(HttpRequestMessage, CancellationToken)

Links an additional cancellation token to this request's handler execution.

public static HttpRequestMessage WithKevlarCancellationToken(this HttpRequestMessage request, CancellationToken cancellationToken)

Parameters

request HttpRequestMessage
cancellationToken CancellationToken

Returns

HttpRequestMessage

WithKevlarProperties(HttpRequestMessage, Action<KevlarProperties>)

Adds an initializer for properties visible to strategies and callbacks.

public static HttpRequestMessage WithKevlarProperties(this HttpRequestMessage request, Action<KevlarProperties> configure)

Parameters

request HttpRequestMessage
configure Action<KevlarProperties>

Returns

HttpRequestMessage

WithShield(HttpRequestMessage, Shield<HttpResponseMessage>)

Uses shield instead of the client's default for this request.

public static HttpRequestMessage WithShield(this HttpRequestMessage request, Shield<HttpResponseMessage> shield)

Parameters

request HttpRequestMessage
shield Shield<HttpResponseMessage>

Returns

HttpRequestMessage

WithShieldName(HttpRequestMessage, string)

Sets the logical name consumed by a per-request shield selector.

public static HttpRequestMessage WithShieldName(this HttpRequestMessage request, string shieldName)

Parameters

request HttpRequestMessage
shieldName string

Returns

HttpRequestMessage