Top Method Summary
Options Name Purpose
CollectReferencedDatasets (character, SerializableAnnotation) Collects the dataset and parameter names referenced by the request= and response= options of the given @RestMethod annotation
Consultingwerk.Framework.Collections.CharacterList GetWarnings () Returns the list of warnings reported by the sanity checks
LOGICAL HasDatasetParameter (ListMethod, character) Returns a logical value indicating if any of the given methods has a DATASET or DATASET-HANDLE parameter with the given name
LOGICAL HasParameterNamed (ListMethod, character) Returns a logical value indicating if any of the given methods has a parameter (of any data type) with the given name
LOGICAL MethodHasDatasetParameter (Method, character) Returns a logical value indicating if the given method has a DATASET or DATASET-HANDLE parameter with the given name
LOGICAL MethodHasParameterNamed (Method, character) Returns a logical value indicating if the given method has a parameter (of any data type) with the given name
ReportWarning (character) Reports a sanity check warning
ValidateAnnotations (Class) Performs sanity checks on the .annotations file of the given class and reports issues as warnings to the AppServer logfile
ValidateMethodAnnotations (Class, ClassAnnotationContainer) Validates the method annotations of the given class
ValidateParameterSchema (character, character, SerializableAnnotation) Validates a single @ParameterSchema annotation

Top Constructor Summary
Options Name Purpose
RestAnnotationsValidator () Constructor for the RestAnnotationsValidator class


Method Detail
Top

CollectReferencedDatasets (character, SerializableAnnotation)

Purpose: Collects the dataset and parameter names referenced by the
request= and response= options of the given @RestMethod
annotation
Notes: The "parameter" and "return" entries and class references
(entries containing a dot) are skipped; table and modifier
suffixes (e.g. dsOrder:no-envelope) are stripped

Parameters:
pcMethodName CHARACTER
The name of the method the annotation belongs to
poAnnotation Consultingwerk.Framework.TypeDescriptor.SerializableAnnotation
The SerializableAnnotation with the @RestMethod annotation
Top

Consultingwerk.Framework.Collections.CharacterList GetWarnings ()

Purpose: Returns the list of warnings reported by the sanity checks
Notes: Allows callers (e.g. unit tests) to programmatically evaluate
the issues found by the validation in addition to the
warnings written to the logfile

Returns Consultingwerk.Framework.Collections.CharacterList
The CharacterList with the reported warning messages
Top

LOGICAL HasDatasetParameter (ListMethod, character)

Purpose: Returns a logical value indicating if any of the given methods
has a DATASET or DATASET-HANDLE parameter with the given name
Notes: All methods in the list are considered, as the entries in the
.annotations file do not distinguish between method overloads

Parameters:
poMethods Consultingwerk.ListMethod
The ListMethod with the method overloads to check
pcParameterName CHARACTER
The name of the dataset parameter to look for
Returns LOGICAL
Logical value indicating if any of the methods has a matching DATASET parameter
Top

LOGICAL HasParameterNamed (ListMethod, character)

Purpose: Returns a logical value indicating if any of the given methods
has a parameter (of any data type) with the given name
Notes: All methods in the list are considered, as the entries in the
.annotations file do not distinguish between method overloads

Parameters:
poMethods Consultingwerk.ListMethod
The ListMethod with the method overloads to check
pcParameterName CHARACTER
The name of the parameter to look for
Returns LOGICAL
Logical value indicating if any of the methods has a matching parameter
Top

LOGICAL MethodHasDatasetParameter (Method, character)

Purpose: Returns a logical value indicating if the given method has a
DATASET or DATASET-HANDLE parameter with the given name
Notes:

Parameters:
poMethod Progress.Reflect.Method
The Progress.Reflect.Method to check
pcParameterName CHARACTER
The name of the dataset parameter to look for
Returns LOGICAL
Logical value indicating if the method has a matching DATASET parameter
Top

LOGICAL MethodHasParameterNamed (Method, character)

Purpose: Returns a logical value indicating if the given method has a
parameter (of any data type) with the given name
Notes:

Parameters:
poMethod Progress.Reflect.Method
The Progress.Reflect.Method to check
pcParameterName CHARACTER
The name of the parameter to look for
Returns LOGICAL
Logical value indicating if the method has a matching parameter
Top

ReportWarning (character)

Purpose: Reports a sanity check warning
Notes: Writes the warning to the logfile and adds it to the list of
warnings returned by GetWarnings

Parameters:
pcMessage CHARACTER
The warning message to report
Top

ValidateAnnotations (Class)

Purpose: Performs sanity checks on the .annotations file of the given
class and reports issues as warnings to the AppServer logfile
Notes: Every class is validated only once per session. Errors during
validation are logged and not raised to the caller, so that
the initialization of the REST resources is never interrupted
by the sanity checks

Parameters:
poClass Progress.Lang.Class
The reference to the class to validate the annotations for
Top

ValidateMethodAnnotations (Class, ClassAnnotationContainer)

Purpose: Validates the method annotations of the given class
Notes: Aggregates the annotations per method name, as the same method
may be referenced by multiple entries in the .annotations file
(one entry per annotation block in the source code)

Parameters:
poClass Progress.Lang.Class
The reference to the class to validate the annotations for
poAnnotations Consultingwerk.Framework.TypeDescriptor.ClassAnnotationContainer
The ClassAnnotationContainer with the annotations of the class
Top

ValidateParameterSchema (character, character, SerializableAnnotation)

Purpose: Validates a single @ParameterSchema annotation
Notes: Verifies that the referenced XSD file exists and that the
dataset name in the annotation matches the dataset name in
the XSD file. Every datasetname/schemafile combination is
only validated once per session

Parameters:
pcClassName CHARACTER
The name of the class the annotation belongs to
pcMethodName CHARACTER
The name of the method the annotation belongs to
poAnnotation Consultingwerk.Framework.TypeDescriptor.SerializableAnnotation
The SerializableAnnotation with the @ParameterSchema annotation


Constructor Detail
Top

RestAnnotationsValidator ()

Purpose: Constructor for the RestAnnotationsValidator class
Notes:



©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       20.07.2026 16:03:45