updated registration logic to be consise

This commit is contained in:
znetsixe
2025-09-04 17:06:30 +02:00
parent 494a688583
commit 50f99fa642
4 changed files with 7 additions and 8 deletions

View File

@@ -12,12 +12,11 @@ const outputUtils = require('./src/helper/outputUtils.js');
const logger = require('./src/helper/logger.js'); const logger = require('./src/helper/logger.js');
const validation = require('./src/helper/validationUtils.js'); const validation = require('./src/helper/validationUtils.js');
const configUtils = require('./src/helper/configUtils.js'); const configUtils = require('./src/helper/configUtils.js');
const assertions = require('./src/helper/assertionUtils.js')
// Domain-specific modules // Domain-specific modules
const { MeasurementContainer } = require('./src/measurements/index.js'); const { MeasurementContainer } = require('./src/measurements/index.js');
const configManager = require('./src/configs/index.js'); const configManager = require('./src/configs/index.js');
const nrmse = require('./src/nrmse/errorMetrics.js'); const nrmse = require('./src/nrmse/ErrorMetrics.js');
const state = require('./src/state/state.js'); const state = require('./src/state/state.js');
const convert = require('./src/convert/index.js'); const convert = require('./src/convert/index.js');
const MenuManager = require('./src/menu/index.js'); const MenuManager = require('./src/menu/index.js');
@@ -35,7 +34,6 @@ module.exports = {
configUtils, configUtils,
logger, logger,
validation, validation,
assertions,
MeasurementContainer, MeasurementContainer,
nrmse, nrmse,
state, state,

View File

@@ -1,7 +1,7 @@
{ {
"general": { "general": {
"name": { "name": {
"default": "Measurement Configuration", "default": "Sensor",
"rules": { "rules": {
"type": "string", "type": "string",
"description": "A human-readable name or label for this measurement configuration." "description": "A human-readable name or label for this measurement configuration."

View File

@@ -8,7 +8,7 @@ class ChildRegistrationUtils {
async registerChild(child, positionVsParent) { async registerChild(child, positionVsParent) {
const { softwareType } = child.config.functionality; const { softwareType } = child.config.functionality;
const { name, id } = child.config.general; const { name, id } = child.config.general;
this.logger.debug(`Registering child: ${name} (${id}) as ${softwareType} at ${positionVsParent}`); this.logger.debug(`Registering child: ${name} (${id}) as ${softwareType} at ${positionVsParent}`);
// Enhanced child setup // Enhanced child setup
@@ -33,9 +33,9 @@ class ChildRegistrationUtils {
registeredAt: Date.now() registeredAt: Date.now()
}); });
// IMPORTANT: Only call parent registration - no automatic handling // IMPORTANT: Only call parent registration - no automatic handling and if parent has this function then try to register this child
if (typeof this.mainClass.registerOnChildEvents === 'function') { if (typeof this.mainClass.registerChild === 'function') {
this.mainClass.registerOnChildEvents(); this.mainClass.registerChild(child, softwareType);
} }
this.logger.info(`✅ Child ${name} registered successfully`); this.logger.info(`✅ Child ${name} registered successfully`);

View File

@@ -148,6 +148,7 @@ class MeasurementContainer {
// Emit the exact event your parent expects // Emit the exact event your parent expects
this.emitter.emit(`${this._currentType}.${this._currentVariant}.${this._currentPosition}`, eventData); this.emitter.emit(`${this._currentType}.${this._currentVariant}.${this._currentPosition}`, eventData);
//console.log(`Emitted event: ${this._currentType}.${this._currentVariant}.${this._currentPosition}`, eventData);
return this; return this;
} }