EventSubscription.cs 783 B

12345678910111213141516171819202122232425262728293031323334
  1. using System;
  2. namespace MediaBrowser.Dlna.Eventing
  3. {
  4. public class EventSubscription
  5. {
  6. public string Id { get; set; }
  7. public string CallbackUrl { get; set; }
  8. public string NotificationType { get; set; }
  9. public DateTime SubscriptionTime { get; set; }
  10. public int TimeoutSeconds { get; set; }
  11. public long TriggerCount { get; set; }
  12. public void IncrementTriggerCount()
  13. {
  14. if (TriggerCount == long.MaxValue)
  15. {
  16. TriggerCount = 0;
  17. }
  18. TriggerCount++;
  19. }
  20. public bool IsExpired
  21. {
  22. get
  23. {
  24. return SubscriptionTime.AddSeconds(TimeoutSeconds) >= DateTime.UtcNow;
  25. }
  26. }
  27. }
  28. }