Namespace: Consultingwerk
Class 
JsonSerializable Copy to Clipboard
Parent classes:
Inherits: Progress.Lang.Object
Implements: Consultingwerk.IJsonSerializable
Inherited by: Consultingwerk.SmartFramework.Authentication.GetUserGroupAssignmentsParameter Consultingwerk.SmartFramework.Authorization.AssignAuthorizationParameter Consultingwerk.SmartFramework.Authorization.AuthorizationMaintenanceServiceParameter Consultingwerk.SmartFramework.Authorization.CanFindSecurityAssignmentParameter Consultingwerk.SmartFramework.Authorization.GetGroupRestrictedDefaultLevelParameter Consultingwerk.SmartFramework.Authorization.GetParentGroupsParameter Consultingwerk.SmartFramework.Authorization.GetUserRestrictedDefaultLevelParameter Consultingwerk.SmartFramework.Authorization.IsRestrictedCheckParameter Consultingwerk.SmartFramework.Authorization.IsRestrictedCheckParameter2 Consultingwerk.SmartFramework.Authorization.IsRestrictedParameter Consultingwerk.SmartFramework.Authorization.SecurityRealmLookupParameter Consultingwerk.SmartFramework.Scheduler.SetJobStatusParameter Consultingwerk.SmartFramework.Authorization.VerifySecurityItemGuidParameter Consultingwerk.SmartFramework.GetDatabaseNamesResult Consultingwerk.SmartFramework.GetMenuStructureParameter Consultingwerk.SmartFramework.InvokeServiceMethodCallParameter Consultingwerk.SmartFramework.InvokeStaticMethodCallParameter Consultingwerk.SmartFramework.Lock.DeleteExpiredLocksJobCommand Consultingwerk.SmartFramework.Menu.MoveMenuStructureParameter Consultingwerk.SmartFramework.Message Consultingwerk.SmartFramework.Repository.AttributeValue Consultingwerk.SmartFramework.Scheduler.ShellCommandSchedulerJobCommand Consultingwerk.CommonUi.Components.TreeView.SerializableTreeNode Consultingwerk.CommonUi.Components.TreeView.SerializableTreeRootNode Consultingwerk.CommonUi.Components.TreeView.SerializableTreeNodeDetailSpec Consultingwerk.DateArrayHolder Consultingwerk.DateFormat Consultingwerk.DateHolder Consultingwerk.DateTimeArrayHolder Consultingwerk.DateTimeHolder Consultingwerk.DateTimeTzArrayHolder Consultingwerk.DateTimeTzHolder Consultingwerk.DecimalArrayHolder Consultingwerk.DecimalHolder Consultingwerk.Framework.MessageInteraction.Question Consultingwerk.Framework.RepositoryServices.RepositoryTaskParameter Consultingwerk.Framework.RepositoryServices.SmartBusinessEntityLookupDescriptor Consultingwerk.Framework.SerializableParameterWithSimpleResult Consultingwerk.Framework.SmtpConfiguration Consultingwerk.Framework.TypeDescriptor.ClassAnnotationContainer Consultingwerk.Framework.TypeDescriptor.SerializableAnnotation Consultingwerk.Framework.TypeDescriptor.SerializableClassMemberAnnotation Consultingwerk.HandleArrayHolder Consultingwerk.InQueryExpression Consultingwerk.Int64ArrayHolder Consultingwerk.Int64Holder Consultingwerk.IntegerArrayHolder Consultingwerk.IntegerHolder Consultingwerk.LogicalArrayHolder Consultingwerk.LogicalHolder Consultingwerk.LongcharArrayHolder Consultingwerk.LongcharHolder Consultingwerk.MemptrArrayHolder Consultingwerk.MemptrHolder Consultingwerk.NameValuePair Consultingwerk.NumericFormat Consultingwerk.ObjectArrayHolder Consultingwerk.OERA.BusinessEntityDescriptor.BusinessEntityDescriptor Consultingwerk.OERA.BusinessEntityDescriptor.BusinessEntityFieldDescriptor Consultingwerk.OERA.BusinessEntityDescriptor.BusinessEntityTableDescriptor Consultingwerk.OERA.BusinessEntityDescriptor.BusinessEntityViewDescriptor Consultingwerk.OERA.BusinessEntityDescriptor.GetBusinessEntityDescriptorParameter Consultingwerk.OERA.BusinessEntityDescriptor.InvokableMethodDescriptor Consultingwerk.OERA.CanFindParameter Consultingwerk.OERA.DataSourceInfo Consultingwerk.OERA.DataSourceQueryInfo Consultingwerk.OERA.FetchDataRequest Consultingwerk.SmartFramework.Menu.GetMenusRequest Consultingwerk.OERA.CountRecordsRequest Consultingwerk.OERA.FilterParameter Consultingwerk.OERA.GetInitialValuesParameter Consultingwerk.OERA.NamedQueryParameter Consultingwerk.SmartFramework.Repository.Object.ObjectsOfObjectTypesQuery Consultingwerk.SmartFramework.Repository.Object.ObjectsWithAttributeValueQuery Consultingwerk.Util.ClassHelper.ClassNamesInClassPathNamedQuery Consultingwerk.OERA.NamedQueryParameterEntry Consultingwerk.BufferFieldName Consultingwerk.BusinessEntityDesigner.CreateDataRelationRequest Consultingwerk.BusinessEntityDesigner.Generator.Generated Consultingwerk.BusinessEntityDesigner.Generator.TelerikMobile.Column Consultingwerk.BusinessEntityDesigner.Generator.Viewer.ControlGeneratorFactoryParameter Consultingwerk.BusinessEntityDesigner.Generator.Viewer.ViewerFieldSpec Consultingwerk.BusinessEntityDesigner.Services.OpenSaveParameter Consultingwerk.BusinessEntityDesigner.Services.ValidateDesignRequest Consultingwerk.BusinessEntityDesigner.Services.ValidateDesignResponse Consultingwerk.BusinessEntityDesigner.Services.VerifyModifiedParameter Consultingwerk.BusinessEntityDesigner.Validation.BaseValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.BaseComparisonValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.EqualValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.GreaterOrEqualValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.GreaterThanValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.LessOrEqualValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.LessThanValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.NotEqualValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.CanFindValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.IsEmptyValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.IsInListValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.IsInRangeValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.IsNotRestrictedValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.IsValidEmailAddressValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.IsWeekdayValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.MandatoryValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.MaxLengthValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.MinLengthValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.NotCanFind2ValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.NotCanFindValidationProperties Consultingwerk.BusinessEntityDesigner.Validation.ReadOnlyValidationProperties Consultingwerk.CanDoQueryExpression Consultingwerk.CharacterArrayHolder Consultingwerk.CharacterHolder Consultingwerk.SmartFramework.Authorization.SecurityRealmParameter Consultingwerk.Util.MessageSubSystem Consultingwerk.CharacterRange Consultingwerk.ClassName Consultingwerk.SmartFramework.Repository.Class.ClassIsAParameter Consultingwerk.SmartFramework.Repository.Class.CopyInstanceAttributesParameter Consultingwerk.SmartFramework.Repository.Class.GetChildClassesParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectInstanceDesignAttributesParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectInstancesDesignAttributesParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectMasterAttributeValueParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectMasterDesignAttributeParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectMasterDesignAttributesParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectTypeDesignAttributeParameter Consultingwerk.SmartFramework.Repository.Class.GetObjectTypeDesignAttributesParameter Consultingwerk.SmartFramework.Repository.Class.GetParentClassesParameter Consultingwerk.SmartFramework.Repository.Class.StoreObjectInstanceDesignAttributeParameter Consultingwerk.SmartFramework.Repository.Class.StoreObjectMasterDesignAttributeParameter Consultingwerk.SmartFramework.Repository.Class.StoreObjectTypeDesignAttributeParameter Consultingwerk.SmartFramework.Repository.CopyObjectMasterParameter Consultingwerk.SmartFramework.Repository.CreateObjectMasterParameter Consultingwerk.SmartFramework.Repository.FetchRepositoryObjectParameter Consultingwerk.SmartFramework.Repository.IntegrityCheckParameter Consultingwerk.SmartFramework.Repository.Object.FindObjectMasterWithAttributeValuesParameter Consultingwerk.SmartFramework.Repository.Object.GetObjectMasterDesignDataParameter Consultingwerk.SmartFramework.Repository.Object.MovePageParameter Consultingwerk.SmartFramework.Repository.Object.ObjectIsAParameter Consultingwerk.SmartFramework.Repository.ReplaceObjectInstanceParameter Consultingwerk.SmartFramework.RunProcedureCallParameter Consultingwerk.SmartFramework.Scheduler.BusinessTaskSchedulerJobCommand Consultingwerk.SmartFramework.Scheduler.CleanupJobStatusParameter Consultingwerk.SmartFramework.Scheduler.CleanupSchedulerJobCommand Consultingwerk.SmartFramework.Scheduler.GetBusinessTaskMethodsParameter Consultingwerk.SmartFramework.Scheduler.GetNextAvailableJobStatusParameter Consultingwerk.SmartFramework.Scheduler.ProcedureParameterObject Consultingwerk.SmartFramework.Scheduler.ProcedureSchedulerJobCommand Consultingwerk.SmartFramework.Scheduler.ScheduleJobResponse Consultingwerk.SmartFramework.Scheduler.ScheduleNextJobStatusParameter Consultingwerk.OERA.RestAdapter.RestServletRequest Consultingwerk.OERA.RestResource.RestMethod Consultingwerk.OERA.SmartUiAction Consultingwerk.OERA.ValidateDataContext Consultingwerk.OERA.ValidationMessages.ValidationMessage Consultingwerk.ParameterObject Consultingwerk.SmartFramework.Authentication.FetchUserProfileParameter Consultingwerk.SmartFramework.Authentication.PutSmartUserProfileParameter Consultingwerk.SmartFramework.Authentication.SaveUserProfileParameter Consultingwerk.SmartFramework.Authentication.StoreGridViewParameter Consultingwerk.SmartFramework.Authentication.UserProfileKeyParameter Consultingwerk.SmartFramework.Authentication.UserProfileParameter Consultingwerk.SmartFramework.Authentication.ValidatePasswordParameter Consultingwerk.SmartFramework.Repository.AnnotationBasedFormParameter Consultingwerk.Framework.JsonWebToken Consultingwerk.Framework.JsonWebTokenHeader Consultingwerk.Framework.JsonWebTokenPayload Consultingwerk.Framework.Server.Util.GetRangeSizesResponse Consultingwerk.Framework.Server.ValidateAppSeverFrameworkVersionParameter Consultingwerk.InternationalizationSettings Consultingwerk.OERA.FetchOptions Consultingwerk.BusinessEntityDesigner.Plugins.BusinessEntityBusinessTask.BusinessEntityBusinessTaskGeneratorParameter Consultingwerk.BusinessEntityDesigner.Plugins.BusinessEntityRelations.RelationDesignAttributes Consultingwerk.BusinessEntityDesigner.Plugins.CalculatedFieldInterface.CalculatedFieldsInterfaceGeneratorParameter Consultingwerk.BusinessEntityDesigner.Plugins.ValueObjectRepository.ValueObjectRepositoryGeneratorParameter Consultingwerk.BusinessEntityDesigner.Services.GenerateCodeRequest Consultingwerk.BusinessEntityDesigner.Services.GenerateCodeResponse Consultingwerk.BusinessEntityDesigner.Services.GetRelatedTablesRequest Consultingwerk.SmartFramework.Repository.GetObjectTypesResponse Consultingwerk.SmartFramework.Repository.GetRepositoryCacheTablesParameter Consultingwerk.SmartFramework.Repository.Object.CreateInstanceParameter Consultingwerk.SmartFramework.Repository.Object.GetObjectTypeAttributeDefaultValueParameter Consultingwerk.SmartFramework.Repository.Object.LinkAdvisor.LinkAdvisorParameter Consultingwerk.OERA.TempTableStatistics.TempTableSummary Consultingwerk.SmartComponents.Implementation.SmartDataBrowserSaveViewParameter Consultingwerk.SmartFramework.Authentication.BuildProfileKeyParameter Consultingwerk.SmartFramework.Authentication.CopyAuthorizationSettingsParameter Consultingwerk.Studio.LegacyCodeMigration.MethodReference Consultingwerk.Studio.Protop.ProtopDatabase Consultingwerk.SmartFramework.Tools.Export.FileNamePatternParameter Consultingwerk.SmartFramework.Web.RouteTranslationParameter Consultingwerk.SmartFramework.Workflow.LaunchWorkflowInstanceParameter Consultingwerk.Windows.Util.UltraGridView Consultingwerk.Windows.Framework.Repository.LegacyGuiMigration.Grid.GridColumn Consultingwerk.Windows.Framework.Repository.Object.AngularFormGeneratorParameter Consultingwerk.Windows.Framework.Repository.Object.Conversion.MetaViewerToStaticParameter Consultingwerk.Windows.Framework.Repository.Object.GuiMenuItemGeneratorParameter Consultingwerk.Point Consultingwerk.QueryExpression Consultingwerk.RollbaseAdapter.RollbaseCredentials Consultingwerk.RowidArrayHolder Consultingwerk.RowidHolder Consultingwerk.SessionInfo Consultingwerk.SmartComponents.Tools.OERABusinessEntityTester.BatchContext Consultingwerk.SmartFramework.Authentication.AuthenticationParameter Consultingwerk.SmartFramework.Authentication.ChangePasswordParameter Consultingwerk.Studio.ExtractClassAnnotations.ExtractClassAnnotationsParameter Consultingwerk.Studio.LegacyGuiMigration.Browse.BrowseSettings Consultingwerk.Studio.LegacyGuiMigration.Frame.ViewerSettings Consultingwerk.Studio.Proparse.SourceCodeLocationParameter Consultingwerk.Util.DatabaseStatsRangeSize.RangeSize Consultingwerk.Util.Error132Info Consultingwerk.Util.HttpStatus Consultingwerk.Util.LoggingStream.SerializableLongcharLoggingStream Consultingwerk.Web.Kendo.Data.DataSource Consultingwerk.Web.Kendo.Data.Filter Consultingwerk.Web.Kendo.Data.JsdoTransport Consultingwerk.Web.Kendo.Data.Model Consultingwerk.Web.Kendo.Data.Schema Consultingwerk.Web.Kendo.Data.Sort Consultingwerk.Web.Kendo.Data.Transport Consultingwerk.Web.Kendo.Grid.Attributes Consultingwerk.Web.Kendo.Grid.Column Consultingwerk.Web.Kendo.Grid.Editable Consultingwerk.Web.Kendo.Grid.Filterable Consultingwerk.Web.Kendo.Grid.FilterOperators Consultingwerk.Web.Kendo.Grid.FilterOperatorsDate Consultingwerk.Web.Kendo.Grid.FilterOperatorsNumber Consultingwerk.Web.Kendo.Grid.FilterOperatorsString Consultingwerk.Web.Kendo.Grid.KendoGrid Consultingwerk.Web.Kendo.Grid.Pageable Consultingwerk.Web.Kendo.JavaScriptReference Consultingwerk.Web.Kendo.Data.DataSourceJavaScriptReference Consultingwerk.Web.Kendo.Data.ErrorJavaScriptReference Consultingwerk.Web.Kendo.Data.TransportJavaScriptReference Consultingwerk.Web.KendoUiBuilder.MetaDataObject Consultingwerk.Web.KendoUiBuilder.DataProvider.DataProvider Consultingwerk.Web.KendoUiBuilder.DataProvider.DataSource Consultingwerk.Web.KendoUiBuilder.Module.DataGrid Consultingwerk.Web.KendoUiBuilder.Module.DataGridForm Consultingwerk.Web.KendoUiBuilder.Module.DataGridSeparateForm Consultingwerk.Web.KendoUiBuilder.Module.Module Consultingwerk.Web.KendoUiBuilder.Module.View Consultingwerk.Web.KendoUiBuilder.SimpleMetaDataObject Consultingwerk.Web.KendoUiBuilder.DataProvider.Field Consultingwerk.Web.KendoUiBuilder.DataProvider.Relation Consultingwerk.Web.KendoUiBuilder.DataProvider.RelationFieldPair Consultingwerk.Web.KendoUiBuilder.Module.Column Consultingwerk.Web.KendoUiBuilder.Module.CustomDataGridSections Consultingwerk.Web.KendoUiBuilder.Module.DataGridEvents Consultingwerk.Web.KendoUiBuilder.Module.Field Consultingwerk.Web.KendoUiBuilder.Module.Thumbnail Consultingwerk.Web.KendoUiBuilder.Module.ViewEvents Consultingwerk.Web2.Services.Push.JsonPushNotification Consultingwerk.Web2.SmartFramework.Language.SerializableSmartLanguage Consultingwerk.Web2.SmartFramework.Menu.LaunchWebViewCallParameter Consultingwerk.Web2.SmartFramework.Menu.SerializableMenuItem Consultingwerk.Web2.SmartFramework.Message.SerializableSmartMessage Consultingwerk.Web2.Views.SerializableLayoutElement Consultingwerk.Web2.Views.SerializableDataSourceElement Consultingwerk.Web2.Views.SerializableGridElement Consultingwerk.Web2.Views.SerializableTabElement Consultingwerk.Web2.Views.SerializableTabFolderElement Consultingwerk.Web2.Views.SerializableToolbarElement Consultingwerk.Web2.Views.SerializableViewerElement Consultingwerk.Web2.Views.SerializableToolbarGroup Consultingwerk.Web2.Views.SerializableToolbarItem Consultingwerk.SmartFramework.Scheduler.UpdateJobStatusParameter Consultingwerk.SmartFramework.System.CacheTranslationParameter Consultingwerk.SmartFramework.System.GetMessageParameter Consultingwerk.SmartFramework.System.GetMissingDatabaseRelationsParameter Consultingwerk.SmartFramework.System.GetTranslationByKeyParameter Consultingwerk.SmartFramework.System.GetTranslationByStringParameter Consultingwerk.SmartFramework.System.GetValueListEntryByKeyParameter Consultingwerk.SmartFramework.System.ImportDatabaseTablesParameter Consultingwerk.SmartFramework.System.MenuTranslationMaintenanceServiceParameter Consultingwerk.SmartFramework.System.MissingMessageParameter Consultingwerk.SmartFramework.System.SmartBusinessEntityConfiguration Consultingwerk.SmartFramework.System.SmartBusinessEntityTableConfiguration Consultingwerk.SmartFramework.Tools.ErdApi.ZamolxisField Consultingwerk.SmartFramework.Tools.ErdApi.ZamolxisIndex Consultingwerk.SmartFramework.Tools.ErdApi.ZamolxisRelation Consultingwerk.SmartUnit.OERA.RetrieveDataScenario.Scenario Consultingwerk.Windows.ListAndLabel.ReportBuffer Consultingwerk.Windows.ListAndLabel.ReportDefinition Consultingwerk.Windows.Framework.LaunchAnnotationFormCallParameter Consultingwerk.Windows.Framework.LaunchFormCallParameter Consultingwerk.Windows.Framework.Repository.DynamicLauncher.DynamicLauncherParameter Consultingwerk.Windows.Framework.Repository.Object.OpenObjectMasterDialogValues Consultingwerk.Windows.Framework.WebUriCallParameter
ABSTRACT SERIALIZABLE

File:JsonSerializable
Purpose:Implements serialization functionality i.e. for parameter
object to be passed around the AppServer boundary
Description:Serialization based on the JSON object model (OpenEdge 11.0)
Author(s):Mike Fechner / Consultingwerk Ltd.
Created:Wed Sep 15 18:25:22 CEST 2010
Notes:See comments in Consultingwerk/JsonSerializableProperty.i
for usage instructions
This class also supports XML output - which is used for
migrating SmartFramework data (e.g. menu functions) from
JSON to XML
Purpose: Gets and sets the reference to a custom JsonDateTypeFormatter
Notes: Workaround for the fact, that there is no actual standard
for date representation in Json and if may be required to provide
custom formatting based on the target system (e.g. JIRA)



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.
# AddSerializableProperties (character) Add a list of Serializable Properties to the SerializableProperties property
# CHARACTER AddSerializableProperties (Class) Adds serializable properties from the given class using ABL reflection. Supported from OpenEdge 11.6 on only.
+ Deserialize (longchar) Deserializes a LONGCHAR representation of the state of the class instance
+ DeserializeFromJsonObject (JsonObject) Initializes the object instance based on the passed in JsonObject representation of the object instance
# DeserializeProperty (JsonObject, character, character) Deserializes a single property value to the current JsonObject
+ CHARACTER GetSerializableProperties () Returns the meta data of the serializable properties
+ LONGCHAR Serialize () Returns a LONGCHAR representation of the state of the class instance
# SerializeProperty (JsonObject, character, character) Serializes a single property value to the current JsonObject
+ Progress.Json.ObjectModel.JsonObject ToJsonObject () Returns a JsonObject representation of the state of the class instance
+ LONGCHAR WriteJson () Returns a LONGCHAR representation of the state of the class instance
+ LONGCHAR WriteXml () Returns an XML LONGCHAR representation of the object instance
+ HANDLE XmlSerialize (handle) Serializes the properties of the current object instance to an existing X-NODEREF object
+ XmlSerializeProperties (handle) Serializes the properties of this object instance as child nodes of the given node
# XmlSerializeProperty (handle, character, character) Serializes a single property value to the current parent XmlNode

Top Property Summary
Options Name Purpose
+ Consultingwerk.IJsonDateTypeFormatter JsonDateTypeFormatter
- CHARACTER SerializableProperties
+ LOGICAL SerializeEmptyLists
+ LOGICAL SerializeNullValues
+ LOGICAL UseSerializedTypeInformation


Method Detail
Top

PROTECTED CHARACTER AddSerializableProperties ()

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)

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)

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)

Purpose: Deserializes a LONGCHAR representation of the state of the class instance
Notes:

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

PUBLIC DeserializeFromJsonObject (JsonObject)

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)

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 CHARACTER GetSerializableProperties ()

Purpose: Returns the meta data of the serializable properties
Notes:

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

PUBLIC LONGCHAR Serialize ()

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)

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 ()

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 LONGCHAR WriteJson ()

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 ()

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)

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)

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)

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


Property Detail
Top

PUBLIC Consultingwerk.IJsonDateTypeFormatter JsonDateTypeFormatter


Returns Consultingwerk.IJsonDateTypeFormatter
Top

PRIVATE CHARACTER SerializableProperties


Returns CHARACTER
Top

PUBLIC LOGICAL SerializeEmptyLists


Returns LOGICAL
Top

PUBLIC LOGICAL SerializeNullValues


Returns LOGICAL
Top

PUBLIC LOGICAL UseSerializedTypeInformation


Returns LOGICAL


©2006-2020 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       29.06.2022 12:41:38