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/Platform/Services/CacheEventHandler.cs

40 lines
1.0 KiB

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