Interface HttpTransporter
- All Superinterfaces:
AutoCloseable, Closeable, Transporter
A transporter using HTTP protocol.
- Since:
- 2.0.0
-
Field Summary
Fields inherited from interface Transporter
ERROR_NOT_FOUND, ERROR_OTHER -
Method Summary
Modifier and TypeMethodDescriptiondefault intClassifies the type of exception that has been thrown from a previous request to the transporter.static voidlogImmediateRetry(org.slf4j.Logger logger, String method, URI uri, int requestAttempt, int maxRequestAttempt, Throwable exception) Log a retry message for an immediate retry.static voidlogRetry(org.slf4j.Logger logger, String method, URI uri, int requestAttempt, int maxRequestAttempt, String reason, long retryDelay, String retryDelayReason) Log a retry message for a delayed retry.Methods inherited from interface Transporter
close, get, peek, put
-
Method Details
-
classify
Description copied from interface:TransporterClassifies the type of exception that has been thrown from a previous request to the transporter. The exception types employed by a transporter are generally unknown to its caller. Where a caller needs to distinguish between certain error cases, it employs this method to detect which error case corresponds to the exception.- Specified by:
classifyin interfaceTransporter- Parameters:
error- The exception to classify, must not benull.- Returns:
- The classification of the error, either
Transporter.ERROR_NOT_FOUNDorTransporter.ERROR_OTHER.
-
logImmediateRetry
static void logImmediateRetry(org.slf4j.Logger logger, String method, URI uri, int requestAttempt, int maxRequestAttempt, Throwable exception) Log a retry message for an immediate retry.- Parameters:
logger- the logger to log the retry messagemethod- the HTTP method of the request (e.g. GET, PUT, etc.)uri- the URI of the requestrequestAttempt- the 0-based counter of the previous request attempt (0 for the first attempt, 1 for the first retry, etc.)maxRequestAttempt- the maximum number of request attempts (this is including this original request)exception- the exception that caused the immediate retry
-
logRetry
static void logRetry(org.slf4j.Logger logger, String method, URI uri, int requestAttempt, int maxRequestAttempt, String reason, long retryDelay, String retryDelayReason) Log a retry message for a delayed retry.- Parameters:
logger- the logger to log the retry messagemethod- the HTTP method of the request (e.g. GET, PUT, etc.)uri- the URI of the requestrequestAttempt- the 0-based counter of the previous request attempt (0 for the first attempt, 1 for the first retry, etc.)maxRequestAttempt- the maximum number of request attempts (this is including this original request)reason- the reason for the retry (usually a status code or an exception)retryDelay- the interval in milliseconds before the next retry (0 or negative for immediate retry)retryDelayReason- the reason for the retry interval (may be empty if unknown)
-