Namespace: OpenEdge.Net.HTTP.Lib.ABLSockets
Type: Class ABLSocketLibrary
Parent Classes:
Inherits: Progress.Lang.Object
Implements: OpenEdge.Net.HTTP.IHttpClientLibrary, OpenEdge.Logging.ISupportLogging


Copyright (c) 2014-2019, 2021, 2023 by Progress Software Corporation. All rights reserved.
File:ABLSocketLibrary
Author(s):pjudge
Created:Mon Jan 20 09:46:05 EST 2014



Method Summary
  Options Name Purpose
  CreateTunnel (ISupportProxy) /* Creates an HTTPS tunnel (using CONNECT) for the proxy request @param IHttpRequest The request to proxy */
  DataReceivedHandler (ClientSocket, SocketReadEventArgs) /** Event handler for dealing with data received from the ClientSocket @param ClientSocket The socket object receiving the response @param SocketReadEventArgs Arguments pertaining to the data received */
  Execute (IHttpRequest, IHttpResponse) /** Executes an HTTP request, and returns a response Timeouts: - the connect and write-data calls are controlled by STOP-AFTER - the read-data calls (WaitForResponse) are handled by the socket @param HttpRequest The request to execute @param HttpResponse The response from the server for that request. */
  ExtractEntity (IHttpResponse, ByteBucket) /** Constructs the Entity object for the response, based on the ContentType @param IHttpResponse The response into which to add the entity representation of the body @param ByteBucket The message body in plain-text form */
  MakeSyncRequest (ClientSocket, IHttpRequest, IHttpResponse, ByteBucket)
  MakeSyncRequest (ClientSocket, IHttpRequest, IHttpResponse, RawMessage)
  ReadTerminatedHandler (ClientSocket, SocketReadEventArgs) /** Event handler for dealing with ReadTerminated events received from the ClientSocket @param ClientSocket The socket object receiving the response @param SocketReadEventArgs Arguments pertaining to the data received */
  ReadTimeoutHandler (ClientSocket, SocketReadEventArgs) /** Event handler for dealing with read timeouts received from the ClientSocket @param ClientSocket The socket object receiving the response @param SocketReadEventArgs Arguments pertaining to the data received */
  OpenEdge.Net.HTTP.Filter.Payload.RawMessage SerializeRequest (IHttpRequest)

Constructor Summary
  Options Name Purpose
  ABLSocketLibrary (character, character, ClientSocket, ClientSocketConnectionParameters) /** Constructor. @param character This library's name @param character This library's version (semver) @param ClientSocket The socket used to execute the request @param ClientSocketConnectionParameters Connection information for the server used */
  ABLSocketLibrary (character, character, ClientSocket, ClientSocketConnectionParameters, ClientOptions) /** Constructor. @param character This library's name @param character This library's version (semver) @param ClientSocket The socket used to execute the request @param ClientSocketConnectionParameters Connection information for the server used @param ClientOptions Options */

Property Summary
  Options Name Purpose
  CHARACTER LibraryName
  CHARACTER LibraryVersion
  OpenEdge.Logging.ILogWriter Logger
  INTEGER miErrorNo_BadRequest
  INTEGER miErrorNo_ConnectionFailure
  INTEGER miErrorNo_ConnectionTimeout
  INTEGER miErrorNo_MissingTlsCredentials
  INTEGER miErrorNo_RequestReadTerminated
  INTEGER miErrorNo_RequestReadTimeout
  INTEGER miErrorNo_RequestTimeout
  INTEGER miErrorNo_RequestWriteTimeout
  OpenEdge.Net.HTTP.ClientOptions Options


Method Detail
Top

CreateTunnel (ISupportProxy)

/* Creates an HTTPS tunnel (using CONNECT) for the proxy request
Parameters:
pProxyReq OpenEdge.Net.HTTP.ISupportProxy
 
Top

DataReceivedHandler (ClientSocket, SocketReadEventArgs)

Purpose: Event handler for dealing with data received from the ClientSocket
Parameters:
poSender OpenEdge.Net.ServerConnection.ClientSocket
 
poEventArgs OpenEdge.Net.ServerConnection.SocketReadEventArgs
 
Top

Execute (IHttpRequest, IHttpResponse)

Purpose: Executes an HTTP request, and returns a response
Timeouts:
- the connect and write-data calls are controlled by STOP-AFTER
- the read-data calls (WaitForResponse) are handled by the socket
Parameters:
poRequest OpenEdge.Net.HTTP.IHttpRequest
 
poResponse OpenEdge.Net.HTTP.IHttpResponse
 
Top

ExtractEntity (IHttpResponse, ByteBucket)

Purpose: Constructs the Entity object for the response, based on the
ContentType
Parameters:
poResponse OpenEdge.Net.HTTP.IHttpResponse
 
poMessageBody OpenEdge.Core.ByteBucket
 
Top

MakeSyncRequest (ClientSocket, IHttpRequest, IHttpResponse, ByteBucket)

Parameters:
pServer OpenEdge.Net.ServerConnection.ClientSocket
 
pRequest OpenEdge.Net.HTTP.IHttpRequest
 
pResponse OpenEdge.Net.HTTP.IHttpResponse
 
pRequestBody OpenEdge.Core.ByteBucket
 
Top

MakeSyncRequest (ClientSocket, IHttpRequest, IHttpResponse, RawMessage)

Parameters:
pServer OpenEdge.Net.ServerConnection.ClientSocket
 
pRequest OpenEdge.Net.HTTP.IHttpRequest
 
pResponse OpenEdge.Net.HTTP.IHttpResponse
 
pRawRequest OpenEdge.Net.HTTP.Filter.Payload.RawMessage
 
Top

ReadTerminatedHandler (ClientSocket, SocketReadEventArgs)

Purpose: Event handler for dealing with ReadTerminated events received from the ClientSocket
Parameters:
poSender OpenEdge.Net.ServerConnection.ClientSocket
 
poEventArgs OpenEdge.Net.ServerConnection.SocketReadEventArgs
 
Top

ReadTimeoutHandler (ClientSocket, SocketReadEventArgs)

Purpose: Event handler for dealing with read timeouts received from the ClientSocket
Parameters:
poSender OpenEdge.Net.ServerConnection.ClientSocket
 
poEventArgs OpenEdge.Net.ServerConnection.SocketReadEventArgs
 
Top

OpenEdge.Net.HTTP.Filter.Payload.RawMessage SerializeRequest (IHttpRequest)

Parameters:
pRequest OpenEdge.Net.HTTP.IHttpRequest
 
Returns OpenEdge.Net.HTTP.Filter.Payload.RawMessage
 


Constructor Detail
Top

ABLSocketLibrary (character, character, ClientSocket, ClientSocketConnectionParameters)

Purpose: Constructor.
Parameters:
pcLibraryName CHARACTER
 
pcLibraryVersion CHARACTER
 
poSocket OpenEdge.Net.ServerConnection.ClientSocket
 
poSocketConnectionParams OpenEdge.Net.ServerConnection.ClientSocketConnectionParameters
 
Top

ABLSocketLibrary (character, character, ClientSocket, ClientSocketConnectionParameters, ClientOptions)

Purpose: Constructor.
Parameters:
pcLibraryName CHARACTER
 
pcLibraryVersion CHARACTER
 
poSocket OpenEdge.Net.ServerConnection.ClientSocket
 
poSocketConnectionParams OpenEdge.Net.ServerConnection.ClientSocketConnectionParameters
 
poOptions OpenEdge.Net.HTTP.ClientOptions
 


Property Detail
Top

CHARACTER LibraryName

Returns CHARACTER
 
Top

CHARACTER LibraryVersion

Returns CHARACTER
 
Top

OpenEdge.Logging.ILogWriter Logger

Returns OpenEdge.Logging.ILogWriter
 
Top

INTEGER miErrorNo_BadRequest

Returns INTEGER
 
Top

INTEGER miErrorNo_ConnectionFailure

Returns INTEGER
 
Top

INTEGER miErrorNo_ConnectionTimeout

Returns INTEGER
 
Top

INTEGER miErrorNo_MissingTlsCredentials

Returns INTEGER
 
Top

INTEGER miErrorNo_RequestReadTerminated

Returns INTEGER
 
Top

INTEGER miErrorNo_RequestReadTimeout

Returns INTEGER
 
Top

INTEGER miErrorNo_RequestTimeout

Returns INTEGER
 
Top

INTEGER miErrorNo_RequestWriteTimeout

Returns INTEGER
 
Top

OpenEdge.Net.HTTP.ClientOptions Options

Returns OpenEdge.Net.HTTP.ClientOptions