Files
raven/server/AyaNova/models/NotifyDeliveryLog.cs
2022-03-08 17:17:42 +00:00

49 lines
1.3 KiB
C#

using System;
using System.Collections.Generic;
using AyaNova.Biz;
using System.ComponentModel.DataAnnotations;
using Newtonsoft.Json;
namespace AyaNova.Models
{
//This model holds the deliveries that have been attempted in the past 90 days (cleaned out by corenotifysweeper)
//it is used for verification / troubleshooting purposes from the OPS log
//and also used as a circuit breaker by the corejobnotify to ensure users are not spammed with identical messages
public class NotifyDeliveryLog
{
public long Id { get; set; }
public uint Concurrency { get; set; }
//public AyaType NotifyType { get; set; }
//public long CustomerNotifySubscriptionId {get;set;}
[Required]
public DateTime Processed { get; set; }
public long ObjectId { get; set; }
[Required]
public long NotifySubscriptionId { get; set; }
[Required]
public bool Fail { get; set; }
public string Error { get; set; }
public NotifyDeliveryLog()
{
Processed = DateTime.UtcNow;
Fail = false;
ObjectId = 0;
}
//linked entity
public NotifySubscription NotifySubscription { get; set; }
}//eoc
}//eons