+ return Configuration.objectHasOwnProperty(Configuration.getConfig(), 'logStatisticsInterval')
+ ? Configuration.getConfig().logStatisticsInterval
+ : Constants.DEFAULT_LOG_STATISTICS_INTERVAL;
+ }
+
+ static getUIWebSocketServer(): UIWebSocketServerConfiguration {
+ let options: ServerOptions = {
+ host: Constants.DEFAULT_UI_WEBSOCKET_SERVER_HOST,
+ port: Constants.DEFAULT_UI_WEBSOCKET_SERVER_PORT,
+ };
+ let uiWebSocketServerConfiguration: UIWebSocketServerConfiguration = {
+ enabled: true,
+ options,
+ };
+ if (Configuration.objectHasOwnProperty(Configuration.getConfig(), 'uiWebSocketServer')) {
+ if (
+ Configuration.objectHasOwnProperty(Configuration.getConfig().uiWebSocketServer, 'options')
+ ) {
+ options = {
+ ...options,
+ ...(Configuration.objectHasOwnProperty(
+ Configuration.getConfig().uiWebSocketServer.options,
+ 'host'
+ ) && { host: Configuration.getConfig().uiWebSocketServer.options.host }),
+ ...(Configuration.objectHasOwnProperty(
+ Configuration.getConfig().uiWebSocketServer.options,
+ 'port'
+ ) && { port: Configuration.getConfig().uiWebSocketServer.options.port }),
+ };
+ }
+ uiWebSocketServerConfiguration = {
+ ...uiWebSocketServerConfiguration,
+ ...(Configuration.objectHasOwnProperty(
+ Configuration.getConfig().uiWebSocketServer,
+ 'enabled'
+ ) && { enabled: Configuration.getConfig().uiWebSocketServer.enabled }),
+ options,
+ };
+ }
+ return uiWebSocketServerConfiguration;
+ }
+
+ static getPerformanceStorage(): StorageConfiguration {
+ Configuration.warnDeprecatedConfigurationKey('URI', 'performanceStorage', "Use 'uri' instead");
+ let storageConfiguration: StorageConfiguration = {
+ enabled: false,
+ type: StorageType.JSON_FILE,
+ uri: this.getDefaultPerformanceStorageUri(StorageType.JSON_FILE),
+ };
+ if (Configuration.objectHasOwnProperty(Configuration.getConfig(), 'performanceStorage')) {
+ storageConfiguration = {
+ ...storageConfiguration,
+ ...(Configuration.objectHasOwnProperty(
+ Configuration.getConfig().performanceStorage,
+ 'enabled'
+ ) && { enabled: Configuration.getConfig().performanceStorage.enabled }),
+ ...(Configuration.objectHasOwnProperty(
+ Configuration.getConfig().performanceStorage,
+ 'type'
+ ) && { type: Configuration.getConfig().performanceStorage.type }),
+ ...(Configuration.objectHasOwnProperty(
+ Configuration.getConfig().performanceStorage,
+ 'uri'
+ ) && {
+ uri: this.getDefaultPerformanceStorageUri(
+ Configuration.getConfig()?.performanceStorage?.type ?? StorageType.JSON_FILE
+ ),
+ }),
+ };