Namespace: Consultingwerk.Framework.Server
Class 
AppServerStartupManager Copy to Clipboard
Parent classes:
Inherits: Progress.Lang.Object
Implements: Ccs.Common.IStartupManager
Inherited by: Consultingwerk.Framework.GuiClientStartupManager

File:AppServerStartupManager
Purpose:CCS-SSS compliant implementation of the Ccs.Common.IStartupManager
Interface
Syntax:Uses Json Files for configuration
Author(s):Mike Fechner / Consultingwerk Ltd.
Created:Fri Jun 23 09:06:27 CEST 2017
Notes:https://github.com/progress/CCS/blob/master/Specs/Startup_Session_Service_Managers/v1_0/Startup_Manager_1_0.pdf
https://consultingwerk.atlassian.net/wiki/spaces/SCL/pages/8094594/JSON+Configuration+File+Format
Startup Banner can be turned off using
Consultingwerk.Framework.FrameworkSettings:DebugMode = FALSE or
Consultingwerk.Framework.FrameworkSettings:BannerFile = ?



Top Method Summary
Options Name Purpose
# DisplayDatabaseStatus (integer, integer, character) Displays the Database connection progress
# DisplayServiceStatus (integer, integer, character) Displays the Service loading progress
+ dispose () Destroy/Shutdown/Anti-Initializer
# DisposeDatabaseStatus () Finishes the status display for database connections
# DisposeServiceStatus () Finishes the status display for loading of services
+ Ccs.Common.IManager getManager (Class) Retrieve an instance of the specified IManager object.
# CHARACTER GetServiceFiles (JsonArray) Returns the combines array of service.xml file names
# ImportServicesFromJsonObject (JsonObject) Imports services from the given JsonObject into the ttServiceLoader temp-table
+ initialize () Initializer/Startup
# InitializeDatabaseStatus () Initializes the status display for database connections
# InitializeServiceStatus () Initializes the status display for loading of services
# Startup (JsonObject) Performs the actual framework bootstrap
# StartupAliases (JsonObject) Sets Database Aliases
# StartupApplicationSettings (JsonObject) Initializes the ConfigurationProvider service
# StartupCustomLogEntrySettings (JsonObject) Sets the Custom Log Entry settings
# StartupDatabases (JsonObject) Performs Database Connections
# StartupEnvironment (JsonObject) Performs Environment Configuration
# StartupExport (JsonObject) Sets the SESSION:EXPORT
# StartupFactory (JsonObject) Initializes the Factory implementation from factory.xml files
# StartupManagers (JsonObject) Launches the Manager instance
# StartupProfiler (JsonObject) Enables the Profiler
# StartupRoutine (JsonObject) Implements the actual session startup
# StartupServices (JsonObject) Launches Services from service.xml files
# StartupStaticProperties (JsonObject) Processes the static properties
# WriteBanner () Writes a Banner to the AppServer logfile

Top Constructor Summary
Options Name Purpose
+ AppServerStartupManager (character) Constructor for the AppServerStartupManager class
+ AppServerStartupManager (JsonObject) Constructor for the AppServerStartupManager class

Top Property Summary
Options Name Purpose
+ Ccs.Common.IServiceManager ServiceManager
+ Ccs.Common.ISessionManager SessionManager


Method Detail
Top

PROTECTED DisplayDatabaseStatus (integer, integer, character)

Purpose: Displays the Database connection progress
Notes:

Parameters:
piCounter INTEGER
The number of the current database
piCount INTEGER
The total number of databases
pcDatabaseName CHARACTER
The name of the current database
Top

PROTECTED DisplayServiceStatus (integer, integer, character)

Purpose: Displays the Service loading progress
Notes:

Parameters:
piCounter INTEGER
The number of the current service
piCount INTEGER
The total number of service
pcServiceFileName CHARACTER
The name of the current service
Top

PUBLIC dispose ()

Purpose: Destroy/Shutdown/Anti-Initializer
Notes: Disposes the Service Manager first. The Service Manager
is expected to dispose all services. This way, it's expected
that during disposal of the "ordinary" services, the Managers
are still present

Top

PROTECTED DisposeDatabaseStatus ()

Purpose: Finishes the status display for database connections
Notes:

Top

PROTECTED DisposeServiceStatus ()

Purpose: Finishes the status display for loading of services
Notes:

Top

PUBLIC Ccs.Common.IManager getManager (Class)

Purpose: Retrieve an instance of the specified IManager object.
Notes: If a manager is not configured, no error should be raised, but if it is
configured and fails to load, an exception must be raised.

Parameters:
pServiceType Progress.Lang.Class
The Progress.Lang.Class representing the required service.
Returns Ccs.Common.IManager
IManager implementation of the requested type, or ? if its not configured.
Top

PROTECTED CHARACTER GetServiceFiles (JsonArray)

Purpose: Returns the combines array of service.xml file names
Notes:

Parameters:
poServices Progress.Json.ObjectModel.JsonArray
The JSON object with service.xml file names or direct service definitions
Returns CHARACTER
The Character Array with service.xml file names
Top

PROTECTED ImportServicesFromJsonObject (JsonObject)

Purpose: Imports services from the given JsonObject into the ttServiceLoader
temp-table
Notes:

Parameters:
poJson Progress.Json.ObjectModel.JsonObject
The JsonObject to import from
Top

PUBLIC initialize ()

Purpose: Initializer/Startup
Notes:

Top

PROTECTED InitializeDatabaseStatus ()

Purpose: Initializes the status display for database connections
Notes:

Top

PROTECTED InitializeServiceStatus ()

Purpose: Initializes the status display for loading of services
Notes:

Top

PROTECTED Startup (JsonObject)

Purpose: Performs the actual framework bootstrap
Notes: Invokes the IStartupValidationService after the session
has been started

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupAliases (JsonObject)

Purpose: Sets Database Aliases
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupApplicationSettings (JsonObject)

Purpose: Initializes the ConfigurationProvider service
Notes: The applicationSettings property of the configuration does either
contain a CHARACTER value used as the name of a JSON file (.applicationsettings)
or a JSON Object with configuration strings

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupCustomLogEntrySettings (JsonObject)

Purpose: Sets the Custom Log Entry settings
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupDatabases (JsonObject)

Purpose: Performs Database Connections
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupEnvironment (JsonObject)

Purpose: Performs Environment Configuration
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupExport (JsonObject)

Purpose: Sets the SESSION:EXPORT
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupFactory (JsonObject)

Purpose: Initializes the Factory implementation from factory.xml files
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupManagers (JsonObject)

Purpose: Launches the Manager instance
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupProfiler (JsonObject)

Purpose: Enables the Profiler
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupRoutine (JsonObject)

Purpose: Implements the actual session startup
Notes: This method may be overridden in child classes to extend the
startup process

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JSON Configuration
Top

PROTECTED StartupServices (JsonObject)

Purpose: Launches Services from service.xml files
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED StartupStaticProperties (JsonObject)

Purpose: Processes the static properties
Notes: Supports integer, character and logical properties

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject with the configuration data
Top

PROTECTED WriteBanner ()

Purpose: Writes a Banner to the AppServer logfile
Notes: The Banner file to be used can be configured using the
FrameworkSettings:BannerFile BannerFile property



Constructor Detail
Top

PUBLIC AppServerStartupManager (character)

Purpose: Constructor for the AppServerStartupManager class
Notes:

Parameters:
pcConfigurationFileName CHARACTER
The name of the JsonFile containing the configuration
Top

PUBLIC AppServerStartupManager (JsonObject)

Purpose: Constructor for the AppServerStartupManager class
Notes:

Parameters:
poConfiguration Progress.Json.ObjectModel.JsonObject
The JsonObject containing the configuration


Property Detail
Top

PUBLIC Ccs.Common.IServiceManager ServiceManager


Returns Ccs.Common.IServiceManager
Top

PUBLIC Ccs.Common.ISessionManager SessionManager


Returns Ccs.Common.ISessionManager


©2006-2023 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       15.04.2024 05:51:44