Namespace: OpenEdge.Web.DataObject.Writer
Type: Class DataObjectServiceWriter
Parent Classes:
Inherits: Progress.Lang.Object
Implements: OpenEdge.Logging.ISupportLogging


/* *************************************************************************************************************************
Copyright (c) 2018, 2021 by Progress Software Corporation and/or one of its subsidiaries or affiliates. All rights reserved.
File:DataObjectServiceWriter
Purpose:Serializes a DataObjectService to an alternate format
Author(s):pjudge
Created:2018-08-30
/* A reference to the Logger in use by an implementer



Method Summary
  Options Name Purpose
  Clear () /** Clears or empties the target */
  Close () /** Closes the writer. */
  Flush () /** Flushes(writes) the input to the target */
  Progress.Json.ObjectModel.JsonObject GetCatalogSchema (SemanticVersion) /* Returns a schema for a Data Object Service Catalog @param SemanticVersion The catalog version @return JsonObject The catalog JSON-schema */
  Open () /** Opens the writer for output. Open/Close allows us to write the same message multiple times without requiring a new writer each time. */
  Write (Object) /* Writes an object array into the Value. @param Progress.Lang.Object An object to write. It will typically be in the OpenEdge.Web.DataObject package and be part of a DataObjectService */
  Write (Object[]) /* Writes an object array into the Value. @param Progress.Lang.Object[] A set of objects to write. They will typically be in the OpenEdge.Web.DataObject package and be part of a DataObjectService */
  WriteDOS (DataObjectService) /* Writes a single Data Object Service @param DataObjectService The service to write */
  WriteOperation (DataObjectService, MappedOperation) /* Writes a single MappedOperation @param DataObjectService The parent DOService @param MappedOperation The service operation to write */
  WriteSchema (DataObjectService, handle) /* Writes a single schema @param DataObjectService The parent DOService @param handle The service schema to write */
  WriteService (DataObjectService) /* Writes a single Data Object Service @param DataObjectService The service to write */
  WriteTuple (Object, Object) /* Writes a tuple (key-value pair). This is effectively a VIRTUAL method (no default behaviour but not compiled enforcement either). @param Progress.Lang.Object The key value - property name (required) @param Progress.Lang.Object A value to be written for the property. May be null. */
  WriteURI (URI) /* Writes a URI to the output. This is effectively a VIRTUAL method (no default behaviour but not compiled enforcement either). @param URI The URI to write */

Constructor Summary
  Options Name Purpose
  DataObjectServiceWriter (Class) /** Constructor. @param Class The type of the entity - pseudo-generics here. */
  DataObjectServiceWriter (Class, Object) /** Constructor. @param Class The type of the entity - pseudo-generics here. @param Object The 'real' entity being written */
  DataObjectServiceWriter (Object) /** Constructor. @param Object The target object to write to */

Property Summary
  Options Name Purpose
  OpenEdge.Logging.ILogWriter Logger
  Progress.Lang.Object Value
  Progress.Lang.Class ValueType


Method Detail
Top

Clear ()

Purpose: Clears or empties the target
Top

Close ()

Purpose: Closes the writer.
Top

Flush ()

Purpose: Flushes(writes) the input to the target
Top

Progress.Json.ObjectModel.JsonObject GetCatalogSchema (SemanticVersion)

/* Returns a schema for a Data Object Service Catalog
Parameters:
pVersion OpenEdge.Core.SemanticVersion
 
Returns Progress.Json.ObjectModel.JsonObject
  JsonObject The catalog JSON-schema
Top

Open ()

Purpose: Opens the writer for output. Open/Close allows us to write the same message multiple
times without requiring a new writer each time.
Top

Write (Object)

/* Writes an object array into the Value.
be in the OpenEdge.Web.DataObject package and be part of
a DataObjectService
Parameters:
pData Progress.Lang.Object
 
Top

Write (Object[])

/* Writes an object array into the Value.
be in the OpenEdge.Web.DataObject package and be part of
a DataObjectService
Parameters:
pData Progress.Lang.Object
 
Top

WriteDOS (DataObjectService)

/* Writes a single Data Object Service
Parameters:
pData OpenEdge.Web.DataObject.DataObjectService
 
Top

WriteOperation (DataObjectService, MappedOperation)

/* Writes a single MappedOperation
Parameters:
pSvc OpenEdge.Web.DataObject.DataObjectService
 
pData OpenEdge.Web.DataObject.MappedOperation
 
Top

WriteSchema (DataObjectService, handle)

/* Writes a single schema
Parameters:
pSvc OpenEdge.Web.DataObject.DataObjectService
 
pData HANDLE
 
Top

WriteService (DataObjectService)

/* Writes a single Data Object Service
Parameters:
pData OpenEdge.Web.DataObject.DataObjectService
 
Top

WriteTuple (Object, Object)

/* Writes a tuple (key-value pair).
This is effectively a VIRTUAL method (no default behaviour but not compiled enforcement either).
Parameters:
pKey Progress.Lang.Object
 
pValue Progress.Lang.Object
 
Top

WriteURI (URI)

/* Writes a URI to the output. This is effectively a VIRTUAL method (no default behaviour
but not compiled enforcement either).
Parameters:
pData OpenEdge.Net.URI
 


Constructor Detail
Top

DataObjectServiceWriter (Class)

Purpose: Constructor.
Parameters:
poType Progress.Lang.Class
 
Top

DataObjectServiceWriter (Class, Object)

Purpose: Constructor.
Parameters:
poType Progress.Lang.Class
 
poValue Progress.Lang.Object
 
Top

DataObjectServiceWriter (Object)

Purpose: Constructor.
Parameters:
pValue Progress.Lang.Object
 


Property Detail
Top

OpenEdge.Logging.ILogWriter Logger

Returns OpenEdge.Logging.ILogWriter
 
Top

Progress.Lang.Object Value

Returns Progress.Lang.Object
 
Top

Progress.Lang.Class ValueType

Returns Progress.Lang.Class