import { LRUMapWithDelete as LRUCache } from 'mnemonist'
+import { isEmpty } from 'rambda'
-import { Bootstrap } from './Bootstrap.js'
import type { ChargingStationConfiguration, ChargingStationTemplate } from '../types/index.js'
-import { isEmptyObject, isNotEmptyArray, isNotEmptyString } from '../utils/index.js'
+import { isNotEmptyArray, isNotEmptyString } from '../utils/index.js'
+import { Bootstrap } from './Bootstrap.js'
enum CacheType {
chargingStationTemplate = 'chargingStationTemplate',
- chargingStationConfiguration = 'chargingStationConfiguration',
+ chargingStationConfiguration = 'chargingStationConfiguration'
}
type CacheValueType = ChargingStationTemplate | ChargingStationConfiguration
private constructor () {
this.lruCache = new LRUCache<string, CacheValueType>(
Bootstrap.getInstance().numberOfChargingStationTemplates +
- Bootstrap.getInstance().numberOfChargingStations
+ Bootstrap.getInstance().numberOfConfiguredChargingStations +
+ Bootstrap.getInstance().numberOfProvisionedChargingStations
)
}
chargingStationConfiguration.automaticTransactionGenerator != null &&
chargingStationConfiguration.configurationHash != null &&
isNotEmptyArray(chargingStationConfiguration.configurationKey) &&
- !isEmptyObject(chargingStationConfiguration.stationInfo) &&
- !isEmptyObject(chargingStationConfiguration.automaticTransactionGenerator) &&
+ !isEmpty(chargingStationConfiguration.stationInfo) &&
+ !isEmpty(chargingStationConfiguration.automaticTransactionGenerator) &&
isNotEmptyString(chargingStationConfiguration.configurationHash)
)
}