You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iot/projects/IoTNode/Services/CacheEventHandler.cs

40 lines
1010 B

using Infrastructure.Events;
using IoT.Shared.Application.Domain.Entities;
using Microsoft.Extensions.Caching.Distributed;
namespace IoTNode.Services
{
public class CacheEventHandler :
IEventHander<EntityInsertedEvent<IoTSceneTigger>>,
IEventHander<EntityUpdatedEvent<IoTSceneTigger>>,
IEventHander<EntityDeletedEvent<IoTSceneTigger>>
{
private readonly IDistributedCache _cache;
public CacheEventHandler(IDistributedCache cache)
{
this._cache = cache;
}
public void Handle(EntityInsertedEvent<IoTSceneTigger> message)
{
this.Remove();
}
public void Handle(EntityUpdatedEvent<IoTSceneTigger> message)
{
this.Remove();
}
public void Handle(EntityDeletedEvent<IoTSceneTigger> message)
{
this.Remove();
}
private void Remove()
{
this._cache.Remove(CacheKey.SceneTiggerKey);
}
}
}