WinInetSuperHttpClientChannel Class

This is a Library topic for RemObjects SDK for .NET
This page is generated from external data, please do not update
Namespaces — Interfaces — Classes — Enums — Implements
Contents |
Overview
The WinInetSuperHttpClientChannel class is specialization of the SuperHttpClientChannel class which provides client communication via the HTTP protocol based on the WinInet HTTP classes for .NET.
Location
- Assembly: RemObjects.SDK.dll
- Namespace: RemObjects.SDK
- Ancestry: System.ComponentModel.Component | Channel | ClientChannel | SuperHttpClientChannel | WinInetSuperHttpClientChannel
Constants
| DEFAULT_TARGET_URL protected (declared in SuperHttpClientChannel) |
|---|
|
|
| DEFAULT_USER_AGENT protected (declared in SuperHttpClientChannel) |
|
|
| URL_SCHEMES_NOT_SUPPORTED protected (declared in ClientChannel) |
|
|
| WAITING_REQ_TIMEOUT protected (declared in SuperHttpClientChannel) |
|
|
Properties
| Active (declared in SuperHttpClientChannel) |
|---|
|
Determines if the channel is currently active, i.e. has an open connection to the server, or is in the process of (re-)establishing a connection (true) or not (false).
|
| Busy (declared in ClientChannel) |
|
Busy is true if the transport channel is currently busy with an operation. Otherwise Busy is false. By default, if the transport channel is busy, it will not attempt to process another request and a ChannelBusyException exception is raised if you try to do so.
|
| Connected (declared in SuperHttpClientChannel) |
|
Indicates if there is an open connection to the server.
|
| ConnectionId (declared in SuperHttpClientChannel) |
|
Identifies a connection to this client on the server. Note that the value of this property does not necessarily correspond with the session ID on the server side.
|
| ConnectTimeout (declared in SuperHttpClientChannel) |
|
Timeout in milliseconds after which this SuperHttpClientChannel will abort trying to connect to the server. This ensures that for unresponsive servers, the client will not hang indefinitely trying to establish a connection to the server. The default value is 10000 (i.e. 10 seconds).
|
| EventThreadPool (declared in SuperHttpClientChannel) |
|
|
| HasAfterReceiveStream protected (declared in Channel) |
|
|
| HasBeforeSendStream protected (declared in Channel) |
|
|
| HasOnTransferProgress protected (declared in ClientChannel) |
|
|
| HttpTimeout (declared in SuperHttpClientChannel) |
|
The timeout, in milliseconds, after which the client channel will abort the request. This ensures that for unresponsive servers, the client will not hang indefinitely waiting for a reply. The default value is 10000 (i.e. 10 seconds).
|
| MaxPackageSize (declared in SuperHttpClientChannel) |
|
The maximum size for data packages that the channel can send (default is 1048576, 1MB).
|
| RequestTimeout (declared in SuperHttpClientChannel) |
|
The timeout, in milliseconds, after which the SuperHTTP client channel will abort the request. This ensures that for unresponsive servers, the client will not hang indefinitely waiting for a reply. The default value is 60000 (i.e. 1 minute).
|
| SessionId (declared in SuperHttpClientChannel) |
|
GUID that uniquely identifies each client and allows the server to determine which calls are received from the same client. This property is used for session management.
|
| StrippedTargetUrl protected (declared in SuperHttpClientChannel) |
|
|
| TargetUri (declared in ClientChannel) |
|
|
| TargetUrl (declared in ClientChannel) |
|
|
| UserAgent |
|
Provides the User-Agent string. This string is sent for informational purposes only; you can set it to a custom value to detect and distinguish your client (as opposed to other client applications or web browsers accessing the server) in the server log files or HTTP packet monitors. Returns "RemObjects SDK for .NET Client" by default.
|
Class Methods
| BuildTargetUri protected (declared in ClientChannel) |
|---|
|
|
| ChannelMatchingTargetUri (String): IClientChannel (declared in ClientChannel) |
|
|
| ChannelMatchingTargetUri (Uri): IClientChannel (declared in ClientChannel) |
|
|
Instance Methods
| constructor () |
|---|
|
Initializes the default values of the TargetUrl (to http://localhost:8099/bin) and the UserAgent (to "RemObjects SDK for .NET Client").
|
| constructor (IContainer) |
|
|
| Activate protected (declared in SuperHttpClientChannel) |
|
Prepears EventThreadPool and the waiting thread for making asyncronous calls to the server.
|
| AsyncDispatch (declared in ClientChannel) |
|
|
| BeforeDispatch protected (declared in SuperHttpClientChannel) |
|
Before the first message dispatching (when the connection is not established yet), this method initiates the connection to the server in a separate thread (waiting thread) and adds WaitingConnection into SuperHttpServerConnection.WaitingConnections for future response. It also initializes the ClientID of the message with the SessionID.
|
| BeginDispatch (IMessage, AsyncCallback, Boolean, Object): IClientAsyncResult protected (declared in ClientChannel) |
|
|
| BeginDispatch (IMessage, AsyncCallback, Object): IClientAsyncResult (declared in ClientChannel) |
|
|
| CancelRequest protected |
|
Aborts waiting or dispatching an HttpWebRequest.
|
| CheckChannelBusy protected (declared in SuperHttpClientChannel) |
|
|
| Clone |
|
Returns a deep copy of this.
|
| CopyProperties (Channel) protected (declared in Channel) |
|
|
| CopyProperties (ClientChannel) protected |
|
In addition to the base.CopyProperties, this method copies the values of the TargetUrl and the UserAgent.
|
| Deactivate protected |
|
In addition to the base.Deactivate, this method frees waiting or dispatching HttpWebRequests.
|
| Dispatch (declared in ClientChannel) |
|
The implementation of IClientChannel.Dispatch. This method ensures the transport is not busy before calling IntDispatch and passing the given IMessage. If the transport is busy, a ChannelBusyException is thrown.
|
| DispatchHttpRequest protected |
|
|
| Dispose protected (declared in SuperHttpClientChannel) |
|
|
| EndDispatch (declared in ClientChannel) |
|
|
| IntDispatch protected (declared in SuperHttpClientChannel) |
|
This method composes a request stream from the ConnectionID, package number and message body and sends it to the server using the DispatchHttpRequest method. It contains actions for possible errors or exceptions that occur on the server side during the processing of the request.
|
| RegisterEventReceiver (declared in SuperHttpClientChannel) |
|
This method is used by the EventReceiver class to add this component to the internal event receiver list.
|
| ResetConnection protected (declared in SuperHttpClientChannel) |
|
|
| TriggerAfterReceiveStream protected (declared in Channel) |
|
|
| TriggerBeforeSendStream protected (declared in Channel) |
|
|
| TriggerOnException protected (declared in ClientChannel) |
|
|
| TriggerOnLoginNeeded protected (declared in ClientChannel) |
|
|
| TriggerOnTransferEnd protected (declared in ClientChannel) |
|
|
| TriggerOnTransferProgress protected (declared in ClientChannel) |
|
|
| TriggerOnTransferStart protected (declared in ClientChannel) |
|
|
| UnregisterEventReceiver (declared in SuperHttpClientChannel) |
|
This method is used by the EventReceiver class to remove this component from the internal event receiver list.
|
| WaitConnected (declared in SuperHttpClientChannel) |
|
|
Events
| 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.
C#: event StreamEventHandler AfterReceiveStream VB: Event AfterReceiveStream As StreamEventHandler
|
| 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.
C#: event StreamEventHandler BeforeSendStream VB: Event BeforeSendStream As StreamEventHandler
|
| OnException (declared in ClientChannel) |
|
This event is raised if an exception occurs during the execution of a remote request through the channel. The event will be raised both for exceptions originating from the server and for exceptions during communication (such as unavailability of the server). Attach a handler to this event to do custom handling of events without having to reply on explicit try/catch blocks in the calling code.
C#: event RequestExceptionEventHandler OnException VB: Event OnException As RequestExceptionEventHandler
|
| OnInvalidClientId (declared in SuperHttpClientChannel) |
|
Fires when the server returns a response with error code for an unregistered connection with the client.
C#: event InvalidClientIdHandler OnInvalidClientId VB: Event OnInvalidClientId As InvalidClientIdHandler
|
| OnLoginNeeded (declared in ClientChannel) |
|
This event is raised if an SessionNotFoundException occurs during the execution of a remote request through the channel. The event gives you the opportunity to perform a login on the server (for example by calling a custom Login method, and then retry the call by setting the EventArgs' LoginSuccessful property to true. This way, your client can recover from a timed-out session to automatically logging in again, without the calling code having to consider the handling of SessionNotFoundExceptions manually.
C#: event LoginNeededEventHandler OnLoginNeeded VB: Event OnLoginNeeded As LoginNeededEventHandler
|
| OnTransferEnd (declared in ClientChannel) |
|
This event is triggered by the client channel after a transfer is completed (either the sending of a request or the receiving of a response).
C#: event TransferEndEventHandler OnTransferEnd VB: Event OnTransferEnd As TransferEndEventHandler
|
| OnTransferProgress (declared in ClientChannel) |
|
This event is triggered by the client channel during a transfer (either the sending of a request or the receiving of a response) whenever a new block of data has been sent or received.
C#: event TransferProgressEventHandler OnTransferProgress VB: Event OnTransferProgress As TransferProgressEventHandler
|
| OnTransferStart (declared in ClientChannel) |
|
This event is triggered by the client channel when a transfer (either the sending of a request or the receiving of a response) is about to be started.
C#: event TransferStartEventHandler OnTransferStart VB: Event OnTransferStart As TransferStartEventHandler |
See Also
- HTTP
- Server (RemObjects SDK)
- SuperHttpClientChannel
- HttpWebRequest
- WinINet Reference
- User agent
- Lists
- RemObjects SDK for .NET: Namespaces — Interfaces — Classes — Enums — Implements
- RemObjects SDK shared: Data Types – File Types
- other editions
- RemObjects SDK for Xcode: Protocols — Classes — Enums — Aliases — Implements
- RemObjects SDK for Delphi: Interfaces — Classes — Aliases — Implements
- RemObjects SDK for Java: Namespaces — Interfaces — Classes — Enums — Implements
- RemObjects SDK for JavaScript: Objects

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