HttpServerChannel

Overview

Base class for HttpSysServerChannel and HttpSysServerChannel server channels. This class provides properties and events common for all HTTP server channels.

Location


 

constructor  protected

Creates an instance of the HttpServerChannel class. Cannot be called directly.

 

constructor

 

HttpServerChannel()

 

Sub New()

Active    (declared in ServerChannel)

Toggles whether the server component is active or not. Set it to true (either from code or in the Property Pane) to have your server active and listening for requests from clients or set it to false to prevent new requests from being accepted.

 

property Active: Boolean read write;

 

Boolean Active { get; set; }

 

Property Active() As Boolean

AdjustConvertedRodl    (declared in ServerChannel)

 

event AdjustConvertedRodl: EventHandler<RodlEventArgs>;

 

delegate EventHandler<RodlEventArgs> AdjustConvertedRodl()

 

Event AdjustConvertedRodl As EventHandler<RodlEventArgs>

AdjustRodl    (declared in ServerChannel)

 

event AdjustRodl: EventHandler<RodlEventArgs>;

 

delegate EventHandler<RodlEventArgs> AdjustRodl()

 

Event AdjustRodl As EventHandler<RodlEventArgs>

AfterClose    (declared in ServerChannel)

 

event AfterClose: EventHandler;

 

delegate EventHandler AfterClose()

 

Event AfterClose As EventHandler

AfterOpen    (declared in ServerChannel)

 

event AfterOpen: EventHandler;

 

delegate EventHandler AfterOpen()

 

Event AfterOpen As EventHandler

AfterReceiveStream    (declared in Channel)

This event is triggered by client and server channels directly after a request or response stream has been received and before the stream gets parsed into a message. User code can assign handlers to this event to process, inspect or modify incoming messages, before they get handled by the Remoting SDK framework. The passed Stream is a MemoryStream and may be modified.

If no handlers are assigned to the AfterReceiveStream event, the message will load the data directly from the incoming medium (usually the network stream); assigning event handlers to AfterReceiveStream will induce a slight overhead as the data will first be copied into a local memory buffer for the event handler. This should not have any noticeably effect except for very large messages or on resource-limited systems such as Compact Framework Clients, but if utmost performance is important, take this note into consideration.

 

event AfterReceiveStream: EventHandler<StreamEventArgs>;

 

delegate EventHandler<StreamEventArgs> AfterReceiveStream()

 

Event AfterReceiveStream As EventHandler<StreamEventArgs>

BeforeClose    (declared in ServerChannel)

 

event BeforeClose: EventHandler;

 

delegate EventHandler BeforeClose()

 

Event BeforeClose As EventHandler

BeforeOpen    (declared in ServerChannel)

 

event BeforeOpen: EventHandler;

 

delegate EventHandler BeforeOpen()

 

Event BeforeOpen As EventHandler

BeforeSendStream    (declared in Channel)

This event is triggered by client and server channels directly before a request or response stream will be sent over the network. User code can assign handlers to this event to process, inspect or modify incoming messages before they get sent out to the remote system.

The passed Stream is a MemoryStream and may be modified.

 

event BeforeSendStream: EventHandler<StreamEventArgs>;

 

delegate EventHandler<StreamEventArgs> BeforeSendStream()

 

Event BeforeSendStream As EventHandler<StreamEventArgs>

ChannelType

Returns 'http'. This property is used by the ZeroConf infrastructure.

 

property ChannelType: String read;

 

String ChannelType { get; }

 

ReadOnly Property ChannelType() As String

Close    (declared in ServerChannel)

Closes the ServerChannel component and stops it from accepting any more incoming requests.

 

method Close

 

void Close()

 

Sub Close()

CloseChannel  protected

 

method CloseChannel

 

void CloseChannel()

 

Sub CloseChannel()

CloseHttpChannel  protected

 

method CloseHttpChannel

 

void CloseHttpChannel()

 

Sub CloseHttpChannel()

CopyProperties  protected    (declared in Channel)

 

method CopyProperties(source: Channel)

 

void CopyProperties(Channel source)

 

Sub CopyProperties(source As Channel)

Parameters:

  • source:

CustomClientAccessPolicy

 

event CustomClientAccessPolicy: EventHandler<ClientAccessPolicyEventArgs>;

 

delegate EventHandler<ClientAccessPolicyEventArgs> CustomClientAccessPolicy()

 

Event CustomClientAccessPolicy As EventHandler<ClientAccessPolicyEventArgs>

CustomParameters    (declared in ServerChannel)

 

property CustomParameters: IDictionary<String, String> read;

 

IDictionary<String, String> CustomParameters { get; }

 

ReadOnly Property CustomParameters() As IDictionary<String, String>

DecodeAuthCredentials

 

class method DecodeAuthCredentials(encodedCredentials: String; out username: String; out password: String; out bearer: String)

 

static void DecodeAuthCredentials(String encodedCredentials, out String username, out String password, out String bearer)

 

Shared Sub DecodeAuthCredentials(encodedCredentials As String, <OutAttribute> ByRef username As String, <OutAttribute> ByRef password As String, <OutAttribute> ByRef bearer As String)

Parameters:

  • encodedCredentials:
  • username:
  • password:
  • bearer:

Dispatch  protected    (declared in ServerChannel)

 

method Dispatch(message: IMessage; channelInfo: IServerChannelInfo)

 

void Dispatch(IMessage message, IServerChannelInfo channelInfo)

 

Sub Dispatch(message As IMessage, channelInfo As IServerChannelInfo)

Parameters:

  • message:
  • channelInfo:

Dispatchers    (declared in ServerChannel)

Organizes the different Dispatchers configured for the server. Depending on the server type, different dispatchers can be made accessible through different names (for example the HTTP based servers use the Path provided with the HTTP request to determine the dispatcher) or the dispatcher marked as Default will be used. Note: A design time editor for the Dispatcher collection is provided in the IDE, which you can invoke by clicking the ellipsis (...) button in the Properties Pane. You can use this editor to create new MessageDispatcher instances at design time and link them to the specific message components you have dropped onto your form.

 

property Dispatchers: MessageDispatchers read;

 

MessageDispatchers Dispatchers { get; }

 

ReadOnly Property Dispatchers() As MessageDispatchers

Dispose  protected

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing:

ExtendedDispatchers

Gets list of extended dispatchers attached to the server channel instance.

Extended dispatchers are dispatchers that perform special tasks other than calling server services. A good example of an extended dispatcher is JavaScriptHttpDispatcher dispatcher.

 

property ExtendedDispatchers: ExtendedDispatcherList read;

 

ExtendedDispatcherList ExtendedDispatchers { get; }

 

ReadOnly Property ExtendedDispatchers() As ExtendedDispatcherList

FormatErrorMessage (Boolean, Exception): HttpErrorMessage  protected

 

method FormatErrorMessage(plainText: Boolean; exception: Exception): HttpErrorMessage

 

HttpErrorMessage FormatErrorMessage(Boolean plainText, Exception exception)

 

Function FormatErrorMessage(plainText As Boolean, exception As Exception) As HttpErrorMessage

Parameters:

  • plainText:
  • exception:

FormatErrorMessage (Boolean, String): HttpErrorMessage  protected

 

method FormatErrorMessage(plainText: Boolean; message: String): HttpErrorMessage

 

HttpErrorMessage FormatErrorMessage(Boolean plainText, String message)

 

Function FormatErrorMessage(plainText As Boolean, message As String) As HttpErrorMessage

Parameters:

  • plainText:
  • message:

GetClientAccessPolicy  protected

 

method GetClientAccessPolicy: String

 

String GetClientAccessPolicy()

 

Function GetClientAccessPolicy() As String

GetDispatcherFromRequestPath  protected

 

class method GetDispatcherFromRequestPath(path: String): String

 

static String GetDispatcherFromRequestPath(String path)

 

Shared Function GetDispatcherFromRequestPath(path As String) As String

Parameters:

  • path:

GetFavIconStream  protected

 

method GetFavIconStream: Stream

 

Stream GetFavIconStream()

 

Function GetFavIconStream() As Stream

GetMessageDispatcher  protected

 

method GetMessageDispatcher(fullPath: String; rootPath: String): MessageDispatcher

 

MessageDispatcher GetMessageDispatcher(String fullPath, String rootPath)

 

Function GetMessageDispatcher(fullPath As String, rootPath As String) As MessageDispatcher

Parameters:

  • fullPath:
  • rootPath:

GetRodl    (declared in ServerChannel)

 

event GetRodl: EventHandler<RodlEventArgs>;

 

delegate EventHandler<RodlEventArgs> GetRodl()

 

Event GetRodl As EventHandler<RodlEventArgs>

GetServerMetaData  protected

 

method GetServerMetaData(context: Object; dispatcher: MessageDispatcher; path: String; queryString: QueryString; out contentType: String): Stream

 

Stream GetServerMetaData(Object context, MessageDispatcher dispatcher, String path, QueryString queryString, out String contentType)

 

Function GetServerMetaData(context As Object, dispatcher As MessageDispatcher, path As String, queryString As QueryString, <OutAttribute> ByRef contentType As String) As Stream

Parameters:

  • context:
  • dispatcher:
  • path:
  • queryString:
  • contentType:

GetServerRodl  protected    (declared in ServerChannel)

 

method GetServerRodl(context: Object; dispatcher: MessageDispatcher; serviceGroups: String; out contentType: String): Stream

 

Stream GetServerRodl(Object context, MessageDispatcher dispatcher, String serviceGroups, out String contentType)

 

Function GetServerRodl(context As Object, dispatcher As MessageDispatcher, serviceGroups As String, <OutAttribute> ByRef contentType As String) As Stream

Parameters:

  • context:
  • dispatcher:
  • serviceGroups:
  • contentType:

GetServiceMetaData  protected    (declared in ServerChannel)

 

method GetServiceMetaData(context: Object; dispatcher: MessageDispatcher; serviceName: String; options: Hashtable; out contentType: String): Stream

 

Stream GetServiceMetaData(Object context, MessageDispatcher dispatcher, String serviceName, Hashtable options, out String contentType)

 

Function GetServiceMetaData(context As Object, dispatcher As MessageDispatcher, serviceName As String, options As Hashtable, <OutAttribute> ByRef contentType As String) As Stream

Parameters:

  • context:
  • dispatcher:
  • serviceName:
  • options:
  • contentType:

HasAfterReceiveStream  protected    (declared in Channel)

 

property HasAfterReceiveStream: Boolean read;

 

Boolean HasAfterReceiveStream { get; }

 

ReadOnly Property HasAfterReceiveStream() As Boolean

HasBeforeSendStream  protected    (declared in Channel)

 

property HasBeforeSendStream: Boolean read;

 

Boolean HasBeforeSendStream { get; }

 

ReadOnly Property HasBeforeSendStream() As Boolean

HtmlServerInfo

 

property HtmlServerInfo: HtmlServerInfo read write;

 

HtmlServerInfo HtmlServerInfo { get; set; }

 

Property HtmlServerInfo() As HtmlServerInfo

Initializing  protected    (declared in ServerChannel)

 

property Initializing: Boolean read;

 

Boolean Initializing { get; }

 

ReadOnly Property Initializing() As Boolean

IS_TRIAL_MODE  protected    (declared in ServerChannel)

 

const IS_TRIAL_MODE: Boolean = False;

 

const Boolean IS_TRIAL_MODE = False

 

Dim IS_TRIAL_MODE As Boolean = False

IsClientAccessPolicyRequested  protected

 

class method IsClientAccessPolicyRequested(request: String): Boolean

 

static Boolean IsClientAccessPolicyRequested(String request)

 

Shared Function IsClientAccessPolicyRequested(request As String) As Boolean

Parameters:

  • request:

IsCustomCrossOriginAvailable  protected

 

property IsCustomCrossOriginAvailable: Boolean read;

 

Boolean IsCustomCrossOriginAvailable { get; }

 

ReadOnly Property IsCustomCrossOriginAvailable() As Boolean

IsServerDocumentationPageRequested  protected

 

class method IsServerDocumentationPageRequested(isInfoPageEnabled: Boolean; request: String): Boolean

 

static Boolean IsServerDocumentationPageRequested(Boolean isInfoPageEnabled, String request)

 

Shared Function IsServerDocumentationPageRequested(isInfoPageEnabled As Boolean, request As String) As Boolean

Parameters:

  • isInfoPageEnabled:
  • request:

IsServerFavIconRequested  protected

 

class method IsServerFavIconRequested(isInfoPageEnabled: Boolean; request: String): Boolean

 

static Boolean IsServerFavIconRequested(Boolean isInfoPageEnabled, String request)

 

Shared Function IsServerFavIconRequested(isInfoPageEnabled As Boolean, request As String) As Boolean

Parameters:

  • isInfoPageEnabled:
  • request:

IsServerInfoPageRequested  protected

 

class method IsServerInfoPageRequested(isInfoPageEnabled: Boolean; request: String): Boolean

 

static Boolean IsServerInfoPageRequested(Boolean isInfoPageEnabled, String request)

 

Shared Function IsServerInfoPageRequested(isInfoPageEnabled As Boolean, request As String) As Boolean

Parameters:

  • isInfoPageEnabled:
  • request:

IsTlsEnabled    (declared in ServerChannel)

 

property IsTlsEnabled: Boolean read;

 

Boolean IsTlsEnabled { get; }

 

ReadOnly Property IsTlsEnabled() As Boolean

Messages    (declared in ServerChannel)

 

property Messages: IList<String> read;

 

IList<String> Messages { get; }

 

ReadOnly Property Messages() As IList<String>

OnCustomCrossOrigin

 

event OnCustomCrossOrigin: EventHandler<CustomCrossOriginEventArgs>;

 

delegate EventHandler<CustomCrossOriginEventArgs> OnCustomCrossOrigin()

 

Event OnCustomCrossOrigin As EventHandler<CustomCrossOriginEventArgs>

Open    (declared in ServerChannel)

Opens the ServerChannel component and starts accepting incoming requests. Depending on the server type, this usually involves starting to listen on a network socket or polling some source for waiting messages.

 

method Open

 

void Open()

 

Sub Open()

OpenChannel  protected

 

method OpenChannel

 

void OpenChannel()

 

Sub OpenChannel()

OpenHttpChannel  protected

 

method OpenHttpChannel

 

void OpenHttpChannel()

 

Sub OpenHttpChannel()

PROBE_REQUEST  protected    (declared in ServerChannel)

 

const PROBE_REQUEST: String = "PROBE";

 

const String PROBE_REQUEST = "PROBE"

 

Dim PROBE_REQUEST As String = "PROBE"

PROBE_REQUEST_LENGTH  protected    (declared in ServerChannel)

 

const PROBE_REQUEST_LENGTH: Int32 = 5;

 

const Int32 PROBE_REQUEST_LENGTH = 5

 

Dim PROBE_REQUEST_LENGTH As Int32 = 5

PROBE_RESPONSE_LENGTH  protected    (declared in ServerChannel)

 

const PROBE_RESPONSE_LENGTH: Int32 = 8;

 

const Int32 PROBE_RESPONSE_LENGTH = 8

 

Dim PROBE_RESPONSE_LENGTH As Int32 = 8

QUERY_SERVICEGROUP  protected

 

const QUERY_SERVICEGROUP: String = "servicegroup";

 

const String QUERY_SERVICEGROUP = "servicegroup"

 

Dim QUERY_SERVICEGROUP As String = "servicegroup"

Register

 

method Register(dispatcher: IHttpDispatcher)

 

void Register(IHttpDispatcher dispatcher)

 

Sub Register(dispatcher As IHttpDispatcher)

Parameters:

  • dispatcher:

RemoveQueryParameters  protected

 

class method RemoveQueryParameters(path: String): String

 

static String RemoveQueryParameters(String path)

 

Shared Function RemoveQueryParameters(path As String) As String

Parameters:

  • path:

SecurityOptions

Gives access to server security options of this server channel instance. Using this property, you can set up MaxRequestSize, MaxRequestTime etc.

 

property SecurityOptions: ServerSecurityOptions read write;

 

ServerSecurityOptions SecurityOptions { get; set; }

 

Property SecurityOptions() As ServerSecurityOptions

SendClientAccessPolicyXml

Determines how the server channel should handle requests for clientaccesspolicy.xml (security policy file used by Silverlight). Can be set to:

  • AllowNone (deny all requests).
  • AllowAll (allow all requests).
  • Custom (provides a custom security policy file via OnCustomClientAccessPolicy event handler).

 

property SendClientAccessPolicyXml: ClientAccessPolicyType read write;

 

ClientAccessPolicyType SendClientAccessPolicyXml { get; set; }

 

Property SendClientAccessPolicyXml() As ClientAccessPolicyType

SendCrossOriginHeader

Gets or sets a flag indicating whether the server should handle the incoming CORS requests or ignore them.

 

property SendCrossOriginHeader: Boolean read write;

 

Boolean SendCrossOriginHeader { get; set; }

 

Property SendCrossOriginHeader() As Boolean

SendExceptionsAs500

If set to true, messages about exceptions occurred on the server will be sent with a HTTP Error 500 header set (standard HTTP header for internal server errors).

 

property SendExceptionsAs500: Boolean read write;

 

Boolean SendExceptionsAs500 { get; set; }

 

Property SendExceptionsAs500() As Boolean

ServeInfoPage

Determines if the server info page should be served or not

 

property ServeInfoPage: Boolean read write;

 

Boolean ServeInfoPage { get; set; }

 

Property ServeInfoPage() As Boolean

ServeRodl    (declared in ServerChannel)

Toggles whether clients can request the RODL file for this server via IRodlAccess or channel-specific means (such as by submitting a HTTP GET request to an HTTP server). By default, this option is turned on; set this property to false if you want to prevent clients from retrieving the RODL file from the server.

 

property ServeRodl: Boolean read write;

 

Boolean ServeRodl { get; set; }

 

Property ServeRodl() As Boolean

ServiceGroup    (declared in ServerChannel)

Allows to get/set Service Groups

 

property ServiceGroup: String read write;

 

String ServiceGroup { get; set; }

 

Property ServiceGroup() As String

TriggerAdjustConvertedRodl  protected    (declared in ServerChannel)

 

method TriggerAdjustConvertedRodl(e: RodlEventArgs)

 

void TriggerAdjustConvertedRodl(RodlEventArgs e)

 

Sub TriggerAdjustConvertedRodl(e As RodlEventArgs)

Parameters:

  • e:

TriggerAdjustRodl  protected    (declared in ServerChannel)

 

method TriggerAdjustRodl(e: RodlEventArgs)

 

void TriggerAdjustRodl(RodlEventArgs e)

 

Sub TriggerAdjustRodl(e As RodlEventArgs)

Parameters:

  • e:

TriggerAfterClose  protected    (declared in ServerChannel)

 

method TriggerAfterClose

 

void TriggerAfterClose()

 

Sub TriggerAfterClose()

TriggerAfterOpen  protected    (declared in ServerChannel)

 

method TriggerAfterOpen

 

void TriggerAfterOpen()

 

Sub TriggerAfterOpen()

TriggerAfterReceiveStream  protected    (declared in Channel)

 

method TriggerAfterReceiveStream(var stream: Stream)

 

void TriggerAfterReceiveStream(ref Stream stream)

 

Sub TriggerAfterReceiveStream(ByRef stream As Stream)

Parameters:

  • stream:

TriggerBeforeClose  protected    (declared in ServerChannel)

 

method TriggerBeforeClose

 

void TriggerBeforeClose()

 

Sub TriggerBeforeClose()

TriggerBeforeOpen  protected    (declared in ServerChannel)

 

method TriggerBeforeOpen

 

void TriggerBeforeOpen()

 

Sub TriggerBeforeOpen()

TriggerBeforeSendStream  protected    (declared in Channel)

 

method TriggerBeforeSendStream(var stream: Stream)

 

void TriggerBeforeSendStream(ref Stream stream)

 

Sub TriggerBeforeSendStream(ByRef stream As Stream)

Parameters:

  • stream:

TriggerCustomClientAccessPolicy  protected

 

method TriggerCustomClientAccessPolicy(e: ClientAccessPolicyEventArgs)

 

void TriggerCustomClientAccessPolicy(ClientAccessPolicyEventArgs e)

 

Sub TriggerCustomClientAccessPolicy(e As ClientAccessPolicyEventArgs)

Parameters:

  • e:

TriggerGetRodl  protected    (declared in ServerChannel)

 

method TriggerGetRodl(e: RodlEventArgs)

 

void TriggerGetRodl(RodlEventArgs e)

 

Sub TriggerGetRodl(e As RodlEventArgs)

Parameters:

  • e:

TriggerOnCustomCrossOrigin  protected

 

method TriggerOnCustomCrossOrigin(e: CustomCrossOriginEventArgs)

 

void TriggerOnCustomCrossOrigin(CustomCrossOriginEventArgs e)

 

Sub TriggerOnCustomCrossOrigin(e As CustomCrossOriginEventArgs)

Parameters:

  • e:

Unregister

 

method Unregister(dispatcher: IHttpDispatcher)

 

void Unregister(IHttpDispatcher dispatcher)

 

Sub Unregister(dispatcher As IHttpDispatcher)

Parameters:

  • dispatcher:

ValidateServiceGroup    (declared in ServerChannel)

 

method ValidateServiceGroup(serviceGroups: array of String): Boolean

 

Boolean ValidateServiceGroup(String[] serviceGroups)

 

Function ValidateServiceGroup(serviceGroups As String()) As Boolean

Parameters:

  • serviceGroups:

 

IS_TRIAL_MODE  protected    (declared in ServerChannel)

 

const IS_TRIAL_MODE: Boolean = False;

 

const Boolean IS_TRIAL_MODE = False

 

Dim IS_TRIAL_MODE As Boolean = False

PROBE_REQUEST  protected    (declared in ServerChannel)

 

const PROBE_REQUEST: String = "PROBE";

 

const String PROBE_REQUEST = "PROBE"

 

Dim PROBE_REQUEST As String = "PROBE"

PROBE_REQUEST_LENGTH  protected    (declared in ServerChannel)

 

const PROBE_REQUEST_LENGTH: Int32 = 5;

 

const Int32 PROBE_REQUEST_LENGTH = 5

 

Dim PROBE_REQUEST_LENGTH As Int32 = 5

PROBE_RESPONSE_LENGTH  protected    (declared in ServerChannel)

 

const PROBE_RESPONSE_LENGTH: Int32 = 8;

 

const Int32 PROBE_RESPONSE_LENGTH = 8

 

Dim PROBE_RESPONSE_LENGTH As Int32 = 8

QUERY_SERVICEGROUP  protected

 

const QUERY_SERVICEGROUP: String = "servicegroup";

 

const String QUERY_SERVICEGROUP = "servicegroup"

 

Dim QUERY_SERVICEGROUP As String = "servicegroup"

 

Active    (declared in ServerChannel)

Toggles whether the server component is active or not. Set it to true (either from code or in the Property Pane) to have your server active and listening for requests from clients or set it to false to prevent new requests from being accepted.

 

property Active: Boolean read write;

 

Boolean Active { get; set; }

 

Property Active() As Boolean

ChannelType

Returns 'http'. This property is used by the ZeroConf infrastructure.

 

property ChannelType: String read;

 

String ChannelType { get; }

 

ReadOnly Property ChannelType() As String

CustomParameters    (declared in ServerChannel)

 

property CustomParameters: IDictionary<String, String> read;

 

IDictionary<String, String> CustomParameters { get; }

 

ReadOnly Property CustomParameters() As IDictionary<String, String>

Dispatchers    (declared in ServerChannel)

Organizes the different Dispatchers configured for the server. Depending on the server type, different dispatchers can be made accessible through different names (for example the HTTP based servers use the Path provided with the HTTP request to determine the dispatcher) or the dispatcher marked as Default will be used. Note: A design time editor for the Dispatcher collection is provided in the IDE, which you can invoke by clicking the ellipsis (...) button in the Properties Pane. You can use this editor to create new MessageDispatcher instances at design time and link them to the specific message components you have dropped onto your form.

 

property Dispatchers: MessageDispatchers read;

 

MessageDispatchers Dispatchers { get; }

 

ReadOnly Property Dispatchers() As MessageDispatchers

ExtendedDispatchers

Gets list of extended dispatchers attached to the server channel instance.

Extended dispatchers are dispatchers that perform special tasks other than calling server services. A good example of an extended dispatcher is JavaScriptHttpDispatcher dispatcher.

 

property ExtendedDispatchers: ExtendedDispatcherList read;

 

ExtendedDispatcherList ExtendedDispatchers { get; }

 

ReadOnly Property ExtendedDispatchers() As ExtendedDispatcherList

HasAfterReceiveStream  protected    (declared in Channel)

 

property HasAfterReceiveStream: Boolean read;

 

Boolean HasAfterReceiveStream { get; }

 

ReadOnly Property HasAfterReceiveStream() As Boolean

HasBeforeSendStream  protected    (declared in Channel)

 

property HasBeforeSendStream: Boolean read;

 

Boolean HasBeforeSendStream { get; }

 

ReadOnly Property HasBeforeSendStream() As Boolean

HtmlServerInfo

 

property HtmlServerInfo: HtmlServerInfo read write;

 

HtmlServerInfo HtmlServerInfo { get; set; }

 

Property HtmlServerInfo() As HtmlServerInfo

Initializing  protected    (declared in ServerChannel)

 

property Initializing: Boolean read;

 

Boolean Initializing { get; }

 

ReadOnly Property Initializing() As Boolean

IsCustomCrossOriginAvailable  protected

 

property IsCustomCrossOriginAvailable: Boolean read;

 

Boolean IsCustomCrossOriginAvailable { get; }

 

ReadOnly Property IsCustomCrossOriginAvailable() As Boolean

IsTlsEnabled    (declared in ServerChannel)

 

property IsTlsEnabled: Boolean read;

 

Boolean IsTlsEnabled { get; }

 

ReadOnly Property IsTlsEnabled() As Boolean

Messages    (declared in ServerChannel)

 

property Messages: IList<String> read;

 

IList<String> Messages { get; }

 

ReadOnly Property Messages() As IList<String>

SecurityOptions

Gives access to server security options of this server channel instance. Using this property, you can set up MaxRequestSize, MaxRequestTime etc.

 

property SecurityOptions: ServerSecurityOptions read write;

 

ServerSecurityOptions SecurityOptions { get; set; }

 

Property SecurityOptions() As ServerSecurityOptions

SendClientAccessPolicyXml

Determines how the server channel should handle requests for clientaccesspolicy.xml (security policy file used by Silverlight). Can be set to:

  • AllowNone (deny all requests).
  • AllowAll (allow all requests).
  • Custom (provides a custom security policy file via OnCustomClientAccessPolicy event handler).

 

property SendClientAccessPolicyXml: ClientAccessPolicyType read write;

 

ClientAccessPolicyType SendClientAccessPolicyXml { get; set; }

 

Property SendClientAccessPolicyXml() As ClientAccessPolicyType

SendCrossOriginHeader

Gets or sets a flag indicating whether the server should handle the incoming CORS requests or ignore them.

 

property SendCrossOriginHeader: Boolean read write;

 

Boolean SendCrossOriginHeader { get; set; }

 

Property SendCrossOriginHeader() As Boolean

SendExceptionsAs500

If set to true, messages about exceptions occurred on the server will be sent with a HTTP Error 500 header set (standard HTTP header for internal server errors).

 

property SendExceptionsAs500: Boolean read write;

 

Boolean SendExceptionsAs500 { get; set; }

 

Property SendExceptionsAs500() As Boolean

ServeInfoPage

Determines if the server info page should be served or not

 

property ServeInfoPage: Boolean read write;

 

Boolean ServeInfoPage { get; set; }

 

Property ServeInfoPage() As Boolean

ServeRodl    (declared in ServerChannel)

Toggles whether clients can request the RODL file for this server via IRodlAccess or channel-specific means (such as by submitting a HTTP GET request to an HTTP server). By default, this option is turned on; set this property to false if you want to prevent clients from retrieving the RODL file from the server.

 

property ServeRodl: Boolean read write;

 

Boolean ServeRodl { get; set; }

 

Property ServeRodl() As Boolean

ServiceGroup    (declared in ServerChannel)

Allows to get/set Service Groups

 

property ServiceGroup: String read write;

 

String ServiceGroup { get; set; }

 

Property ServiceGroup() As String

 

DecodeAuthCredentials

 

class method DecodeAuthCredentials(encodedCredentials: String; out username: String; out password: String; out bearer: String)

 

static void DecodeAuthCredentials(String encodedCredentials, out String username, out String password, out String bearer)

 

Shared Sub DecodeAuthCredentials(encodedCredentials As String, <OutAttribute> ByRef username As String, <OutAttribute> ByRef password As String, <OutAttribute> ByRef bearer As String)

Parameters:

  • encodedCredentials:
  • username:
  • password:
  • bearer:

GetDispatcherFromRequestPath  protected

 

class method GetDispatcherFromRequestPath(path: String): String

 

static String GetDispatcherFromRequestPath(String path)

 

Shared Function GetDispatcherFromRequestPath(path As String) As String

Parameters:

  • path:

IsClientAccessPolicyRequested  protected

 

class method IsClientAccessPolicyRequested(request: String): Boolean

 

static Boolean IsClientAccessPolicyRequested(String request)

 

Shared Function IsClientAccessPolicyRequested(request As String) As Boolean

Parameters:

  • request:

IsServerDocumentationPageRequested  protected

 

class method IsServerDocumentationPageRequested(isInfoPageEnabled: Boolean; request: String): Boolean

 

static Boolean IsServerDocumentationPageRequested(Boolean isInfoPageEnabled, String request)

 

Shared Function IsServerDocumentationPageRequested(isInfoPageEnabled As Boolean, request As String) As Boolean

Parameters:

  • isInfoPageEnabled:
  • request:

IsServerFavIconRequested  protected

 

class method IsServerFavIconRequested(isInfoPageEnabled: Boolean; request: String): Boolean

 

static Boolean IsServerFavIconRequested(Boolean isInfoPageEnabled, String request)

 

Shared Function IsServerFavIconRequested(isInfoPageEnabled As Boolean, request As String) As Boolean

Parameters:

  • isInfoPageEnabled:
  • request:

IsServerInfoPageRequested  protected

 

class method IsServerInfoPageRequested(isInfoPageEnabled: Boolean; request: String): Boolean

 

static Boolean IsServerInfoPageRequested(Boolean isInfoPageEnabled, String request)

 

Shared Function IsServerInfoPageRequested(isInfoPageEnabled As Boolean, request As String) As Boolean

Parameters:

  • isInfoPageEnabled:
  • request:

RemoveQueryParameters  protected

 

class method RemoveQueryParameters(path: String): String

 

static String RemoveQueryParameters(String path)

 

Shared Function RemoveQueryParameters(path As String) As String

Parameters:

  • path:

 

constructor  protected

Creates an instance of the HttpServerChannel class. Cannot be called directly.

 

constructor

 

HttpServerChannel()

 

Sub New()

Close    (declared in ServerChannel)

Closes the ServerChannel component and stops it from accepting any more incoming requests.

 

method Close

 

void Close()

 

Sub Close()

CloseChannel  protected

 

method CloseChannel

 

void CloseChannel()

 

Sub CloseChannel()

CloseHttpChannel  protected

 

method CloseHttpChannel

 

void CloseHttpChannel()

 

Sub CloseHttpChannel()

CopyProperties  protected    (declared in Channel)

 

method CopyProperties(source: Channel)

 

void CopyProperties(Channel source)

 

Sub CopyProperties(source As Channel)

Parameters:

  • source:

Dispatch  protected    (declared in ServerChannel)

 

method Dispatch(message: IMessage; channelInfo: IServerChannelInfo)

 

void Dispatch(IMessage message, IServerChannelInfo channelInfo)

 

Sub Dispatch(message As IMessage, channelInfo As IServerChannelInfo)

Parameters:

  • message:
  • channelInfo:

Dispose  protected

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing:

FormatErrorMessage (Boolean, Exception): HttpErrorMessage  protected

 

method FormatErrorMessage(plainText: Boolean; exception: Exception): HttpErrorMessage

 

HttpErrorMessage FormatErrorMessage(Boolean plainText, Exception exception)

 

Function FormatErrorMessage(plainText As Boolean, exception As Exception) As HttpErrorMessage

Parameters:

  • plainText:
  • exception:

FormatErrorMessage (Boolean, String): HttpErrorMessage  protected

 

method FormatErrorMessage(plainText: Boolean; message: String): HttpErrorMessage

 

HttpErrorMessage FormatErrorMessage(Boolean plainText, String message)

 

Function FormatErrorMessage(plainText As Boolean, message As String) As HttpErrorMessage

Parameters:

  • plainText:
  • message:

GetClientAccessPolicy  protected

 

method GetClientAccessPolicy: String

 

String GetClientAccessPolicy()

 

Function GetClientAccessPolicy() As String

GetFavIconStream  protected

 

method GetFavIconStream: Stream

 

Stream GetFavIconStream()

 

Function GetFavIconStream() As Stream

GetMessageDispatcher  protected

 

method GetMessageDispatcher(fullPath: String; rootPath: String): MessageDispatcher

 

MessageDispatcher GetMessageDispatcher(String fullPath, String rootPath)

 

Function GetMessageDispatcher(fullPath As String, rootPath As String) As MessageDispatcher

Parameters:

  • fullPath:
  • rootPath:

GetServerMetaData  protected

 

method GetServerMetaData(context: Object; dispatcher: MessageDispatcher; path: String; queryString: QueryString; out contentType: String): Stream

 

Stream GetServerMetaData(Object context, MessageDispatcher dispatcher, String path, QueryString queryString, out String contentType)

 

Function GetServerMetaData(context As Object, dispatcher As MessageDispatcher, path As String, queryString As QueryString, <OutAttribute> ByRef contentType As String) As Stream

Parameters:

  • context:
  • dispatcher:
  • path:
  • queryString:
  • contentType:

GetServerRodl  protected    (declared in ServerChannel)

 

method GetServerRodl(context: Object; dispatcher: MessageDispatcher; serviceGroups: String; out contentType: String): Stream

 

Stream GetServerRodl(Object context, MessageDispatcher dispatcher, String serviceGroups, out String contentType)

 

Function GetServerRodl(context As Object, dispatcher As MessageDispatcher, serviceGroups As String, <OutAttribute> ByRef contentType As String) As Stream

Parameters:

  • context:
  • dispatcher:
  • serviceGroups:
  • contentType:

GetServiceMetaData  protected    (declared in ServerChannel)

 

method GetServiceMetaData(context: Object; dispatcher: MessageDispatcher; serviceName: String; options: Hashtable; out contentType: String): Stream

 

Stream GetServiceMetaData(Object context, MessageDispatcher dispatcher, String serviceName, Hashtable options, out String contentType)

 

Function GetServiceMetaData(context As Object, dispatcher As MessageDispatcher, serviceName As String, options As Hashtable, <OutAttribute> ByRef contentType As String) As Stream

Parameters:

  • context:
  • dispatcher:
  • serviceName:
  • options:
  • contentType:

Open    (declared in ServerChannel)

Opens the ServerChannel component and starts accepting incoming requests. Depending on the server type, this usually involves starting to listen on a network socket or polling some source for waiting messages.

 

method Open

 

void Open()

 

Sub Open()

OpenChannel  protected

 

method OpenChannel

 

void OpenChannel()

 

Sub OpenChannel()

OpenHttpChannel  protected

 

method OpenHttpChannel

 

void OpenHttpChannel()

 

Sub OpenHttpChannel()

Register

 

method Register(dispatcher: IHttpDispatcher)

 

void Register(IHttpDispatcher dispatcher)

 

Sub Register(dispatcher As IHttpDispatcher)

Parameters:

  • dispatcher:

TriggerAdjustConvertedRodl  protected    (declared in ServerChannel)

 

method TriggerAdjustConvertedRodl(e: RodlEventArgs)

 

void TriggerAdjustConvertedRodl(RodlEventArgs e)

 

Sub TriggerAdjustConvertedRodl(e As RodlEventArgs)

Parameters:

  • e:

TriggerAdjustRodl  protected    (declared in ServerChannel)

 

method TriggerAdjustRodl(e: RodlEventArgs)

 

void TriggerAdjustRodl(RodlEventArgs e)

 

Sub TriggerAdjustRodl(e As RodlEventArgs)

Parameters:

  • e:

TriggerAfterClose  protected    (declared in ServerChannel)

 

method TriggerAfterClose

 

void TriggerAfterClose()

 

Sub TriggerAfterClose()

TriggerAfterOpen  protected    (declared in ServerChannel)

 

method TriggerAfterOpen

 

void TriggerAfterOpen()

 

Sub TriggerAfterOpen()

TriggerAfterReceiveStream  protected    (declared in Channel)

 

method TriggerAfterReceiveStream(var stream: Stream)

 

void TriggerAfterReceiveStream(ref Stream stream)

 

Sub TriggerAfterReceiveStream(ByRef stream As Stream)

Parameters:

  • stream:

TriggerBeforeClose  protected    (declared in ServerChannel)

 

method TriggerBeforeClose

 

void TriggerBeforeClose()

 

Sub TriggerBeforeClose()

TriggerBeforeOpen  protected    (declared in ServerChannel)

 

method TriggerBeforeOpen

 

void TriggerBeforeOpen()

 

Sub TriggerBeforeOpen()

TriggerBeforeSendStream  protected    (declared in Channel)

 

method TriggerBeforeSendStream(var stream: Stream)

 

void TriggerBeforeSendStream(ref Stream stream)

 

Sub TriggerBeforeSendStream(ByRef stream As Stream)

Parameters:

  • stream:

TriggerCustomClientAccessPolicy  protected

 

method TriggerCustomClientAccessPolicy(e: ClientAccessPolicyEventArgs)

 

void TriggerCustomClientAccessPolicy(ClientAccessPolicyEventArgs e)

 

Sub TriggerCustomClientAccessPolicy(e As ClientAccessPolicyEventArgs)

Parameters:

  • e:

TriggerGetRodl  protected    (declared in ServerChannel)

 

method TriggerGetRodl(e: RodlEventArgs)

 

void TriggerGetRodl(RodlEventArgs e)

 

Sub TriggerGetRodl(e As RodlEventArgs)

Parameters:

  • e:

TriggerOnCustomCrossOrigin  protected

 

method TriggerOnCustomCrossOrigin(e: CustomCrossOriginEventArgs)

 

void TriggerOnCustomCrossOrigin(CustomCrossOriginEventArgs e)

 

Sub TriggerOnCustomCrossOrigin(e As CustomCrossOriginEventArgs)

Parameters:

  • e:

Unregister

 

method Unregister(dispatcher: IHttpDispatcher)

 

void Unregister(IHttpDispatcher dispatcher)

 

Sub Unregister(dispatcher As IHttpDispatcher)

Parameters:

  • dispatcher:

ValidateServiceGroup    (declared in ServerChannel)

 

method ValidateServiceGroup(serviceGroups: array of String): Boolean

 

Boolean ValidateServiceGroup(String[] serviceGroups)

 

Function ValidateServiceGroup(serviceGroups As String()) As Boolean

Parameters:

  • serviceGroups:

 

AdjustConvertedRodl    (declared in ServerChannel)

 

event AdjustConvertedRodl: EventHandler<RodlEventArgs>;

 

delegate EventHandler<RodlEventArgs> AdjustConvertedRodl()

 

Event AdjustConvertedRodl As EventHandler<RodlEventArgs>

AdjustRodl    (declared in ServerChannel)

 

event AdjustRodl: EventHandler<RodlEventArgs>;

 

delegate EventHandler<RodlEventArgs> AdjustRodl()

 

Event AdjustRodl As EventHandler<RodlEventArgs>

AfterClose    (declared in ServerChannel)

 

event AfterClose: EventHandler;

 

delegate EventHandler AfterClose()

 

Event AfterClose As EventHandler

AfterOpen    (declared in ServerChannel)

 

event AfterOpen: EventHandler;

 

delegate EventHandler AfterOpen()

 

Event AfterOpen As EventHandler

AfterReceiveStream    (declared in Channel)

This event is triggered by client and server channels directly after a request or response stream has been received and before the stream gets parsed into a message. User code can assign handlers to this event to process, inspect or modify incoming messages, before they get handled by the Remoting SDK framework. The passed Stream is a MemoryStream and may be modified.

If no handlers are assigned to the AfterReceiveStream event, the message will load the data directly from the incoming medium (usually the network stream); assigning event handlers to AfterReceiveStream will induce a slight overhead as the data will first be copied into a local memory buffer for the event handler. This should not have any noticeably effect except for very large messages or on resource-limited systems such as Compact Framework Clients, but if utmost performance is important, take this note into consideration.

 

event AfterReceiveStream: EventHandler<StreamEventArgs>;

 

delegate EventHandler<StreamEventArgs> AfterReceiveStream()

 

Event AfterReceiveStream As EventHandler<StreamEventArgs>

BeforeClose    (declared in ServerChannel)

 

event BeforeClose: EventHandler;

 

delegate EventHandler BeforeClose()

 

Event BeforeClose As EventHandler

BeforeOpen    (declared in ServerChannel)

 

event BeforeOpen: EventHandler;

 

delegate EventHandler BeforeOpen()

 

Event BeforeOpen As EventHandler

BeforeSendStream    (declared in Channel)

This event is triggered by client and server channels directly before a request or response stream will be sent over the network. User code can assign handlers to this event to process, inspect or modify incoming messages before they get sent out to the remote system.

The passed Stream is a MemoryStream and may be modified.

 

event BeforeSendStream: EventHandler<StreamEventArgs>;

 

delegate EventHandler<StreamEventArgs> BeforeSendStream()

 

Event BeforeSendStream As EventHandler<StreamEventArgs>

CustomClientAccessPolicy

 

event CustomClientAccessPolicy: EventHandler<ClientAccessPolicyEventArgs>;

 

delegate EventHandler<ClientAccessPolicyEventArgs> CustomClientAccessPolicy()

 

Event CustomClientAccessPolicy As EventHandler<ClientAccessPolicyEventArgs>

GetRodl    (declared in ServerChannel)

 

event GetRodl: EventHandler<RodlEventArgs>;

 

delegate EventHandler<RodlEventArgs> GetRodl()

 

Event GetRodl As EventHandler<RodlEventArgs>

OnCustomCrossOrigin

 

event OnCustomCrossOrigin: EventHandler<CustomCrossOriginEventArgs>;

 

delegate EventHandler<CustomCrossOriginEventArgs> OnCustomCrossOrigin()

 

Event OnCustomCrossOrigin As EventHandler<CustomCrossOriginEventArgs>