tbf/SharedDatabase/Entities/Event.cs

53 lines
1.8 KiB
C#
Raw Permalink Normal View History

///
/// Copyright (c) 2020 Sensus Slovensko a.s.
///
using System;
using System.Collections.Generic;
namespace SharedDatabase.Entities
{
public class Event
{
public virtual int Id { get; protected set; }
public virtual DateTime TimeStamp { get; set; }
public virtual string Bench { get; set; }
public virtual string Source { get; set; }
public virtual Common.EventClass EventClass { get; set; }
public virtual Common.Severity Severity { get; set; }
public virtual string Message { get; set; }
public virtual string MoreInfo { get; set; }
public virtual IList<Subscriber> Subscribers { get; set; }
public virtual Common.SubscriberGroup SubscriberGroups { get; set; } /// Not mapped to DB, intermediate inforamtion
public Event()
{
Subscribers = new List<Subscriber>();
}
public Event(string bench, string source, Common.EventClass eventClass, Common.Severity severity,
string message, string moreInfo, IList<Subscriber> subscribers, Common.SubscriberGroup subscriberGroups = 0)
: this()
{
TimeStamp = DateTime.Now;
Bench = bench;
Source = source;
EventClass = eventClass;
Severity = severity;
Message = message;
MoreInfo = moreInfo;
if (subscribers != null)
{
foreach (var s in subscribers) Subscribers.Add(s);
}
SubscriberGroups = subscriberGroups;
}
public override string ToString()
{
return string.Format("{0:yyMMdd}_{0:HHmm} {1} {2} {3} {4} {5}", TimeStamp, Bench, Source, EventClass, Severity, Message);
}
}
}