Namespace: Consultingwerk.Framework
Class 
JsonWebToken Copy to Clipboard
Parent classes:
Inherits: Consultingwerk.ParameterObject
Implements: Consultingwerk.IJsonSerializable
SERIALIZABLE

File:JsonWebToken
Purpose:Represents a JSON Web Token (JWT)
Author(s):Mike Fechner / Consultingwerk Ltd.
Created:17.04.2021 12:25:21
Notes:https://tools.ietf.org/html/rfc7519



Top Method Summary
Options Name Purpose
# CHARACTER AddSerializableProperties () Adds serializable properties from the calling class using ABL reflection. Supported from OpenEdge 11.6 on only.
Inherited from Consultingwerk.JsonSerializable
# AddSerializableProperties (character) Add a list of Serializable Properties to the SerializableProperties property
Inherited from Consultingwerk.JsonSerializable
# CHARACTER AddSerializableProperties (Class) Adds serializable properties from the given class using ABL reflection. Supported from OpenEdge 11.6 on only.
Inherited from Consultingwerk.JsonSerializable
+ Deserialize (longchar) Deserializes a LONGCHAR representation of the state of the class instance
Inherited from Consultingwerk.JsonSerializable
+ DeserializeFromJsonObject (JsonObject) Initializes the object instance based on the passed in JsonObject representation of the object instance
Inherited from Consultingwerk.JsonSerializable
# DeserializeProperty (JsonObject, character, character) Deserializes a single property value to the current JsonObject
Inherited from Consultingwerk.JsonSerializable
+ LOGICAL Equals (Object) Compares this object to the passed in object by value
Inherited from Consultingwerk.ParameterObject
# IEnumerable GetEnumerableInstance (character) Returns an instance of the enumerable type
Inherited from Consultingwerk.JsonSerializable
+ RAW GetHashCode () Returns an 64bit RAW Hash Value representing the object instance
Inherited from Consultingwerk.ParameterObject
+ CHARACTER GetSerializableProperties () Returns the meta data of the serializable properties
Inherited from Consultingwerk.JsonSerializable
+ Consultingwerk.Framework.JsonWebToken Header (JsonWebTokenHeader) Property Setter for the Header property
+ Consultingwerk.Framework.JsonWebToken HeaderJson (JsonObject) Property Setter for the HeaderJson property
+ Consultingwerk.Framework.JsonWebToken Payload (JsonWebTokenPayload) Property Setter for the Payload property
+ Consultingwerk.Framework.JsonWebToken PayloadJson (JsonObject) Property Setter for the PayloadJson property
+ LONGCHAR Serialize () Returns a LONGCHAR representation of the state of the class instance
Inherited from Consultingwerk.JsonSerializable
# SerializeProperty (JsonObject, character, character) Serializes a single property value to the current JsonObject
Inherited from Consultingwerk.JsonSerializable
+ Progress.Json.ObjectModel.JsonObject ToJsonObject () Returns a JsonObject representation of the state of the class instance
Inherited from Consultingwerk.JsonSerializable
+ Consultingwerk.Framework.JsonWebToken TokenString (longchar) Property Setter for the TokenString property
+ CHARACTER ToString () Returns a string representation of the object
Inherited from Consultingwerk.ParameterObject
+ LONGCHAR WriteJson () Returns a LONGCHAR representation of the state of the class instance
Inherited from Consultingwerk.JsonSerializable
+ LONGCHAR WriteXml () Returns an XML LONGCHAR representation of the object instance
Inherited from Consultingwerk.JsonSerializable
+ HANDLE XmlSerialize (handle) Serializes the properties of the current object instance to an existing X-NODEREF object
Inherited from Consultingwerk.JsonSerializable
+ XmlSerializeProperties (handle) Serializes the properties of this object instance as child nodes of the given node
Inherited from Consultingwerk.JsonSerializable
# XmlSerializeProperty (handle, character, character) Serializes a single property value to the current parent XmlNode
Inherited from Consultingwerk.JsonSerializable

Top Constructor Summary
Options Name Purpose
+ JsonWebToken () Constructor for the JsonWebToken class
+ JsonWebToken (JsonWebTokenHeader, JsonObject, JsonWebTokenPayload, JsonObject) Constructor for the JsonWebToken class

Top Property Summary
Options Name Purpose
+ Consultingwerk.Framework.JsonWebTokenHeader Header
+ Progress.Json.ObjectModel.JsonObject HeaderJson
+ Consultingwerk.IJsonDateTypeFormatter JsonDateTypeFormatter
Inherited from Consultingwerk.JsonSerializable
+ Consultingwerk.Framework.JsonWebTokenPayload Payload
+ Progress.Json.ObjectModel.JsonObject PayloadJson
+ LOGICAL SerializeEmptyLists
Inherited from Consultingwerk.JsonSerializable
+ LOGICAL SerializeNullValues
Inherited from Consultingwerk.JsonSerializable
+ LONGCHAR TokenString
+ LOGICAL UseSerializedTypeInformation
Inherited from Consultingwerk.JsonSerializable


Method Detail
Top

PROTECTED CHARACTER AddSerializableProperties ()

Inherited from Consultingwerk.JsonSerializable
Purpose: Adds serializable properties from the calling class using ABL reflection.
Supported from OpenEdge 11.6 on only.
Notes: Adds properties of the following types, does not add properties of
the base classes, adds only PUBLIC properties:
- CHARACTER
- CHARACTER EXTENT
- DATE
- DATE EXTENT
- DATETIME
- DATETIME EXTENT
- DATETIME-TZ
- DATETIME-TZ EXTENT
- DECIMAL
- DECIMAL EXTENT
- INT64
- INT64 EXTENT
- INTEGER
- INTEGER EXTENT
- LOGICAL
- LOGICAL EXTENT
- LONGCHAR
- LONGCHAR EXTENT
- RAW
- RAW EXTENT
- RECID
- RECID EXTENT
- ROWID
- ROWID EXTENT
- Progress.Json.ObjectModel.JsonArray
- Progress.Json.ObjectModel.JsonObject
- ENUM
- Consultingwerk.Enum
- Consultingwerk.Framework.Base.IEnumerable
- Consultingwerk.JsonSerializable
- Consultingwerk.JsonSerializable EXTENT

Returns CHARACTER
The value of the SerializableProperties property
Top

PROTECTED AddSerializableProperties (character)

Inherited from Consultingwerk.JsonSerializable
Purpose: Add a list of Serializable Properties to the SerializableProperties property
Notes: Required as a workaround to full reflection only. We *may* remove this
method once Progress Software has implemented full reflection

Parameters:
pcSerializableProperties CHARACTER
A comma delimited list of serializable properties
Top

PROTECTED CHARACTER AddSerializableProperties (Class)

Inherited from Consultingwerk.JsonSerializable
Purpose: Adds serializable properties from the given class using ABL reflection.
Supported from OpenEdge 11.6 on only.
Notes: Adds properties of the following types, does not add properties of
the base classes, adds only PUBLIC properties:
- CHARACTER
- CHARACTER EXTENT
- DATE
- DATE EXTENT
- DATETIME
- DATETIME EXTENT
- DATETIME-TZ
- DATETIME-TZ EXTENT
- DECIMAL
- DECIMAL EXTENT
- INT64
- INT64 EXTENT
- INTEGER
- INTEGER EXTENT
- LOGICAL
- LOGICAL EXTENT
- LONGCHAR
- LONGCHAR EXTENT
- RAW
- RAW EXTENT
- RECID
- RECID EXTENT
- ROWID
- ROWID EXTENT
- Progress.Json.ObjectModel.JsonArray
- Progress.Json.ObjectModel.JsonObject
- ENUM
- Consultingwerk.Enum
- Consultingwerk.Framework.Base.IEnumerable
- Consultingwerk.JsonSerializable
- Consultingwerk.JsonSerializable EXTENT

Parameters:
poClass Progress.Lang.Class
The declaring class
Returns CHARACTER
The value of the SerializableProperties property
Top

PUBLIC Deserialize (longchar)

Inherited from Consultingwerk.JsonSerializable
Purpose: Deserializes a LONGCHAR representation of the state of the class instance
Notes:

Parameters:
pcSerializedRepresentation LONGCHAR
The stored LONGCHAR representation of the objects data
Top

PUBLIC DeserializeFromJsonObject (JsonObject)

Inherited from Consultingwerk.JsonSerializable
Purpose: Initializes the object instance based on the passed in JsonObject
representation of the object instance
Notes:

Parameters:
poJsonObject Progress.Json.ObjectModel.JsonObject
The stored JsonObject representation of the objects data
Top

PROTECTED DeserializeProperty (JsonObject, character, character)

Inherited from Consultingwerk.JsonSerializable
Purpose: Deserializes a single property value to the current JsonObject
Notes: Allows to override the handling of individual properties during the
JsonSerialization
Notes:

Parameters:
poJsonObject Progress.Json.ObjectModel.JsonObject
The reference to the source JsonObject
pcProperty CHARACTER
The name of the property in the JsonObject
pcType CHARACTER
The type of the property
Top

PUBLIC LOGICAL Equals (Object)

Inherited from Consultingwerk.ParameterObject
Purpose: Compares this object to the passed in object by value
Notes:

Parameters:
poObject Progress.Lang.Object
The reference to the object to compare to
Returns LOGICAL
Logical value indicating if the two objects are identical by value
Top

PROTECTED IEnumerable GetEnumerableInstance (character)

Inherited from Consultingwerk.JsonSerializable
Purpose: Returns an instance of the enumerable type
Notes: When the property value is referencing a value list instance, this
instance is returned. If not, we attempt to create a new instance

Parameters:
pcProperty CHARACTER
The name of the List property
Returns IEnumerable
The instance of the enumerable type
Top

PUBLIC RAW GetHashCode ()

Inherited from Consultingwerk.ParameterObject
Purpose: Returns an 64bit RAW Hash Value representing the object instance
Notes: Based on the ABL SHA-512 implementation

Returns RAW
The RAW Hash Value representing the object instance
Top

PUBLIC CHARACTER GetSerializableProperties ()

Inherited from Consultingwerk.JsonSerializable
Purpose: Returns the meta data of the serializable properties
Notes:

Returns CHARACTER
The serializable properties meta data as a comma delimited list
Top

PUBLIC Consultingwerk.Framework.JsonWebToken Header (JsonWebTokenHeader)

Purpose: Property Setter for the Header property
Notes:

Parameters:
pHeader Consultingwerk.Framework.JsonWebTokenHeader
The value for the Header property
Returns Consultingwerk.Framework.JsonWebToken
The reference to the object instance
Top

PUBLIC Consultingwerk.Framework.JsonWebToken HeaderJson (JsonObject)

Purpose: Property Setter for the HeaderJson property
Notes:

Parameters:
pHeaderJson Progress.Json.ObjectModel.JsonObject
The value for the HeaderJson property
Returns Consultingwerk.Framework.JsonWebToken
The reference to the object instance
Top

PUBLIC Consultingwerk.Framework.JsonWebToken Payload (JsonWebTokenPayload)

Purpose: Property Setter for the Payload property
Notes:

Parameters:
pPayload Consultingwerk.Framework.JsonWebTokenPayload
The value for the Payload property
Returns Consultingwerk.Framework.JsonWebToken
The reference to the object instance
Top

PUBLIC Consultingwerk.Framework.JsonWebToken PayloadJson (JsonObject)

Purpose: Property Setter for the PayloadJson property
Notes:

Parameters:
pPayloadJson Progress.Json.ObjectModel.JsonObject
The value for the PayloadJson property
Returns Consultingwerk.Framework.JsonWebToken
The reference to the object instance
Top

PUBLIC LONGCHAR Serialize ()

Inherited from Consultingwerk.JsonSerializable
Purpose: Returns a LONGCHAR representation of the state of the class instance
Notes: Returns the classname together with the Json serialization

Returns LONGCHAR
The LONGCHAR representation of the ISerializable objects data
Top

PROTECTED SerializeProperty (JsonObject, character, character)

Inherited from Consultingwerk.JsonSerializable
Purpose: Serializes a single property value to the current JsonObject
Notes: Allows to override the handling of individual properties during the
JsonSerialization

Parameters:
poJsonObject Progress.Json.ObjectModel.JsonObject
The reference to the target JsonObject
pcProperty CHARACTER
The name of the property in the JsonObject
pcType CHARACTER
The type of the property
Top

PUBLIC Progress.Json.ObjectModel.JsonObject ToJsonObject ()

Inherited from Consultingwerk.JsonSerializable
Purpose: Returns a JsonObject representation of the state of the class instance
Notes: Returns the classname together with the Json serialization of the
object

Returns Progress.Json.ObjectModel.JsonObject
The Progress.Json.ObjectModel.JsonObject representation of the ISerializable objects data
Top

PUBLIC Consultingwerk.Framework.JsonWebToken TokenString (longchar)

Purpose: Property Setter for the TokenString property
Notes:

Parameters:
pTokenString LONGCHAR
The value for the TokenString property
Returns Consultingwerk.Framework.JsonWebToken
The reference to the object instance
Top

PUBLIC CHARACTER ToString ()

Inherited from Consultingwerk.ParameterObject
Purpose: Returns a string representation of the object
Notes:

Returns CHARACTER
The string representation of the object
Top

PUBLIC LONGCHAR WriteJson ()

Inherited from Consultingwerk.JsonSerializable
Purpose: Returns a LONGCHAR representation of the state of the class instance
Notes: Returns the classname together with the Json serialization
This method is a facade to the JsonSerializable:Serialize method

Returns LONGCHAR
The LONGCHAR representation of the ISerializable objects data
Top

PUBLIC LONGCHAR WriteXml ()

Inherited from Consultingwerk.JsonSerializable
Purpose: Returns an XML LONGCHAR representation of the object instance
Notes:

Returns LONGCHAR
The LONGCHAR representation of the ISerializable objects data
Top

PUBLIC HANDLE XmlSerialize (handle)

Inherited from Consultingwerk.JsonSerializable
Purpose: Serializes the properties of the current object instance to
an existing X-NODEREF object
Notes:

Parameters:
phParent HANDLE
The reference to the parent XML Node or Document
Returns HANDLE
The X-NODEREF with the properties of the serialized object
Top

PUBLIC XmlSerializeProperties (handle)

Inherited from Consultingwerk.JsonSerializable
Purpose: Serializes the properties of this object instance as child nodes of
the given node
Notes:

Parameters:
phObjectNode HANDLE
The reference to the X-NODEREF object that represents the node for the current instance
Top

PROTECTED XmlSerializeProperty (handle, character, character)

Inherited from Consultingwerk.JsonSerializable
Purpose: Serializes a single property value to the current parent XmlNode
Notes: Allows to override the handling of individual properties during the
XmlSerialization

Parameters:
phParentNode HANDLE
The reference to the parent XML Node
pcProperty CHARACTER
The name of the property in the JsonObject
pcType CHARACTER
The type of the property


Constructor Detail
Top

PUBLIC JsonWebToken ()

Purpose: Constructor for the JsonWebToken class
Notes:

Top

PUBLIC JsonWebToken (JsonWebTokenHeader, JsonObject, JsonWebTokenPayload, JsonObject)

Purpose: Constructor for the JsonWebToken class
Notes:

Parameters:
poHeader Consultingwerk.Framework.JsonWebTokenHeader
The value for the Header property
poHeaderJson Progress.Json.ObjectModel.JsonObject
The value for the HeaderJson property
poPayload Consultingwerk.Framework.JsonWebTokenPayload
The value for the Payload property
poPayloadJson Progress.Json.ObjectModel.JsonObject
The value for the PayloadJson property


Property Detail
Top

PUBLIC Consultingwerk.Framework.JsonWebTokenHeader Header


Returns Consultingwerk.Framework.JsonWebTokenHeader
Top

PUBLIC Progress.Json.ObjectModel.JsonObject HeaderJson


Returns Progress.Json.ObjectModel.JsonObject
Top

PUBLIC Consultingwerk.IJsonDateTypeFormatter JsonDateTypeFormatter

Inherited from Consultingwerk.JsonSerializable

Returns Consultingwerk.IJsonDateTypeFormatter
Top

PUBLIC Consultingwerk.Framework.JsonWebTokenPayload Payload


Returns Consultingwerk.Framework.JsonWebTokenPayload
Top

PUBLIC Progress.Json.ObjectModel.JsonObject PayloadJson


Returns Progress.Json.ObjectModel.JsonObject
Top

PUBLIC LOGICAL SerializeEmptyLists

Inherited from Consultingwerk.JsonSerializable

Returns LOGICAL
Top

PUBLIC LOGICAL SerializeNullValues

Inherited from Consultingwerk.JsonSerializable

Returns LOGICAL
Top

PUBLIC LONGCHAR TokenString


Returns LONGCHAR
Top

PUBLIC LOGICAL UseSerializedTypeInformation

Inherited from Consultingwerk.JsonSerializable

Returns LOGICAL


©2006-2023 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       15.04.2024 05:51:39