using Application.Domain.Entities; using Infrastructure.Events; using IoT.Shared.Services; using IoTNode.DeviceServices.Onvif; namespace IoTNode.Services { public class IoTNodeToServerEventHandler : IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander>, IEventHander> { private readonly ISceneTiggerService _sceneTiggerService; private readonly OnvifService _onvifService; private readonly IoTNodeClient _iotNodeClient; public IoTNodeToServerEventHandler(ISceneTiggerService sceneTiggerService, OnvifService onvifService, IoTNodeClient iotNodeClient) { this._sceneTiggerService = sceneTiggerService; this._onvifService = onvifService; this._iotNodeClient = iotNodeClient; } private void ClientToServer(BaseEvent message) { if (message is EntityInsertedEvent || message is EntityUpdatedEvent) { _iotNodeClient.ClientToServer($"Edit{typeof(T).Name}", message.Data, null); } else if (message is EntityDeletedEvent) { _iotNodeClient.ClientToServer($"Delete{typeof(T).Name}", message.Data, null); } } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { if (!message.Data.Hidden) { this.ClientToServer(message); } } public void Handle(EntityUpdatedEvent message) { if (!message.Data.Hidden) { this.ClientToServer(message); } } public void Handle(EntityDeletedEvent message) { if (!message.Data.Hidden) { this.ClientToServer(message); } } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } public void Handle(EntityInsertedEvent message) { this.ClientToServer(message); } public void Handle(EntityUpdatedEvent message) { this.ClientToServer(message); } public void Handle(EntityDeletedEvent message) { this.ClientToServer(message); } } }