Namespace: OpenEdge.Net.HTTP.Trace
Type: Class ExchangeData
Parent Classes:
Inherits: Progress.Lang.Object
Implements: OpenEdge.Core.Json.IJsonSerializer


Copyright (c) 2021 by Progress Software Corporation. All rights reserved.
File:ExchangeData
Purpose:Records data and timings of a request through the HttpClient
Author(s):pjudge
Created:2021-08-15
Notes:* Named 'ExchangeData' since it records both request and response elements
/* Timestamp when the request started being processed by the HttpClient



Method Summary
  Options Name Purpose
  AddRequestCookie (Cookie) /* Adds a request cookie to the trace data @param Cookie The cookie to add. Unknown values are not added to the data */
  AddRequestCookies (Cookie[]) /* Adds an array of request cookies to the trace data @param Cookie[] The cookies to add. Unknown values are not added to the data */
  AddRequestHeader (HttpHeader) /* Adds a request header to the trace data @param HttpHeader The header to add. Unknown values are not added to the data */
  AddRequestHeaders (HttpHeader[]) /* Adds an array of request headers to the data. @param Httpheader[] The headers to add. Unknown values are not added to the data */
  AddResponseCookie (Cookie) /* Adds a response cookie to the trace data @param Cookie The cookie to add. Unknown values are not added to the data */
  AddResponseCookies (Cookie[]) /* Adds an array of response cookies to the trace data @param Cookie[] The cookies to add. Unknown values are not added to the data */
  AddResponseHeader (HttpHeader) /* Adds a response header to the trace data @param HttpHeader The header to add. Unknown values are not added to the data */
  AddResponseHeaders (HttpHeader[]) /* Adds an array of response headers to the data. @param Httpheader[] The headers to add. Unknown values are not added to the data */
  ClearData ()
  FromJson (JsonConstruct) /* DESERIALIZATION METHOD: populates this object with data from the JSON representation. @param JsonConstruct A JSON representation of this object. May be unknown (JsonDataType:NULL). */
  SetRequestInfo (IHttpRequest) /* Sets the request info for this trace. @param IHttpRequest A valid HTTP request */
  SetResponseInfo (IHttpResponse) /* Sets the response info for this trace. @param IHttpResponse A valid HTTP response */
  Progress.Json.ObjectModel.JsonConstruct ToJsonConstruct () /* SERIALIZATION METHOD:returns a JsonConstruct (JsonDataType:OBJECT or JsonDataType:ARRAY) representation of this object. @return JsonConstruct A JSON representation of this object. May be unknown (JsonDataType:NULL). */

Constructor Summary
  Options Name Purpose
  ExchangeData () /* Default constructor */

Property Summary
  Options Name Purpose
  CHARACTER ClientHost
  INTEGER ClientPort
  OpenEdge.Core.Collections.IStringKeyedMap QueryString
  Ccs.Common.Support.IMemptrHolder RequestBody
  CHARACTER RequestContentType
  CHARACTER RequestCookies
  CHARACTER RequestHeaders
  CHARACTER RequestHttpVersion
  CHARACTER RequestMethod
  Ccs.Common.Support.IMemptrHolder ResponseBody
  CHARACTER ResponseContentType
  CHARACTER ResponseCookies
  CHARACTER ResponseHeaders
  CHARACTER ResponseHttpVersion
  INTEGER ResponseStatusCode
  CHARACTER ServerAddress
  CHARACTER ServerHost
  CHARACTER ServerPath
  INTEGER ServerPort
  DATETIME-TZ StartedAt
  INT64 TimeBlocked
  INT64 TimeConnect
  INT64 TimeDNS
  INT64 TimeReceived
  INT64 TimeSend
  INT64 TimeSsl
  INT64 TimeWait


Method Detail
Top

AddRequestCookie (Cookie)

/* Adds a request cookie to the trace data
Parameters:
poCookie OpenEdge.Net.HTTP.Cookie
 
Top

AddRequestCookies (Cookie[])

/* Adds an array of request cookies to the trace data
Parameters:
poCookies OpenEdge.Net.HTTP.Cookie
 
Top

AddRequestHeader (HttpHeader)

/* Adds a request header to the trace data
Parameters:
poHeader OpenEdge.Net.HTTP.HttpHeader
 
Top

AddRequestHeaders (HttpHeader[])

/* Adds an array of request headers to the data.
Parameters:
poHeaders OpenEdge.Net.HTTP.HttpHeader
 
Top

AddResponseCookie (Cookie)

/* Adds a response cookie to the trace data
Parameters:
poCookie OpenEdge.Net.HTTP.Cookie
 
Top

AddResponseCookies (Cookie[])

/* Adds an array of response cookies to the trace data
Parameters:
poCookies OpenEdge.Net.HTTP.Cookie
 
Top

AddResponseHeader (HttpHeader)

/* Adds a response header to the trace data
Parameters:
poHeader OpenEdge.Net.HTTP.HttpHeader
 
Top

AddResponseHeaders (HttpHeader[])

/* Adds an array of response headers to the data.
Parameters:
poHeaders OpenEdge.Net.HTTP.HttpHeader
 
Top

ClearData ()

Top

FromJson (JsonConstruct)

/* DESERIALIZATION METHOD: populates this object with data from the JSON representation.
Parameters:
pJson Progress.Json.ObjectModel.JsonConstruct
 
Top

SetRequestInfo (IHttpRequest)

/* Sets the request info for this trace.
Parameters:
poRequest OpenEdge.Net.HTTP.IHttpRequest
 
Top

SetResponseInfo (IHttpResponse)

/* Sets the response info for this trace.
Parameters:
pResponse OpenEdge.Net.HTTP.IHttpResponse
 
Top

Progress.Json.ObjectModel.JsonConstruct ToJsonConstruct ()

/* SERIALIZATION METHOD:returns a JsonConstruct (JsonDataType:OBJECT or JsonDataType:ARRAY) representation
of this object.
Returns Progress.Json.ObjectModel.JsonConstruct
  JsonConstruct A JSON representation of this object. May be unknown (JsonDataType:NULL).


Constructor Detail
Top

ExchangeData ()

/* Default constructor


Property Detail
Top

CHARACTER ClientHost

Returns CHARACTER
 
Top

INTEGER ClientPort

Returns INTEGER
 
Top

OpenEdge.Core.Collections.IStringKeyedMap QueryString

Returns OpenEdge.Core.Collections.IStringKeyedMap
 
Top

Ccs.Common.Support.IMemptrHolder RequestBody

Returns Ccs.Common.Support.IMemptrHolder
 
Top

CHARACTER RequestContentType

Returns CHARACTER
 
Top

CHARACTER RequestCookies

Returns CHARACTER
 
Top

CHARACTER RequestHeaders

Returns CHARACTER
 
Top

CHARACTER RequestHttpVersion

Returns CHARACTER
 
Top

CHARACTER RequestMethod

Returns CHARACTER
 
Top

Ccs.Common.Support.IMemptrHolder ResponseBody

Returns Ccs.Common.Support.IMemptrHolder
 
Top

CHARACTER ResponseContentType

Returns CHARACTER
 
Top

CHARACTER ResponseCookies

Returns CHARACTER
 
Top

CHARACTER ResponseHeaders

Returns CHARACTER
 
Top

CHARACTER ResponseHttpVersion

Returns CHARACTER
 
Top

INTEGER ResponseStatusCode

Returns INTEGER
 
Top

CHARACTER ServerAddress

Returns CHARACTER
 
Top

CHARACTER ServerHost

Returns CHARACTER
 
Top

CHARACTER ServerPath

Returns CHARACTER
 
Top

INTEGER ServerPort

Returns INTEGER
 
Top

DATETIME-TZ StartedAt

Returns DATETIME-TZ
 
Top

INT64 TimeBlocked

Returns INT64
 
Top

INT64 TimeConnect

Returns INT64
 
Top

INT64 TimeDNS

Returns INT64
 
Top

INT64 TimeReceived

Returns INT64
 
Top

INT64 TimeSend

Returns INT64
 
Top

INT64 TimeSsl

Returns INT64
 
Top

INT64 TimeWait

Returns INT64