perf: reduce OCPPUtils memory usage
[e-mobility-charging-stations-simulator.git] / src / types / AutomaticTransactionGenerator.ts
index f88659bff630ce8025e6f9f6082a9a2cee2e3e8e..2ae3abd7fedead24a3779622fedda4b0475414e8 100644 (file)
@@ -1,4 +1,10 @@
-export type AutomaticTransactionGeneratorConfiguration = {
+export enum IdTagDistribution {
+  RANDOM = 'random',
+  ROUND_ROBIN = 'round-robin',
+  CONNECTOR_AFFINITY = 'connector-affinity',
+}
+
+export interface AutomaticTransactionGeneratorConfiguration {
   enable: boolean;
   minDuration: number;
   maxDuration: number;
@@ -8,9 +14,10 @@ export type AutomaticTransactionGeneratorConfiguration = {
   stopAfterHours: number;
   stopOnConnectionFailure: boolean;
   requireAuthorize?: boolean;
-};
+  idTagDistribution?: IdTagDistribution;
+}
 
-export type Status = {
+export interface Status {
   start: boolean;
   startDate?: Date;
   lastRunDate?: Date;
@@ -27,4 +34,9 @@ export type Status = {
   rejectedStopTransactionRequests?: number;
   skippedConsecutiveTransactions?: number;
   skippedTransactions?: number;
-};
+}
+
+export interface ChargingStationAutomaticTransactionGeneratorConfiguration {
+  automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration;
+  automaticTransactionGeneratorStatuses?: Status[];
+}