2021-05-07 12:43:50 +00:00
|
|
|
#nullable disable
|
|
|
|
|
2020-01-22 20:00:07 +00:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
|
2019-01-13 19:54:44 +00:00
|
|
|
using System;
|
2016-10-29 22:22:20 +00:00
|
|
|
|
2016-10-29 22:34:54 +00:00
|
|
|
namespace Emby.Dlna.Eventing
|
2016-10-29 22:22:20 +00:00
|
|
|
{
|
|
|
|
public class EventSubscription
|
|
|
|
{
|
|
|
|
public string Id { get; set; }
|
2020-06-15 21:43:52 +00:00
|
|
|
|
2016-10-29 22:22:20 +00:00
|
|
|
public string CallbackUrl { get; set; }
|
2020-06-15 21:43:52 +00:00
|
|
|
|
2016-10-29 22:22:20 +00:00
|
|
|
public string NotificationType { get; set; }
|
|
|
|
|
|
|
|
public DateTime SubscriptionTime { get; set; }
|
2020-06-15 21:43:52 +00:00
|
|
|
|
2016-10-29 22:22:20 +00:00
|
|
|
public int TimeoutSeconds { get; set; }
|
|
|
|
|
|
|
|
public long TriggerCount { get; set; }
|
|
|
|
|
2020-01-22 20:00:07 +00:00
|
|
|
public bool IsExpired => SubscriptionTime.AddSeconds(TimeoutSeconds) >= DateTime.UtcNow;
|
|
|
|
|
2016-10-29 22:22:20 +00:00
|
|
|
public void IncrementTriggerCount()
|
|
|
|
{
|
|
|
|
if (TriggerCount == long.MaxValue)
|
|
|
|
{
|
|
|
|
TriggerCount = 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
TriggerCount++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|