Namespace: OpenEdge.Net.HTTP.Trace.Formatter
Type: Class HarFormatter
Parent Classes:
Inherits: Progress.Lang.Object
Implements: OpenEdge.Net.HTTP.Trace.Formatter.ITraceFormatter


Copyright (c) 2021 by Progress Software Corporation. All rights reserved.
File:HarFormatter
Purpose:Formats trace data in the HAR format
Author(s):pjudge
Created:2021-09022
Notes:* Format per http://www.softwareishard.com/blog/har-12-spec/
/* If TRUE the HAR data will be written out formatted aka pretty-printed. Default is FALSE



Method Summary
  Options Name Purpose
  AddBody (IMemptrHolder, character, JsonObject, character) /** Adds data about the body to the current item @param IMemptrHolder Body data @param character The value of the content-type header @param JsonObject The parent JSON object @param character The property name for the body data. */
  AddHeaders (character[], JsonObject, logical) /** Adds an array of header values to a JsonObject @param character[] An array of header values @param JsonObject The parent JSON object. */
  Ccs.Common.Support.IMemptrHolder Format (ExchangeData[]) /** Formats the input tracing data into a set of bytes to be written (typically). This method may produce JSON or some other structured representation. @param ExchangeData[] An array of trace data @return IMemptrHolder The formatted representation of the trace data */
  Progress.Json.ObjectModel.JsonArray GetCookies (character[]) /** Parses an array of cookie values into a JsonArray @param character[] An array of cookie values @return JsonArray An array of objects representing the cookie. May be null. */
  Progress.Json.ObjectModel.JsonArray GetQueryString (IStringKeyedMap) /** Splits the query string into a JSON array @param character a standard query string @param JsonArray An array of objects representing the query string. May be null. */
  INT64 GetTime (ExchangeData) /** calculates a request's elapsed etime per trace data @param ExchangeData @return integer The elapsed time. Zero or greater. */

Property Summary
  Options Name Purpose
  LOGICAL Formatted


Method Detail
Top

AddBody (IMemptrHolder, character, JsonObject, character)

Purpose: Adds data about the body to the current item
Parameters:
pBody Ccs.Common.Support.IMemptrHolder
 
pContentType CHARACTER
 
pParent Progress.Json.ObjectModel.JsonObject
 
pPropertyName CHARACTER
 
Top

AddHeaders (character[], JsonObject, logical)

Purpose: Adds an array of header values to a JsonObject
Parameters:
pData CHARACTER
 
pParent Progress.Json.ObjectModel.JsonObject
 
pAddRedirectUrl LOGICAL
 
Top

Ccs.Common.Support.IMemptrHolder Format (ExchangeData[])

Purpose: Formats the input tracing data into a set of bytes to be written (typically).
This method may produce JSON or some other structured representation.
Parameters:
pTraceData OpenEdge.Net.HTTP.Trace.ExchangeData
 
Returns Ccs.Common.Support.IMemptrHolder
  IMemptrHolder The formatted representation of the trace data
Top

Progress.Json.ObjectModel.JsonArray GetCookies (character[])

Purpose: Parses an array of cookie values into a JsonArray
Parameters:
pData CHARACTER
 
Returns Progress.Json.ObjectModel.JsonArray
  JsonArray An array of objects representing the cookie. May be null.
Top

Progress.Json.ObjectModel.JsonArray GetQueryString (IStringKeyedMap)

Purpose: Splits the query string into a JSON array
Parameters:
pData OpenEdge.Core.Collections.IStringKeyedMap
 
Returns Progress.Json.ObjectModel.JsonArray
 
Top

INT64 GetTime (ExchangeData)

Purpose: calculates a request's elapsed etime per trace data
Parameters:
pData OpenEdge.Net.HTTP.Trace.ExchangeData
 
Returns INT64
  integer The elapsed time. Zero or greater.


Property Detail
Top

LOGICAL Formatted

Returns LOGICAL