About Service Shell Configuration
For each product (profile), the Service shell uses the following key information:
- TCP/IP port: The Service shell listens to the port to serve HTTP request from client applications
- Default Service: Service name that is used as a default when the client does not specify one
- File Service Root: Root folder for the File Service
- Data Source: ODBC Data source name to Trapeze database
- DBD file: Name of the file that contains the structure of the database
- Login: Database login name
- Password: Database login password
- TPS Modules: List of Service shell plug-ins that should be loaded
The Service shell uses context properties to load and store the configuration. The context properties are stored as an ini file in the application startup folder. Each profile has its own ini file (named profile_name.ini), so the Service shell can use different configurations for different products. Multiple instances of the Service shell can be launched from the same host with different configurations if those configurations use different TCP/IP ports.
The Service shell must know its profile. There are several possible cases that may happen during the shell start-up.
- If the shell is started with profile = ProductName command line argument, the value is going to be used as the profile. If there is no profile ini file found in the startup folder, the default configuration is used. If the shell is executed as NT service, the “profile” command line argument must be present.
- If “profile” command line argument is missing and the shell is not executed as NT service, the shell looks for profile_name.ini files. If none of them is found, the profile set as the default is used (“Trapeze6”). If only one profile is found, the shell uses that profile. If multiple profiles are found, the Service shell prompts the user to select a profile.
As a result, the Service shell loads or sets the configuration as the default into the context properties and sets the profile context property (set of system settings).