Broadcast Channel: optimize requests handling implementation
[e-mobility-charging-stations-simulator.git] / src / scripts / setCSPublicFlag.js
index 3ecf5089460cdd5ddcf1b321685434100341d356..c33647321109a51cf991c303bafd82594479922a 100755 (executable)
@@ -1,8 +1,9 @@
 #!/usr/bin/env node
 
-const MongoClient = require('mongodb');
 const fs = require('fs');
 
+const MongoClient = require('mongodb');
+
 // This script sets charging stations public or private
 // Filter charging stations by id pattern
 
@@ -14,19 +15,19 @@ const fs = require('fs');
 const config = JSON.parse(fs.readFileSync('scriptConfig.json', 'utf8'));
 
 // Mongo Connection and Query
-if (config?.mongoConnectionString) {
-  MongoClient.connect(config.mongoConnectionString, {
-    useUnifiedTopology: true,
-    useNewUrlParser: true
-  }, async function(err, client) {
-    const db = client.db('evse');
+if (config && config.mongoConnectionString) {
+  MongoClient.connect(config.mongoConnectionString, async function (err, client) {
+    const db = client.db();
 
     for await (const tenantID of config.tenantIDs) {
-      const response = await db.collection(tenantID + '.chargingstations').updateMany(
-        { _id: { '$regex': config.idPattern } },
-        { $set: { public: config.publicFlag } }
+      const response = await db
+        .collection(tenantID + '.chargingstations')
+        .updateMany({ _id: { $regex: config.idPattern } }, { $set: { public: config.publicFlag } });
+      console.info(
+        response.modifiedCount,
+        `Charging Stations with id = %${config.idPattern}% updated. TenantID =`,
+        tenantID
       );
-      console.log(response.modifiedCount, `Charging Stations with id = %${config.idPattern}% updated. TenantID =`, tenantID);
     }
     client.close();
   });