Top Method Summary
Options Name Purpose
AddLoadedService (Class, Object, character, logical) Registers a service loaded from a service definition file in the service container
Consultingwerk.Framework.IKeyedServiceContainer GetKeyedServiceContainer () Returns the service container of this ServiceLoader through the IKeyedServiceContainer interface
Progress.Lang.Object GetLoadedService (Class, character) Returns the service registered for the given service type and Service Key from the service container
Load (character) Loads and registers services from a service definition file (XML or JSON)
Load (character, logical) Loads and registers services from a service definition file (XML or JSON)
Load (character[]) Loads and registers services from an array of service definition files (XML and/or JSON)
Load (character[], logical) Loads and registers services from an array of service definition files (XML and/or JSON)
Load (handle) Loads and registers services from a temp-table
Load (handle, logical) Loads and registers services from a temp-table
Load (table) Loads services defined in the temp-table ttServiceLoader
Load (table, logical) Loads services defined in the temp-table ttServiceLoader
LoadFromFile (character) Loads and registers services from a service definition file (XML or JSON)
LoadFromFile (character, logical) Loads and registers services from a service definition file (XML or JSON)
LoadFromFiles (character) Loads and registers services from a list of service definition file names (XML and/or JSON)
LoadFromFiles (character, logical) Loads and registers services from a list of service definition file names (XML and/or JSON)
LoadFromFiles (character[]) Loads and registers services from an array of service definition files (XML and/or JSON)
OnLoadingService (LoadingServiceEventArgs) Raises the LoadingService
ReadServiceDefinitionFile (handle, character) Reads a service definition file into the given temp-table
ReadServiceDefinitionJsonFile (handle, character) Reads a JSON service definition file into the given temp-table
RemoveLoadedService (Class, character) Removes a service loaded from a service definition file from the service container
Unload (character) Unloads (removes) services based on a service definition file (XML or JSON)
Unload (character, logical) Unloads (removes) services based on a service definition file (XML or JSON)
Unload (handle) Unloads (removes) services based on a temp-table
Unload (handle, logical) Unloads (removes) services based on a temp-table
UnloadFromFile (character) Unloads (removes) services based on a service definition file (XML or JSON)
UnloadFromFile (character, logical) Unloads (removes) services based on a service definition file (XML or JSON)

Top Constructor Summary
Options Name Purpose
ServiceLoader () Constructor for the ServiceLoader class
ServiceLoader (IServiceContainer) Constructor for the ServiceLoader class

Top Event Summary
Options Name Purpose
LoadingService (LoadingServiceEventArgs) Raised when a Service Loader instance loads a Service

Top Property Summary
Options Name Purpose
Consultingwerk.Framework.IServiceContainer ServiceContainer


Method Detail
Top

AddLoadedService (Class, Object, character, logical)

Purpose: Registers a service loaded from a service definition file in the
service container
Notes: Service definitions without a Service Key are registered through
the plain IServiceContainer interface, so that a custom service
container without Service Key support keeps working for every
service definition file that does not use Service Keys (SCL-5704)

Parameters:
poClass Progress.Lang.Class
The service type (Interface) to register the service for
poObject Progress.Lang.Object
The service instance (or the IServiceCreator for lazy loading services) to register
pcServiceKey CHARACTER
The Service Key to register the service with, "" to register the service without a Service Key
plDefault LOGICAL
Logical value indicating if the keyed service is the default service of the service type
Top

Consultingwerk.Framework.IKeyedServiceContainer GetKeyedServiceContainer ()

Purpose: Returns the service container of this ServiceLoader through the
IKeyedServiceContainer interface
Notes: Raises a NotSupportedException when the service container does
not support Service Keys (SCL-5704)

Returns Consultingwerk.Framework.IKeyedServiceContainer
The reference to the service container of this ServiceLoader
Top

Progress.Lang.Object GetLoadedService (Class, character)

Purpose: Returns the service registered for the given service type and
Service Key from the service container
Notes: Used for the duplicate check of the IgnoreDuplicates option
(SCL-5704)

Parameters:
poClass Progress.Lang.Class
The service type (Interface) to return the service for
pcServiceKey CHARACTER
The Service Key of the service to return, "" for the service registered without a Service Key
Returns Progress.Lang.Object
The reference to the registered service or ? when the service is not registered
Top

Load (character)

Purpose: Loads and registers services from a service definition file (XML or JSON)
Notes: Does not ignore duplicates (will error on duplicates)

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
Top

Load (character, logical)

Purpose: Loads and registers services from a service definition file (XML or JSON)
Notes:

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
plIgnoreDuplicates LOGICAL
Logical flag indicating if duplicates (by service interface) will be ignored
Top

Load (character[])

Purpose: Loads and registers services from an array of service definition files (XML and/or JSON)
Notes: Merges the data from all provided service definition files
(XML and/or JSON), later entries (service definition files)
may override settings of earlier entries
Does not ignore duplicates (will error on duplicates) - in
case services are already loaded

Parameters:
pcFileNames CHARACTER
An array of service definition files (XML and/or JSON) containing multiple service definitions
Top

Load (character[], logical)

Purpose: Loads and registers services from an array of service definition files (XML and/or JSON)
Notes: Merges the data from all provided service definition files
(XML and/or JSON), later entries (service definition files)
may override settings of earlier entries
Does not ignore duplicates (will error on duplicates) - in
case services are already loaded

Parameters:
pcFileNames CHARACTER
An array of service definition files (XML and/or JSON) containing multiple service definitions
plIgnoreDuplicates LOGICAL
Logical flag indicating if duplicates (by service interface) will be ignored
Top

Load (handle)

Purpose: Loads and registers services from a temp-table
Notes: Does not ignore duplicates (will error on duplicates)

Parameters:
phTableHandle HANDLE
The handle to a temp-table containing the service definitions
Top

Load (handle, logical)

Purpose: Loads and registers services from a temp-table
Notes:

Parameters:
phTableHandle HANDLE
The handle to a temp-table containing the service definitions
plIgnoreDuplicates LOGICAL
Logical flag indicating if duplicates (by service interface) will be ignored
Top

Load (table)

Purpose: Loads services defined in the temp-table ttServiceLoader
Notes:

Parameters:
ttServiceLoader_static TEMP-TABLE ttServiceLoader_static
Temp-Table from Consultingwerk/Framework/ttServiceLoader.i
Top

Load (table, logical)

Purpose: Loads services defined in the temp-table ttServiceLoader
Notes:

Parameters:
ttServiceLoader_static TEMP-TABLE ttServiceLoader_static
Temp-Table from Consultingwerk/Framework/ttServiceLoader.i
plIgnoreDuplicates LOGICAL
Logical flag indicating if duplicates (by service interface) will be ignored
Top

LoadFromFile (character)

Purpose: Loads and registers services from a service definition file (XML or JSON)
Notes: Does not ignore duplicates (will error on duplicates)

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
Top

LoadFromFile (character, logical)

Purpose: Loads and registers services from a service definition file (XML or JSON)
Notes:

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
plIgnoreDuplicates LOGICAL
Logical flag indicating if duplicates (by service interface) will be ignored
Top

LoadFromFiles (character)

Purpose: Loads and registers services from a list of service definition file names (XML and/or JSON)
Notes: Merges the data from all provided service definition files
(XML and/or JSON), later entries (service definition files)
may override settings of earlier entries
Does not ignore duplicates (will error on duplicates) - in
case services are already loaded

Parameters:
pcFileNames CHARACTER
An array of service definition files (XML and/or JSON) containing the service definitions
Top

LoadFromFiles (character, logical)

Purpose: Loads and registers services from a list of service definition file names (XML and/or JSON)
Notes: Merges the data from all provided service definition files
(XML and/or JSON), later entries (service definition files)
may override settings of earlier entries
Does not ignore duplicates (will error on duplicates) - in
case services are already loaded

Parameters:
pcFileNames CHARACTER
A comma delimited list of service definition file names (XML and/or JSON) containing the service definitions
plIgnoreDuplicates LOGICAL
Logical flag indicating if duplicates (by service interface) will be ignored
Top

LoadFromFiles (character[])

Purpose: Loads and registers services from an array of service definition files (XML and/or JSON)
Notes: Merges the data from all provided service definition files
(XML and/or JSON), later entries (service definition files)
may override settings of earlier entries
Does not ignore duplicates (will error on duplicates) - in
case services are already loaded

Parameters:
pcFileNames CHARACTER
An array of service definition files (XML and/or JSON) containing the service definitions
Top

OnLoadingService (LoadingServiceEventArgs)

Purpose: Raises the LoadingService
Notes:

Parameters:
e Consultingwerk.Framework.LoadingServiceEventArgs
The LoadingServiceEventArgs with the data for the event
Top

ReadServiceDefinitionFile (handle, character)

Purpose: Reads a service definition file into the given temp-table
Notes: Service definition files with a .json file extension are parsed
as JSON documents, files with any other extension are read as
XML documents

Parameters:
phTempTable HANDLE
The handle of the temp-table to read the service definitions into
pcFileName CHARACTER
The name of the service definition file to read
Top

ReadServiceDefinitionJsonFile (handle, character)

Purpose: Reads a JSON service definition file into the given temp-table
Notes: The JSON document must contain an array of service definition
objects, supporting the same properties as the XML
representation (Order, ServiceTypeName, ServiceClassName,
Disabled, RequiredDatabases, LazyLoading, ServiceKey,
DefaultService).
The ServiceTypeName property may contain a comma-delimited list
of interface/class names in a single string value or a JSON
array of interface/class names

Parameters:
phTempTable HANDLE
The handle of the temp-table to read the service definitions into
pcFileName CHARACTER
The name of the JSON service definition file to read
Top

RemoveLoadedService (Class, character)

Purpose: Removes a service loaded from a service definition file from the
service container
Notes: Service definitions without a Service Key are removed through the
plain IServiceContainer interface, so that a custom service
container without Service Key support keeps working for every
service definition file that does not use Service Keys (SCL-5704)

Parameters:
poClass Progress.Lang.Class
The service type (Interface) to remove the service for
pcServiceKey CHARACTER
The Service Key of the service to remove, "" for the service registered without a Service Key
Top

Unload (character)

Purpose: Unloads (removes) services based on a service definition file (XML or JSON)
Notes: Does not force the deletion of the service instance

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
Top

Unload (character, logical)

Purpose: Unloads (removes) services based on a service definition file (XML or JSON)
Notes:

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
plForceDelete LOGICAL
Logical flag indicating if we should force the deletion of the instance
Top

Unload (handle)

Purpose: Unloads (removes) services based on a temp-table
Notes: Does not force the deletion of the service instance

Parameters:
phTableHandle HANDLE
The handle to a temp-table containing the service definitions
Top

Unload (handle, logical)

Purpose: Unloads (removes) services based on a temp-table
Notes:

Parameters:
phTableHandle HANDLE
The handle to a temp-table containing the service definitions
plForceDelete LOGICAL
Logical flag indicating if we should force the deletion of the instance
Top

UnloadFromFile (character)

Purpose: Unloads (removes) services based on a service definition file (XML or JSON)
Notes: Does not force the deletion of the service instance

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
Top

UnloadFromFile (character, logical)

Purpose: Unloads (removes) services based on a service definition file (XML or JSON)
Notes:

Parameters:
pcFileName CHARACTER
A service definition file (XML or JSON) containing the service definitions
plForceDelete LOGICAL
Logical flag indicating if we should force the deletion of the instance


Constructor Detail
Top

ServiceLoader ()

Purpose: Constructor for the ServiceLoader class
Notes: Uses FrameworkSettings:ServiceContainer as the default ServiceContainer

Top

ServiceLoader (IServiceContainer)

Purpose: Constructor for the ServiceLoader class
Notes:

Parameters:
poServiceContainer Consultingwerk.Framework.IServiceContainer
The ServiceContainer to work with


Event Detail
Top

LoadingService (LoadingServiceEventArgs)

Purpose: Raised when a Service Loader instance loads a Service
Notes:

Parameters:
e Consultingwerk.Framework.LoadingServiceEventArgs
The LoadingServiceEventArgs with the data for the event


Property Detail
Top

Consultingwerk.Framework.IServiceContainer ServiceContainer


Returns Consultingwerk.Framework.IServiceContainer


Temp-Table Detail

Temp-Table ttServiceLoader_static

Defined in:


©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       19.09.2026 10:07:44