Namespace: OpenEdge.Net.HTTP
Type: Class HttpClient
Parent Classes:
Progress.Lang.Object

Inherits: Progress.Lang.Object
Implements: OpenEdge.Net.HTTP.IHttpClient, OpenEdge.Core.ISupportInitialize, OpenEdge.Logging.ISupportLogging, OpenEdge.Core.IAdaptable


Copyright (c) 2014-2017, 2019, 2021-2023 by Progress Software Corporation. All rights reserved.
File:HttpClient
Purpose:Public HttpClient. All client code should be written against this class.
Author(s):pjudge
Created:Fri Feb 14 10:44:00 EST 2014
Purpose: (mandatory) A free-text name for this http client. Used for the USER-AGENT
string.



Method Summary
  Options Name Purpose
  AddUserAgent (IHttpRequest) /** Adds a User-Agent string relevant to this client. @param HttpRequest The request to which to add the user-agent string */
  ClearTraceData ()
  Destroy () /* Destroy/Shutdown/Anti-Initializer */
  OpenEdge.Net.HTTP.IHttpResponse Execute (IHttpRequest) /** Executes an HTTP request. If this code changes, the code in HttpClientDecorator should too, to preserve the 'wrapper' nature of this method. @param HttpRequest Request parameters (URL, method, etc) @return HttpResponse Includes status and payload */
  Execute (IHttpRequest, IHttpResponse) /** Executes an HTTP request. @param IHttpRequest Request parameters (URL, method, etc) @param IHttpResponse Includes status and payload*/
  Progress.Lang.Object GetAdapter (Class)
  Initialize () /* Initializer/Startup */
  OpenEdge.Net.HTTP.HttpClient Instance () /** Factory method for instantiating a new http client client. This "Instance" method remains because it's already used elsewhere. The ClientBuilder() should be called directly in most cases. @return HttpClient A useful, constructed HttpClient. */
  LOGICAL ProcessStatusAction (IHttpRequest, IHttpResponse) /** Process the action resulting from the status evaluation @param HttpResponse The response in question @return logical Returns TRUE if the loop is complete */
  RequestTraceEnd (IHttpRequest, IHttpResponse)
  RequestTraceInit (IHttpRequest)
  RequestTraceStart (IHttpRequest)
  WriteTraceData ()

Constructor Summary
  Options Name Purpose
  HttpClient (character, character, IHttpClientLibrary) /** Constructor. @param character The name of this Http Client @param character The (semantic: major.minor.patch) version of this Http Client @param IHttpClientLibrary The library performing the actual work */

Property Summary
  Options Name Purpose
  CHARACTER ClientName
  CHARACTER ClientVersion
  OpenEdge.Logging.ILogWriter Logger
  OpenEdge.Net.HTTP.ClientOptions Options
  OpenEdge.Net.HTTP.Trace.TraceConfig TraceConfig
  OpenEdge.Net.HTTP.Trace.ExchangeData TraceData


Method Detail
Top

AddUserAgent (IHttpRequest)

Purpose: Adds a User-Agent string relevant to this client.
Parameters:
poRequest OpenEdge.Net.HTTP.IHttpRequest
 
Top

ClearTraceData ()

Top

Destroy ()

/* Destroy/Shutdown/Anti-Initializer
Top

OpenEdge.Net.HTTP.IHttpResponse Execute (IHttpRequest)

Purpose: Executes an HTTP request.
If this code changes, the code in HttpClientDecorator should
too, to preserve the 'wrapper' nature of this method.
Parameters:
poRequest OpenEdge.Net.HTTP.IHttpRequest
 
Returns OpenEdge.Net.HTTP.IHttpResponse
  HttpResponse Includes status and payload
Top

Execute (IHttpRequest, IHttpResponse)

Purpose: Executes an HTTP request.
Parameters:
poRequest OpenEdge.Net.HTTP.IHttpRequest
 
poResponse OpenEdge.Net.HTTP.IHttpResponse
 
Top

Progress.Lang.Object GetAdapter (Class)

Parameters:
pAdaptTo Progress.Lang.Class
 
Returns Progress.Lang.Object
 
Top

Initialize ()

/* Initializer/Startup
Top

OpenEdge.Net.HTTP.HttpClient Instance ()

Purpose: Factory method for instantiating a new http client client.
This "Instance" method remains because it's already used elsewhere.
The ClientBuilder() should be called directly in most cases.
Returns OpenEdge.Net.HTTP.HttpClient
  HttpClient A useful, constructed HttpClient.
Top

LOGICAL ProcessStatusAction (IHttpRequest, IHttpResponse)

Purpose: Process the action resulting from the status evaluation
Parameters:
poRequest OpenEdge.Net.HTTP.IHttpRequest
 
poResponse OpenEdge.Net.HTTP.IHttpResponse
 
Returns LOGICAL
  logical Returns TRUE if the loop is complete
Top

RequestTraceEnd (IHttpRequest, IHttpResponse)

Parameters:
pRequest OpenEdge.Net.HTTP.IHttpRequest
 
pResponse OpenEdge.Net.HTTP.IHttpResponse
 
Top

RequestTraceInit (IHttpRequest)

Parameters:
pRequest OpenEdge.Net.HTTP.IHttpRequest
 
Top

RequestTraceStart (IHttpRequest)

Parameters:
pRequest OpenEdge.Net.HTTP.IHttpRequest
 
Top

WriteTraceData ()



Constructor Detail
Top

HttpClient (character, character, IHttpClientLibrary)

Purpose: Constructor.
Parameters:
pcClientName CHARACTER
 
pcClientVersion CHARACTER
 
poLibrary OpenEdge.Net.HTTP.IHttpClientLibrary
 


Property Detail
Top

CHARACTER ClientName

Returns CHARACTER
 
Top

CHARACTER ClientVersion

Returns CHARACTER
 
Top

OpenEdge.Logging.ILogWriter Logger

Returns OpenEdge.Logging.ILogWriter
 
Top

OpenEdge.Net.HTTP.ClientOptions Options

Returns OpenEdge.Net.HTTP.ClientOptions
 
Top

OpenEdge.Net.HTTP.Trace.TraceConfig TraceConfig

Returns OpenEdge.Net.HTTP.Trace.TraceConfig
 
Top

OpenEdge.Net.HTTP.Trace.ExchangeData TraceData

Returns OpenEdge.Net.HTTP.Trace.ExchangeData