ServiceProtectionException
- Namespace:
PPDS.Dataverse.Resilience - Assembly:
PPDS.Dataverse - Kind: Class
- Base:
Exception - Implements:
ISerializable
Summary
Exception thrown when a service protection limit is hit.
Members
Constructors
ServiceProtectionException(string connectionName, TimeSpan retryAfter, int errorCode)
ServiceProtectionException(string connectionName, TimeSpan retryAfter, int errorCode)
Initializes a new instance of the PPDS.Dataverse.Resilience.ServiceProtectionException class.
-
Param
connectionName: The connection that was throttled. -
Param
retryAfter: Time to wait before retrying. -
Param
errorCode: The error code from the service.
ServiceProtectionException(string connectionName, TimeSpan retryAfter, int errorCode, Exception innerException)
ServiceProtectionException(string connectionName, TimeSpan retryAfter, int errorCode, Exception innerException)
Initializes a new instance of the PPDS.Dataverse.Resilience.ServiceProtectionException class.
-
Param
connectionName: The connection that was throttled. -
Param
retryAfter: Time to wait before retrying. -
Param
errorCode: The error code from the service. -
Param
innerException: The inner exception.
ServiceProtectionException(string message)
ServiceProtectionException(string message)
Initializes a new instance of the PPDS.Dataverse.Resilience.ServiceProtectionException class
with a custom message (used when all connections are throttled and tolerance is exceeded).
- Param
message: The exception message.
Methods
IsServiceProtectionError
bool IsServiceProtectionError(int errorCode)
Determines if an error code is a service protection error.
-
Param
errorCode: The error code to check. -
Returns: True if the error code indicates a service protection limit.
Properties
ConnectionName
string ConnectionName { get; }
Gets the name of the connection that was throttled.
ErrorCode
int ErrorCode { get; }
Gets the error code from the service.
RetryAfter
TimeSpan RetryAfter { get; }
Gets the time to wait before retrying.
Fields
ErrorCodeConcurrentRequestsExceeded
int ErrorCodeConcurrentRequestsExceeded
Error code for "Concurrent requests exceeded".
ErrorCodeExecutionTimeExceeded
int ErrorCodeExecutionTimeExceeded
Error code for "Combined execution time exceeded".
ErrorCodeRequestsExceeded
int ErrorCodeRequestsExceeded
Error code for "Number of requests exceeded".