Files
SocialPub/PrivaPub/Models/Jobs/Job.cs
T

39 lines
806 B
C#
Raw Normal View History

using MongoDB.Entities;
namespace PrivaPub.Models.Jobs
{
public class Job : Entity
{
public JobKind Kind { get; set; }
public JobState State { get; set; }
public string Payload { get; set; }
public string Host { get; set; }
public string DedupeKey { get; set; }
public int Attempts { get; set; }
public DateTime RunAt { get; set; } = DateTime.UtcNow;
public DateTime? LeasedUntil { get; set; }
public string LeaseOwner { get; set; }
public string LastError { get; set; }
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public DateTime? FinishedAt { get; set; }
}
public enum JobKind
{
Deliver,
ProcessInbox,
FetchAncestors,
DescribeInstance,
PollRefresh,
PollClose,
FetchPreview
}
public enum JobState
{
Pending,
Running,
Done,
Dead
}
}