ReqRest
Show / Hide Table of Contents

Struct StatusCodeRange

Represents a range between two HTTP status codes and provides methods for determining whether status codes fall within this range.

Implements
IEquatable<StatusCodeRange>
Namespace: ReqRest.Http
Assembly: ReqRest.dll
Syntax
public struct StatusCodeRange : IEquatable<StatusCodeRange>

Constructors

StatusCodeRange(Nullable<Int32>)

Initializes a new StatusCodeRange instance which only spans a single status code.

Declaration
public StatusCodeRange(int? singleStatusCode)
Parameters
Type Name Description
Nullable<Int32> singleStatusCode

The single status code that is covered by this range. If null, this range is equal to All and will thus cover every single available status code.

StatusCodeRange(Nullable<Int32>, Nullable<Int32>)

Initializes a new StatusCodeRange instance which starts at from and ends at to.

Declaration
public StatusCodeRange(int? from, int? to)
Parameters
Type Name Description
Nullable<Int32> from

The status code where the range starts.

If null, every single status code before to is covered by this range.

If to is also null, this range covers every available status code.

Nullable<Int32> to

The status code where the range ends.

If null, every single status code after from is covered by this range.

If from is also null, this range covers every available status code.

Exceptions
Type Condition
ArgumentException

from is larger than to.

Fields

All

A StatusCodeRange which covers every single status code that is available.

Declaration
public static readonly StatusCodeRange All

ClientErrors

A StatusCodeRange which covers status codes that indicate client errors, i.e. status codes from 400 to 499.

Declaration
public static readonly StatusCodeRange ClientErrors

Errors

A StatusCodeRange which covers status codes that indicate either client or a server errors, i.e. status codes from 400 to 599.

This is basically a unification of ClientErrors and ServerErrors.

Declaration
public static readonly StatusCodeRange Errors

Informational

A StatusCodeRange which covers informational status codes, i.e. status codes from 100 to 199.

Declaration
public static readonly StatusCodeRange Informational

Redirection

A StatusCodeRange which covers status codes that indicate a redirection, i.e. status codes from 300 to 399.

Declaration
public static readonly StatusCodeRange Redirection

ServerErrors

A StatusCodeRange which covers status codes that indicate server errors, i.e. status codes from 500 to 599.

Declaration
public static readonly StatusCodeRange ServerErrors

Success

A StatusCodeRange which covers status codes that indicate success, i.e. status codes from 200 to 299.

Declaration
public static readonly StatusCodeRange Success

Properties

From

Gets or sets the status code where the range starts.

If null, every single status code before To is covered by this range.

If To is also null, this range covers every available status code.

Declaration
public int? From { get; }

HasWildcardComponent

Gets a value indicating whether From, To or both are null, thus indicating a wildcard.

Declaration
public bool HasWildcardComponent { get; }

IsSingleStatusCode

Gets a value indicating whether this range spans only a single status code, i.e. if From equals To. The only exception to this rule is this range being All. If so, this returns false.

Declaration
public bool IsSingleStatusCode { get; }

To

Gets or sets the status code where the range ends.

If null, every single status code after From is covered by this range.

If From is also null, this range covers every available status code.

Declaration
public int? To { get; }

Methods

Equals(StatusCodeRange)

Returns a value indicating whether this status code range equals the other one.

Declaration
public bool Equals(StatusCodeRange other)
Parameters
Type Name Description
StatusCodeRange other

Another StatusCodeRange instance.

Returns
Type Description
Boolean

true the two ranges are considered equal; false if not.

Equals(Object)

Returns a value indicating whether this status code range equals the specified object.

Declaration
public override bool Equals(object obj)
Parameters
Type Name Description
Object obj

An object to be compared with this status code range.

Returns
Type Description
Boolean

true the two objects are considered equal; false if not.

Overrides
ValueType.Equals(Object)

GetHashCode()

Returns a unique hash code for this status code range.

Declaration
public override int GetHashCode()
Returns
Type Description
Int32

A unique hash code.

Overrides
ValueType.GetHashCode()

IsInRange(StatusCodeRange)

Returns a value indicating whether the other specified status code range falls within this range. This will also return true if the ranges have equal values. For example, this will return true for (200-300), (250-300).

Declaration
public bool IsInRange(StatusCodeRange other)
Parameters
Type Name Description
StatusCodeRange other

The other status code range to be checked.

Returns
Type Description
Boolean

true if other falls within this range; false if not.

ToString()

Returns a string similar to 200-404, 200-, -200, 200 or *, depending on From and To.

Declaration
public override string ToString()
Returns
Type Description
String

A string representing the current status code range.

Overrides
ValueType.ToString()

Operators

Equality(StatusCodeRange, StatusCodeRange)

Declaration
public static bool operator ==(StatusCodeRange left, StatusCodeRange right)
Parameters
Type Name Description
StatusCodeRange left
StatusCodeRange right
Returns
Type Description
Boolean
See Also
Equals(StatusCodeRange)

Implicit(Nullable<Int32> to StatusCodeRange)

Creates a new StatusCodeRange instance which only spans the specified singleStatusCode.

Declaration
public static implicit operator StatusCodeRange(int? singleStatusCode)
Parameters
Type Name Description
Nullable<Int32> singleStatusCode

The single status code that is covered by this range. If null, this range is equal to All and will thus cover every single available status code.

Returns
Type Description
StatusCodeRange

Implicit((Nullable<Int32> From, Nullable<Int32> To) to StatusCodeRange)

Creates a new StatusCodeRange instance with the range values defined by the specified tuple.

Declaration
public static implicit operator StatusCodeRange((int? From, int? To)range)
Parameters
Type Name Description
ValueTuple<Nullable<Int32>, Nullable<Int32>> range

A tuple where the first value corresponds to From and the second value to To.

Returns
Type Description
StatusCodeRange

Inequality(StatusCodeRange, StatusCodeRange)

Declaration
public static bool operator !=(StatusCodeRange left, StatusCodeRange right)
Parameters
Type Name Description
StatusCodeRange left
StatusCodeRange right
Returns
Type Description
Boolean
See Also
Equals(StatusCodeRange)

Implements

System.IEquatable<T>
Back to top Copyright © 2019 ReqRest - Generated with DocFX - Material Theme made by Oscar Vásquez - Impressum (Imprint)