Namespace: Consultingwerk
Class 
XmlSerializable Copy to Clipboard
Parent classes:
Inherits: Progress.Lang.Object
Implements: Consultingwerk.ISerializable
Inherited by: Consultingwerk.Studio.ExtractClassAnnotations.ExtractClassAnnotationsParameter, Consultingwerk.Studio.LegacyGuiMigration.Frame.ViewerSettings, Consultingwerk.Util.Error132Info, Consultingwerk.Util.HttpStatus, Consultingwerk.Windows.Framework.LaunchFormCallParameter, Consultingwerk.OERA.FetchDataRequest, Consultingwerk.OERA.FetchDataAccessRequest, Consultingwerk.OERA.CountRecordsRequest, Consultingwerk.OERA.FilterParameter, Consultingwerk.OERA.NamedQueryParameter, Consultingwerk.OERA.NamedQueryParameterEntry, Consultingwerk.OERA.ValidateDataContext, Consultingwerk.Point, Consultingwerk.QueryExpression, Consultingwerk.SessionInfo, Consultingwerk.BufferFieldName, Consultingwerk.BusinessEntityDesigner.Generator.Generated, Consultingwerk.BusinessEntityDesigner.Generator.TelerikMobile.Column, Consultingwerk.BusinessEntityDesigner.Generator.Viewer.ControlGeneratorFactoryParameter, Consultingwerk.BusinessEntityDesigner.Generator.Viewer.ViewerFieldSpec, Consultingwerk.DateTimeHolder, Consultingwerk.CanDoQueryExpression, Consultingwerk.CharacterHolder, Consultingwerk.Util.MessageSubSystem, Consultingwerk.SmartFramework.Authorization.SecurityRealmParameter, Consultingwerk.ClassName, Consultingwerk.DateFormat, Consultingwerk.DateHolder, Consultingwerk.SmartFramework.Authentication.AuthenticationParameter, Consultingwerk.SmartFramework.Authentication.ChangePasswordParameter, Consultingwerk.SmartFramework.Authentication.GetUserGroupAssignmentsParameter, Consultingwerk.SmartFramework.Authorization.AuthorizationMaintenanceServiceParameter, Consultingwerk.SmartFramework.Authorization.GetGroupRestrictedDefaultLevelParameter, Consultingwerk.SmartFramework.Authorization.GetParentGroupsParameter, Consultingwerk.SmartFramework.Authorization.GetUserRestrictedDefaultLevelParameter, Consultingwerk.SmartFramework.Authorization.IsRestrictedCheckParameter, Consultingwerk.SmartFramework.Authorization.IsRestrictedParameter, Consultingwerk.SmartFramework.Authorization.SecurityRealmLookupParameter, Consultingwerk.DateTimeTzHolder, Consultingwerk.DecimalHolder, Consultingwerk.Framework.MessageInteraction.Question, Consultingwerk.Framework.RepositoryServices.SmartBusinessEntityLookupDescriptor, Consultingwerk.Framework.SmtpConfiguration, Consultingwerk.Framework.TypeDescriptor.ClassAnnotationContainer, Consultingwerk.Framework.TypeDescriptor.PropertyDescriptor, Consultingwerk.Framework.TypeDescriptor.SerializableAnnotation, Consultingwerk.Framework.TypeDescriptor.SerializableClassMemberAnnotation, Consultingwerk.Framework.TypeDescriptor.TypeDescriptor, Consultingwerk.InQueryExpression, Consultingwerk.Int64Holder, Consultingwerk.IntegerHolder, Consultingwerk.LogicalHolder, Consultingwerk.NameValuePair, Consultingwerk.NumericFormat, 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.DataSourceQueryInfo, Consultingwerk.SmartFramework.Scheduler.SetJobStatusParameter, Consultingwerk.SmartFramework.Scheduler.ShellCommandSchedulerJobCommand, 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.SmartBusinessEntityConfiguration, Consultingwerk.SmartFramework.System.SmartBusinessEntityTableConfiguration, Consultingwerk.SmartUnit.TestRunner.TestResult, Consultingwerk.SmartUnit.TestSuite, Consultingwerk.Windows.Framework.WebUriCallParameter, Consultingwerk.SmartFramework.GetDatabaseNamesResult, Consultingwerk.SmartFramework.GetMenuStructureParameter, Consultingwerk.SmartFramework.InvokeServiceMethodCallParameter, Consultingwerk.SmartFramework.InvokeStaticMethodCallParameter, Consultingwerk.SmartFramework.Message, Consultingwerk.SmartFramework.Repository.Class.ClassIsAParameter, Consultingwerk.SmartFramework.Repository.Class.GetObjectTypeDesignAttributeParameter, Consultingwerk.SmartFramework.Repository.Class.GetObjectTypeDesignAttributesParameter, Consultingwerk.SmartFramework.Repository.Class.GetParentClassesParameter, Consultingwerk.SmartFramework.Repository.Class.StoreObjectTypeDesignAttributeParameter, Consultingwerk.SmartFramework.Repository.Object.ObjectIsAParameter, Consultingwerk.SmartFramework.RunProcedureCallParameter, Consultingwerk.SmartFramework.Scheduler.BusinessTaskSchedulerJobCommand, Consultingwerk.SmartFramework.Scheduler.GetBusinessTaskMethodsParameter, Consultingwerk.SmartFramework.Scheduler.GetNextAvailableJobStatusParameter, Consultingwerk.SmartFramework.Scheduler.ProcedureParameterObject, Consultingwerk.SmartFramework.Scheduler.ProcedureSchedulerJobCommand, Consultingwerk.SmartFramework.Scheduler.ScheduleJobResponse
ABSTRACT

File:XmlSerializable
Purpose:Implements serialization functionality i.e. for parameter
object to be passed around the AppServer boundary
Author(s):Mike Fechner / Consultingwerk Ltd.
Created:Mon Feb 11 13:52:21 CET 2013
Notes:This is a more lightweight XML serializaion as the
Consultingwerk.Serializable and it's also supposed to
provide compatibility with the .NET XML serializer



Top Method Summary
Options Name Purpose
# AddSerializableProperties (character) Add a list of Serializable Properties to the SerializableProperties property
+ Deserialize (longchar) Initializes the object instance based on the passed in LONGCHAR representation of the object instance
+ DeserializeFromNode (handle) Deserializes the object instance based on the passed in X-NODEREF instance
# DeserializeProperty (handle, character, character) Deserializes a single property value to the current Object
# CHARACTER GetCharacterProperty (character) Returns a value from a CHARACTER property in the property store
# DATE GetDateProperty (character) Returns a value from a DATE property in the property store
# DATETIME-TZ GetDateTime-TZProperty (character) Returns a value from a DATETIME-TZ property in the property store
# DATETIME GetDateTimeProperty (character) Returns a value from a DATETIME property in the property store
# DECIMAL GetDecimalProperty (character) Returns a value from a DECIMAL property in the property store
# INT64 GetInt64Property (character) Returns a value from a INTEGER property in the property store
# INTEGER GetIntegerProperty (character) Returns a value from a INTEGER property in the property store
# LOGICAL GetLogicalProperty (character) Returns a value from a INTEGER property in the property store
# LONGCHAR GetLongCharProperty (character) Returns a value from a LONGCHAR property in the property store
# Progress.Lang.Object GetObjectProperty (character) Returns a value from a Progress.Lang.Object property in the property store
# RAW GetRawProperty (character) Returns a value from a RAW property in the property store
# CHARACTER PropertyType (character) Returns the type of a property
+ LONGCHAR Serialize () Returns an LONGCHAR representation of the object instance
+ HANDLE Serialize (handle) Serializes the properties of the current object instance to an existing X-NODEREF object
+ SerializeProperties (handle) Serializes the properties of this object instance as child nodes of the given node
# SerializeProperty (handle, character, character) Serializes a single property value to the current parent XmlNode
# SetCharacterProperty (character, character) Assigns a CHARACTER property in the property store
# SetDateProperty (character, date) Assigns a DATE property in the property store
# SetDateTime-TZProperty (character, datetime-tz) Assigns a DATETIME-TZ property in the property store
# SetDateTimeProperty (character, datetime) Assigns a DATETIME property in the property store
# SetDecimalProperty (character, decimal) Assigns a DECIMAL property in the property store
# SetInt64Property (character, int64) Assigns a INTEGER property in the property store
# SetIntegerProperty (character, integer) Assigns a INTEGER property in the property store
# SetLogicalProperty (character, logical) Assigns a LOGICAL property in the property store
# SetLongcharProperty (character, longchar) Assigns a LOGICAL property in the property store
# SetObjectProperty (character, Object) Assigns a Progress.Lang.Object property in the property store
# SetRawProperty (character, raw) Assigns a RAW property in the property store
+ LONGCHAR WriteXml () Returns an LONGCHAR representation of the object instance

Top Property Summary
Options Name Purpose
- CHARACTER SerializableProperties Gets and sets the list of Serializable Properties
+ LOGICAL SerializeEmptyLists Gets and sets if during serialization empty lists (properties of type Consultingwerk.Framework.Base.IEnumerable) that do not contain any elements, will be serialized
+ LOGICAL SerializeNullValues Gets and sets if Null-Values should be serialized
+ LOGICAL UseSerializedTypeInformation Determines if the Serialization Routine will read and write the SerializedType attribute


Method Detail
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

PUBLIC Deserialize (longchar)

Purpose: Initializes the object instance based on the passed in LONGCHAR
representation of the object instance
Notes:

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

PUBLIC DeserializeFromNode (handle)

Purpose: Deserializes the object instance based on the passed in X-NODEREF
instance
Notes:

Parameters:
phRootNode HANDLE
The root node with the properties for this object
Top

PROTECTED DeserializeProperty (handle, character, character)

Purpose: Deserializes a single property value to the current Object
Notes: Allows to override the handling of individual properties during the
XmlSerialization
Notes:

Parameters:
phPropertyNode HANDLE
reference to the source XML Node
pcProperty CHARACTER
The name of the property
pcType CHARACTER
The type of the property
Top

PROTECTED CHARACTER GetCharacterProperty (character)

Purpose: Returns a value from a CHARACTER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns CHARACTER
The property value
Top

PROTECTED DATE GetDateProperty (character)

Purpose: Returns a value from a DATE property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns DATE
The property value
Top

PROTECTED DATETIME-TZ GetDateTime-TZProperty (character)

Purpose: Returns a value from a DATETIME-TZ property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns DATETIME-TZ
The property value
Top

PROTECTED DATETIME GetDateTimeProperty (character)

Purpose: Returns a value from a DATETIME property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns DATETIME
The property value
Top

PROTECTED DECIMAL GetDecimalProperty (character)

Purpose: Returns a value from a DECIMAL property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns DECIMAL
The property value
Top

PROTECTED INT64 GetInt64Property (character)

Purpose: Returns a value from a INTEGER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns INT64
The property value
Top

PROTECTED INTEGER GetIntegerProperty (character)

Purpose: Returns a value from a INTEGER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns INTEGER
The property value
Top

PROTECTED LOGICAL GetLogicalProperty (character)

Purpose: Returns a value from a INTEGER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns LOGICAL
The property value
Top

PROTECTED LONGCHAR GetLongCharProperty (character)

Purpose: Returns a value from a LONGCHAR property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns LONGCHAR
The property value
Top

PROTECTED Progress.Lang.Object GetObjectProperty (character)

Purpose: Returns a value from a Progress.Lang.Object property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns Progress.Lang.Object
The property value (object reference)
Top

PROTECTED RAW GetRawProperty (character)

Purpose: Returns a value from a RAW property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
Returns RAW
The property value
Top

PROTECTED CHARACTER PropertyType (character)

Purpose: Returns the type of a property
Notes: Throws an error, when the property is unknown

Parameters:
pcProperty CHARACTER
The name of the property
Returns CHARACTER
The type of the property
Top

PUBLIC LONGCHAR Serialize ()

Purpose: Returns an LONGCHAR representation of the object instance
Notes:

Returns LONGCHAR
The LONGCHAR representation of the ISerializable objects data
Top

PUBLIC HANDLE Serialize (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 SerializeProperties (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 SerializeProperty (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
Top

PROTECTED SetCharacterProperty (character, character)

Purpose: Assigns a CHARACTER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
pcValue CHARACTER
The value of the objects property
Top

PROTECTED SetDateProperty (character, date)

Purpose: Assigns a DATE property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
pdaValue DATE
The value of the objects property
Top

PROTECTED SetDateTime-TZProperty (character, datetime-tz)

Purpose: Assigns a DATETIME-TZ property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
pdtValue DATETIME-TZ
The value of the objects property
Top

PROTECTED SetDateTimeProperty (character, datetime)

Purpose: Assigns a DATETIME property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
pdtValue DATETIME
The value of the objects property
Top

PROTECTED SetDecimalProperty (character, decimal)

Purpose: Assigns a DECIMAL property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
pdeValue DECIMAL
The value of the objects property
Top

PROTECTED SetInt64Property (character, int64)

Purpose: Assigns a INTEGER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
piValue INT64
The value of the objects property
Top

PROTECTED SetIntegerProperty (character, integer)

Purpose: Assigns a INTEGER property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
piValue INTEGER
The value of the objects property
Top

PROTECTED SetLogicalProperty (character, logical)

Purpose: Assigns a LOGICAL property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
plValue LOGICAL
The value of the objects property
Top

PROTECTED SetLongcharProperty (character, longchar)

Purpose: Assigns a LOGICAL property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
plcValue LONGCHAR
The value of the objects property
Top

PROTECTED SetObjectProperty (character, Object)

Purpose: Assigns a Progress.Lang.Object property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
poValue Progress.Lang.Object
The object reference as the value of the objects property
Top

PROTECTED SetRawProperty (character, raw)

Purpose: Assigns a RAW property in the property store
Notes:

Parameters:
pcPropertyName CHARACTER
The name of the objects property
prValue RAW
The value of the objects property
Top

PUBLIC LONGCHAR WriteXml ()

Purpose: Returns an LONGCHAR representation of the object instance
Notes: This method is a facade to the XmlSerializable:Serialize method

Returns LONGCHAR
The LONGCHAR representation of the ISerializable objects data


Property Detail
Top

PRIVATE CHARACTER SerializableProperties

Purpose: Gets and sets the list of Serializable Properties
Notes: Required as a workaround to full reflection only. We *may* remove this
property once Progress Software has implemented full reflection
You are not supposed to use the SerializableProperties
for other purposes than using it in the JsonSerializable
base class - as we may be changing the format of this
property without warning.

Returns CHARACTER
Top

PUBLIC LOGICAL SerializeEmptyLists

Purpose: Gets and sets if during serialization empty lists (properties of type
Consultingwerk.Framework.Base.IEnumerable) that do not contain any
elements, will be serialized
Notes: Setting this to TRUE allows to restore the previous behaviour on
a case by case value

Returns LOGICAL
Top

PUBLIC LOGICAL SerializeNullValues

Purpose: Gets and sets if Null-Values should be serialized
Notes:

Returns LOGICAL
Top

PUBLIC LOGICAL UseSerializedTypeInformation

Purpose: Determines if the Serialization Routine will read and write the
SerializedType attribute
Notes:

Returns LOGICAL


©2006-2016 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       26.08.2016 08:55:04