using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace isnd.Data.Catalog { public enum PackageAction { DeletePackage, PublishPackage } public class Commit : IObject { [Key][Required,DatabaseGenerated(DatabaseGeneratedOption.Identity)] public long Id { get; set; } [Required] public DateTime TimeStamp{ get; set; } [Required] public PackageAction Action { get; set; } [Required] public string PackageVersionId { get; set; } [ForeignKey("PackageVersionId")] public virtual PackageVersion PackageVersion{ get; set; } public string CommitId { get => Id.ToString(); } public DateTime CommitTimeStamp { get => TimeStamp; } } }