34 lines
1.0 KiB
JavaScript
34 lines
1.0 KiB
JavaScript
// events/index.js
|
|
const { eventEmitter } = require('./eventEmitter')
|
|
const createProperty = require('../components/property/events/createProperty')
|
|
const updateProperty = require('../components/property/events/updateProperty')
|
|
const deleteProperty = require('../components/property/events/deleteProperty')
|
|
const registerEventHandlers = () => {
|
|
// Register all event handlers
|
|
createProperty(eventEmitter)
|
|
updateProperty(eventEmitter)
|
|
deleteProperty(eventEmitter)
|
|
// Add additional error monitoring if needed
|
|
eventEmitter.on('error', (error) => {
|
|
console.error('Event handler error:', error)
|
|
})
|
|
|
|
console.log('Event handlers registered successfully')
|
|
}
|
|
|
|
const safeEmit = async (eventName, ...args) => {
|
|
try {
|
|
return eventEmitter.emit(eventName, ...args)
|
|
} catch (error) {
|
|
console.error(`Error safely emitting ${eventName}:`, error)
|
|
eventEmitter.emit('error', error)
|
|
return false
|
|
}
|
|
}
|
|
|
|
module.exports = {
|
|
registerEventHandlers,
|
|
eventEmitter,
|
|
safeEmit,
|
|
}
|