Naanou.LookupService
Class NServerSink

Provides address-based authentication, and verifies the NodeAddress details the client sends

Embeds the following in the System.Runtime.Remoting.Messaging.CallContext of the remoting invocation. Key - Value

  • ClientIPAddress - Dotted-quad form of the client's IP address
  • Client - Naanou.Common.BasicAddress form of the client's address
  • Field Summary
    System.Runtime.Remoting.Channels.IServerChannelSink _next

    Constructor Summary
    NServerSink(System.Runtime.Remoting.Channels.IServerChannelSink next)
             Constructor

    Property Summary
    System.Runtime.Remoting.Channels.IServerChannelSink NextChannelSink
             Gets or sets the next sink in the chain

    Properties inherited from class System.Runtime.Remoting.Channels.BaseChannelObjectWithProperties
    Count, IsFixedSize, IsReadOnly, IsSynchronized, Item, Keys, Properties, SyncRoot, Values

    Method Summary
    void AsyncProcessResponse(System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack sinkStack, object state, System.Runtime.Remoting.Messaging.IMessage msg, System.Runtime.Remoting.Channels.ITransportHeaders headers, System.IO.Stream stream)
             Async'ly process response
    System.IO.Stream GetResponseStream(System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack sinkStack, object state, System.Runtime.Remoting.Messaging.IMessage msg, System.Runtime.Remoting.Channels.ITransportHeaders headers)
             Gets response stream
    System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage(System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack, System.Runtime.Remoting.Messaging.IMessage requestMsg, System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders, System.IO.Stream requestStream, System.Runtime.Remoting.Messaging.IMessage responseMsg, System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders, System.IO.Stream responseStream)
             Process message

    Methods inherited from class System.Runtime.Remoting.Channels.BaseChannelObjectWithProperties
    Add, Clear, Contains, CopyTo, GetEnumerator, IEnumerable.GetEnumerator, Remove

    Methods inherited from class System.Object
    Equals, Finalize, GetHashCode, GetType, MemberwiseClone, ToString


    Field Detail

    _next

    private System.Runtime.Remoting.Channels.IServerChannelSink _next

    Constructor Detail

    NServerSink

    public NServerSink(System.Runtime.Remoting.Channels.IServerChannelSink next)

    Constructor

    Parameters:
    next - Next sink
    Property Detail

    NextChannelSink

    public System.Runtime.Remoting.Channels.IServerChannelSink NextChannelSink

    Gets or sets the next sink in the chain

    Method Detail

    AsyncProcessResponse

    public void AsyncProcessResponse(System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack sinkStack,
                                     object state,
                                     System.Runtime.Remoting.Messaging.IMessage msg,
                                     System.Runtime.Remoting.Channels.ITransportHeaders headers,
                                     System.IO.Stream stream)

    Async'ly process response

    Parameters:
    sinkStack - Sink stack
    state - State
    msg - Message
    headers - Headers
    stream - Stream

    GetResponseStream

    public System.IO.Stream GetResponseStream(System.Runtime.Remoting.Channels.IServerResponseChannelSinkStack sinkStack,
                                              object state,
                                              System.Runtime.Remoting.Messaging.IMessage msg,
                                              System.Runtime.Remoting.Channels.ITransportHeaders headers)

    Gets response stream

    Parameters:
    sinkStack - Sink
    state - State
    msg - Message
    headers - Headers
    Returns:
    Response stream

    ProcessMessage

    public System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage(System.Runtime.Remoting.Channels.IServerChannelSinkStack sinkStack,
                                                                     System.Runtime.Remoting.Messaging.IMessage requestMsg,
                                                                     System.Runtime.Remoting.Channels.ITransportHeaders requestHeaders,
                                                                     System.IO.Stream requestStream,
                                                                     System.Runtime.Remoting.Messaging.IMessage responseMsg,
                                                                     System.Runtime.Remoting.Channels.ITransportHeaders responseHeaders,
                                                                     System.IO.Stream responseStream)

    Process message

    Parameters:
    sinkStack - Sink
    requestMsg - Request message
    requestHeaders - Request headers
    requestStream - Request stream
    responseMsg - Response message
    responseHeaders - Response headers
    responseStream - Response stream
    Returns: