Show / Hide Table of Contents

    Class CacheRequestComponent

    Implements a message pipeline component that resides in the inbound request pipeline and returns cached response messages for the similar client request messages.

    Inheritance
    Object
    MessagePipelineComponentBase
    CacheRequestComponent
    Implements
    IValidator
    IEquatable<MessagePipelineComponentBase>
    IExtensibleDataObject
    IDisposable
    Inherited Members
    MessagePipelineComponentBase.Validate(MessagePipelinePositions)
    MessagePipelineComponentBase.ErrorMessage
    MessagePipelineComponentBase.ExtensionData
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Nevatech.Vsb.Repository.Processing
    Assembly: Nevatech.Vsb.Repository.dll
    Syntax
    public sealed class CacheRequestComponent : MessagePipelineComponentBase, IValidator, IEquatable<MessagePipelineComponentBase>, IExtensibleDataObject, IDisposable
    Remarks

    The response message cache key is constructed from multiple properties of the corresponding request message. The key always includes the message body (only BODY element content for SOAP operations). RESTful message is always keyed by request URI and HTTP method. SOAP message is always keyed by Action header value. In addition, key may contain SOAP headers, HTTP headers, and identity claims values (all or a subset).

    Constructors

    CacheRequestComponent()

    Declaration
    public CacheRequestComponent()

    Fields

    ElementName

    Name of the root element when object is serialized to XML.

    Declaration
    public const string ElementName = "CACHE-REQUEST"
    Field Value
    Type Description
    String

    Properties

    AllowedPositions

    Gets the message processing pipeline position(s) supported by the component: inbound request.

    Declaration
    public override MessagePipelinePositions AllowedPositions { get; }
    Property Value
    Type Description
    MessagePipelinePositions
    Overrides
    MessagePipelineComponentBase.AllowedPositions

    CacheDuration

    Gets or sets the maximum time of storing a response message in the cache. The value must be greater than zero.

    Declaration
    public TimeSpan CacheDuration { get; set; }
    Property Value
    Type Description
    TimeSpan

    ExecuteResponsePipeline

    Gets or sets the flag indicating that cached response message must be sent to inbound response pipeline where it can be processed and fine-tuned. If property is set to False then cached response message is returned directly to the client.

    Declaration
    public bool ExecuteResponsePipeline { get; set; }
    Property Value
    Type Description
    Boolean

    VaryByClaims

    Gets or sets the comma-, semicolon-, or space-separated list of caller principal claim types which values must be included in the cache key computation. If property is set to a wildcard (*) then all claims are included.

    Declaration
    public string VaryByClaims { get; set; }
    Property Value
    Type Description
    String

    VaryByHttpHeaders

    Gets or sets the comma-, semicolon-, or space-separated list of HTTP headers which values must be included in the cache key computation. If property is set to a wildcard (*) then all headers are included.

    Declaration
    public string VaryByHttpHeaders { get; set; }
    Property Value
    Type Description
    String

    VaryBySoapHeaders

    Gets or sets the comma-, semicolon-, or space-separated list of SOAP headers which values must be included in the cache key computation. Each header is defined by its Qualified Name in the form of "namespace:localName". If property is set to a wildcard (*) then all headers are included.

    Declaration
    public string VaryBySoapHeaders { get; set; }
    Property Value
    Type Description
    String

    Methods

    Dispose()

    Disposes the internal cache storage.

    Declaration
    public void Dispose()

    Equals(MessagePipelineComponentBase)

    Determines whether the specified object is equal to the current object.

    Declaration
    public override bool Equals(MessagePipelineComponentBase other)
    Parameters
    Type Name Description
    MessagePipelineComponentBase other

    The object to compare with the current object.

    Returns
    Type Description
    Boolean

    True, if objects are equal. False, if objects are not equal.

    Overrides
    MessagePipelineComponentBase.Equals(MessagePipelineComponentBase)

    Equals(Object)

    Determines whether the specified object is equal to the current object.

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

    The object to compare with the current object.

    Returns
    Type Description
    Boolean

    True, if objects are equal. False, if objects are not equal.

    Overrides
    MessagePipelineComponentBase.Equals(Object)

    GetHashCode()

    Returns the hash code for this instance.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    Int32

    Hash code of the current instance.

    Overrides
    MessagePipelineComponentBase.GetHashCode()

    ProcessMessage(MessagePipelineContext)

    Examines the intercepted message, computes the cache key, and returns the cached response, if it exists.

    Declaration
    public override MessagePipelineResult ProcessMessage(MessagePipelineContext context)
    Parameters
    Type Name Description
    MessagePipelineContext context

    Provides the message processing context.

    Returns
    Type Description
    MessagePipelineResult

    Value indicating if message should continue on its way to the recipient or must be stopped and returned to the sender.

    Overrides
    MessagePipelineComponentBase.ProcessMessage(MessagePipelineContext)

    ToString()

    Returns string representation of the object.

    Declaration
    public override string ToString()
    Returns
    Type Description
    String

    String representing the object's content.

    Overrides
    Object.ToString()

    Validate()

    Evaluates the state of this object.

    Declaration
    public override bool Validate()
    Returns
    Type Description
    Boolean

    True if state is valid; otherwise, false.

    Overrides
    MessagePipelineComponentBase.Validate()

    Implements

    IValidator
    System.IEquatable<T>
    System.Runtime.Serialization.IExtensibleDataObject
    System.IDisposable
    Back to top Nevatech Sentinet 6.5 Online Documentation