feat: print deprecation warnings once
[e-mobility-charging-stations-simulator.git] / src / utils / Configuration.ts
index e9ec68846c6f8f1f1e7e62dc4b372455330aa041..4e908a5e0579dcf505f1bfbf8346c4e8f7010bce 100644 (file)
@@ -6,7 +6,7 @@ import chalk from 'chalk';
 import merge from 'just-merge';
 
 import { Constants } from './Constants';
-import { hasOwnProp, isCFEnvironment, isNotEmptyString, isUndefined } from './Utils';
+import { hasOwnProp, isCFEnvironment, isNotEmptyString, isUndefined, once } from './Utils';
 import {
   ApplicationProtocol,
   type ConfigurationData,
@@ -75,7 +75,11 @@ export class Configuration {
   }
 
   public static getStationTemplateUrls(): StationTemplateUrl[] | undefined {
-    Configuration.checkDeprecatedConfigurationKeys();
+    const checkDeprecatedConfigurationKeysOnce = once(
+      Configuration.checkDeprecatedConfigurationKeys.bind(Configuration),
+      this,
+    );
+    checkDeprecatedConfigurationKeysOnce();
     return Configuration.getConfigurationData()?.stationTemplateUrls;
   }