WebProcessor Class

From RemObjects Wiki
Jump to: navigation, search

This is a Library topic for RemObjects SDK for .NET
This page is generated from external data, please do not update

NamespacesInterfacesClassesEnumsImplements

Contents

Overview

The WebProcessor class is a server component that can be used to make your services accessible via the HTTP protocol.

This server channel allows to easily add an API to an existing ASP.NET website. The WebProcessor instance is usually wrapped into a HttpContext handler and provides access to one or more services via the HTTP protocol.

You can see the WebProcessor class in action in the ASP.NET 2.0 sample shipped with RemObjects SDK for .NET.


Location


Constants

DEFAULT_SERVER_NAME   protected     (declared in HttpServerChannel)



Oxygene:   const DEFAULT_SERVER_NAME: String
C#:   const String DEFAULT_SERVER_NAME
VB:   Dim DEFAULT_SERVER_NAME As String


Properties

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.



Prism:   property Active: Boolean read write
C#:   Boolean Active { get; set; }
VB:   Property Active As Boolean


ChannelType     (declared in HttpServerChannel)

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



Prism:   property ChannelType: String read
C#:   String ChannelType { get; }
VB:   Property ReadOnly ChannelType As String


CustomParameters     (declared in ServerChannel)



Prism:   property CustomParameters: Dictionary<String,String> read
C#:   Dictionary<String,String> CustomParameters { get; }
VB:   Property ReadOnly CustomParameters As Dictionary<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.



Prism:   property Dispatchers: MessageDispatchers read
C#:   MessageDispatchers Dispatchers { get; }
VB:   Property ReadOnly Dispatchers As MessageDispatchers


EntryAssembly

Assembly containing the RODL resource. If not specified, the RodlResource.SystemRodl will be used. (See the RodlResource for more detail on how the RODL resources are handled.)



Prism:   property EntryAssembly: Assembly read write
C#:   Assembly EntryAssembly { get; set; }
VB:   Property EntryAssembly As Assembly


ExtendedDispatchers     (declared in HttpServerChannel)



Prism:   property ExtendedDispatchers: ExtendedDispatcherList read
C#:   ExtendedDispatcherList ExtendedDispatchers { get; }
VB:   Property ReadOnly ExtendedDispatchers As ExtendedDispatcherList


HasAfterReceiveStream   protected     (declared in Channel)



Prism:   property HasAfterReceiveStream: Boolean read
C#:   Boolean HasAfterReceiveStream { get; }
VB:   Property ReadOnly HasAfterReceiveStream As Boolean


HasBeforeSendStream   protected     (declared in Channel)



Prism:   property HasBeforeSendStream: Boolean read
C#:   Boolean HasBeforeSendStream { get; }
VB:   Property ReadOnly HasBeforeSendStream As Boolean


Initializing   protected     (declared in ServerChannel)



Prism:   property Initializing: Boolean read
C#:   Boolean Initializing { get; }
VB:   Property ReadOnly Initializing As Boolean


Messages     (declared in ServerChannel)



Prism:   property Messages: List<String> read
C#:   List<String> Messages { get; }
VB:   Property ReadOnly Messages As List<String>


SecurityOptions     (declared in HttpServerChannel)

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



Prism:   property SecurityOptions: ServerSecurityOptions read
C#:   ServerSecurityOptions SecurityOptions { get; }
VB:   Property ReadOnly SecurityOptions As ServerSecurityOptions


SendClientAccessPolicyXml     (declared in HttpServerChannel)

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).



Prism:   property SendClientAccessPolicyXml: ClientAccessPolicyType read write
C#:   ClientAccessPolicyType SendClientAccessPolicyXml { get; set; }
VB:   Property SendClientAccessPolicyXml As ClientAccessPolicyType


SendCrossOriginHeader     (declared in HttpServerChannel)



Prism:   property SendCrossOriginHeader: Boolean read write
C#:   Boolean SendCrossOriginHeader { get; set; }
VB:   Property SendCrossOriginHeader As Boolean


SendExceptionsAs500     (declared in HttpServerChannel)

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).



Prism:   property SendExceptionsAs500: Boolean read write
C#:   Boolean SendExceptionsAs500 { get; set; }
VB:   Property SendExceptionsAs500 As Boolean


ServeInfoPage     (declared in HttpServerChannel)

Determines if the server info page should be served or not

HtmlServerInfoPage.png



Prism:   property ServeInfoPage: Boolean read write
C#:   Boolean ServeInfoPage { get; set; }
VB:   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.



Prism:   property ServeRodl: Boolean read write
C#:   Boolean ServeRodl { get; set; }
VB:   Property ServeRodl As Boolean


Instance Methods

constructor ()

Creates a new instance of the WebProcessor class.


Oxygene:   constructor
C#:   constructor()
VB:   Sub New


constructor (Boolean)   protected     (declared in HttpServerChannel)



Oxygene:   constructor(allowMultipleDispatchers: Boolean)
C#:   constructor(Boolean allowMultipleDispatchers)
VB:   Sub New (allowMultipleDispatchers As Boolean)


Parameters:

  • allowMultipleDispatchers:


Activate     (declared in ServerChannel)

Alias for the Open method.


Oxygene:   method Activate
C#:   void Activate()
VB:   Sub Activate


Close     (declared in ServerChannel)

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


Oxygene:   method Close
C#:   void Close()
VB:   Sub Close


CopyProperties   protected     (declared in Channel)



Oxygene:   method CopyProperties(source: Channel)
C#:   void CopyProperties(Channel source)
VB:   Sub CopyProperties(source As Channel)


Parameters:

  • source:


Deactivate     (declared in ServerChannel)

Alias for the Close method.


Oxygene:   method Deactivate
C#:   void Deactivate()
VB:   Sub Deactivate


Dispatch   protected     (declared in ServerChannel)



Oxygene:   method Dispatch(message: IMessage; channelInfo: IServerChannelInfo)
C#:   void Dispatch(IMessage message, IServerChannelInfo channelInfo)
VB:   Sub Dispatch(message As IMessage, channelInfo As IServerChannelInfo)


Parameters:

  • message:
  • channelInfo:


Dispose   protected     (declared in HttpServerChannel)



Oxygene:   method Dispose(disposing: Boolean)
C#:   void Dispose(Boolean disposing)
VB:   Sub Dispose(disposing As Boolean)


Parameters:

  • disposing:


DoClose   protected

Performs actions needed to deactivate and close the server channel.


Oxygene:   method DoClose
C#:   void DoClose()
VB:   Sub DoClose


DoEndInit   protected     (declared in ServerChannel)



Oxygene:   method DoEndInit
C#:   void DoEndInit()
VB:   Sub DoEndInit


DoOpen   protected

Performs actions needed to activate the server channel.


Oxygene:   method DoOpen
C#:   void DoOpen()
VB:   Sub DoOpen


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.


Oxygene:   method Open
C#:   void Open()
VB:   Sub Open


ProcessRequest

Processes incoming HTTP requests.


Oxygene:   method ProcessRequest(context: HttpContext)
C#:   void ProcessRequest(HttpContext context)
VB:   Sub ProcessRequest(context As HttpContext)


Parameters:

  • context: Object containing information about the incoming HTTP request


Register     (declared in HttpServerChannel)



Oxygene:   method Register(dispatcher: IHttpDispatcher)
C#:   void Register(IHttpDispatcher dispatcher)
VB:   Sub Register(dispatcher As IHttpDispatcher)


Parameters:

  • dispatcher:


StartListening     (declared in ServerChannel)

Alias for the Open method.


Oxygene:   method StartListening
C#:   void StartListening()
VB:   Sub StartListening


StopListening     (declared in ServerChannel)

Alias for the Close method.


Oxygene:   method StopListening
C#:   void StopListening()
VB:   Sub StopListening


TriggerAfterClose   protected     (declared in ServerChannel)



Oxygene:   method TriggerAfterClose
C#:   void TriggerAfterClose()
VB:   Sub TriggerAfterClose


TriggerAfterOpen   protected     (declared in ServerChannel)



Oxygene:   method TriggerAfterOpen
C#:   void TriggerAfterOpen()
VB:   Sub TriggerAfterOpen


TriggerAfterReceiveStream   protected     (declared in Channel)



Oxygene:   method TriggerAfterReceiveStream(var stream: Stream)
C#:   void TriggerAfterReceiveStream(ref Stream stream)
VB:   Sub TriggerAfterReceiveStream(ByRef stream As Stream)


Parameters:

  • stream:


TriggerBeforeClose   protected     (declared in ServerChannel)



Oxygene:   method TriggerBeforeClose
C#:   void TriggerBeforeClose()
VB:   Sub TriggerBeforeClose


TriggerBeforeOpen   protected     (declared in ServerChannel)



Oxygene:   method TriggerBeforeOpen
C#:   void TriggerBeforeOpen()
VB:   Sub TriggerBeforeOpen


TriggerBeforeSendStream   protected     (declared in Channel)



Oxygene:   method TriggerBeforeSendStream(var stream: Stream)
C#:   void TriggerBeforeSendStream(ref Stream stream)
VB:   Sub TriggerBeforeSendStream(ByRef stream As Stream)


Parameters:

  • stream:


TriggerOnAdjustConvertedRodl   protected

Calls the handler for the OnAdjustConvertedRodl event.


Oxygene:   method TriggerOnAdjustConvertedRodl(request: HttpContext; var rodlStream: Stream)
C#:   void TriggerOnAdjustConvertedRodl(HttpContext request, ref Stream rodlStream)
VB:   Sub TriggerOnAdjustConvertedRodl(request As HttpContext, ByRef rodlStream As Stream)


Parameters:

  • request:
  • rodlStream:


TriggerOnAdjustRodl   protected

Calls the handler for the OnAdjustRodl event.


Oxygene:   method TriggerOnAdjustRodl(request: HttpContext; var rodlStream: Stream)
C#:   void TriggerOnAdjustRodl(HttpContext request, ref Stream rodlStream)
VB:   Sub TriggerOnAdjustRodl(request As HttpContext, ByRef rodlStream As Stream)


Parameters:

  • request:
  • rodlStream:


TriggerOnCustomClientAccessPolicy   protected     (declared in HttpServerChannel)

Fires the OnCustomClientAccessPolicy event and returns the security policy file generated by its handler (via aPolicyContent parameter). Can be called only from the ancestor class.


Oxygene:   method TriggerOnCustomClientAccessPolicy(var policyContent: String)
C#:   void TriggerOnCustomClientAccessPolicy(ref String policyContent)
VB:   Sub TriggerOnCustomClientAccessPolicy(ByRef policyContent As String)


Parameters:

  • policyContent:


TriggerOnCustomCrossOrigin   protected     (declared in HttpServerChannel)



Oxygene:   method TriggerOnCustomCrossOrigin(e: CustomCrossOriginEventArgs)
C#:   void TriggerOnCustomCrossOrigin(CustomCrossOriginEventArgs e)
VB:   Sub TriggerOnCustomCrossOrigin(e As CustomCrossOriginEventArgs)


Parameters:

  • e:


TriggerOnGetRodl   protected

Calls the handler for the OnGetRodl event.


Oxygene:   method TriggerOnGetRodl(request: HttpContext; var rodlStream: Stream)
C#:   void TriggerOnGetRodl(HttpContext request, ref Stream rodlStream)
VB:   Sub TriggerOnGetRodl(request As HttpContext, ByRef rodlStream As Stream)


Parameters:

  • request:
  • rodlStream:


Unregister     (declared in HttpServerChannel)



Oxygene:   method Unregister(dispatcher: IHttpDispatcher)
C#:   void Unregister(IHttpDispatcher dispatcher)
VB:   Sub Unregister(dispatcher As IHttpDispatcher)


Parameters:

  • dispatcher:


Events

AfterClose     (declared in ServerChannel)



Oxygene:   event AfterClose: EventHandler
C#:   event EventHandler AfterClose
VB:   Event AfterClose As EventHandler


AfterOpen     (declared in ServerChannel)



Oxygene:   event AfterOpen: EventHandler
C#:   event EventHandler AfterOpen
VB:   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 RemObjects 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.



Oxygene:   event AfterReceiveStream: StreamEventHandler
delegate: method Invoke(sender: Object; e: StreamEventArgs)

C#:   event StreamEventHandler AfterReceiveStream
delegate: void Invoke(Object sender, StreamEventArgs e)

VB:   Event AfterReceiveStream As StreamEventHandler
delegate: Sub Invoke(sender As Object, e As StreamEventArgs)


BeforeClose     (declared in ServerChannel)



Oxygene:   event BeforeClose: EventHandler
C#:   event EventHandler BeforeClose
VB:   Event BeforeClose As EventHandler


BeforeOpen     (declared in ServerChannel)



Oxygene:   event BeforeOpen: EventHandler
C#:   event EventHandler BeforeOpen
VB:   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.



Oxygene:   event BeforeSendStream: StreamEventHandler
delegate: method Invoke(sender: Object; e: StreamEventArgs)

C#:   event StreamEventHandler BeforeSendStream
delegate: void Invoke(Object sender, StreamEventArgs e)

VB:   Event BeforeSendStream As StreamEventHandler
delegate: Sub Invoke(sender As Object, e As StreamEventArgs)


OnAdjustConvertedRodl

This event is fired only if a RODL is requested via the MessageDispather that supports the IRodlConverter interface and allows to adjust the converted RODL before it is sent back to the client.



Oxygene:   event OnAdjustConvertedRodl: OnAdjustRodlHandler
delegate: method Invoke(sender: Object; request: HttpContext; var rodlStream: Stream)

C#:   event OnAdjustRodlHandler OnAdjustConvertedRodl
delegate: void Invoke(Object sender, HttpContext request, ref Stream rodlStream)

VB:   Event OnAdjustConvertedRodl As OnAdjustRodlHandler
delegate: Sub Invoke(sender As Object, request As HttpContext, ByRef rodlStream As Stream)


OnAdjustRodl

This event is fired after the RODL is retrieved and allows to adjust its contents before it is sent back to the client.



Oxygene:   event OnAdjustRodl: OnAdjustRodlHandler
delegate: method Invoke(sender: Object; request: HttpContext; var rodlStream: Stream)

C#:   event OnAdjustRodlHandler OnAdjustRodl
delegate: void Invoke(Object sender, HttpContext request, ref Stream rodlStream)

VB:   Event OnAdjustRodl As OnAdjustRodlHandler
delegate: Sub Invoke(sender As Object, request As HttpContext, ByRef rodlStream As Stream)


OnCustomClientAccessPolicy     (declared in HttpServerChannel)

This event is fired when SendClientAccessPolicyXml is set to Custom. Allows more precise management of client access policies.

The handler of this event generates a valid ClientAccessPolicy.xml and puts it to the aPolicyContent parameter.



Oxygene:   event OnCustomClientAccessPolicy: OnCustomClientAccessPolicyHandler
delegate: method Invoke(sender: Object; var policyContent: String)

C#:   event OnCustomClientAccessPolicyHandler OnCustomClientAccessPolicy
delegate: void Invoke(Object sender, ref String policyContent)

VB:   Event OnCustomClientAccessPolicy As OnCustomClientAccessPolicyHandler
delegate: Sub Invoke(sender As Object, ByRef policyContent As String)


OnCustomCrossOrigin     (declared in HttpServerChannel)



Oxygene:   event OnCustomCrossOrigin: EventHandler<CustomCrossOriginEventArgs>
C#:   event EventHandler<CustomCrossOriginEventArgs> OnCustomCrossOrigin
VB:   Event OnCustomCrossOrigin As EventHandler<CustomCrossOriginEventArgs>


OnGetRodl

This event is fired when the RODL is requested and allows to provide request-specific RODL.



Oxygene:   event OnGetRodl: OnAdjustRodlHandler
delegate: method Invoke(sender: Object; request: HttpContext; var rodlStream: Stream)

C#:   event OnAdjustRodlHandler OnGetRodl
delegate: void Invoke(Object sender, HttpContext request, ref Stream rodlStream)

VB:   Event OnGetRodl As OnAdjustRodlHandler
delegate: Sub Invoke(sender As Object, request As HttpContext, ByRef rodlStream As Stream)


See Also


Product: RemObjects SDK
Available Editions: RemObjects SDK for .NET, Xcode, Delphi, Java and JavaScript

GlossaryArticlesLibrarySamples

Personal tools
Namespaces

Variants
Actions
Navigation
products
platforms
special
Toolbox