using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;

namespace Edge.WebHost.Models
{
    [JsonConverter(typeof(StringEnumConverter))]
    public enum Severity
    {
        Error,
        Warning,
        Information
    }

    public class AlarmInformation
    {
        //unique value
        public string Key { get; set; }

        //Message will be displayed on alarm bar
        public string Description { get; set; }

        //The time stamp when the alarm/info added
        public DateTime? OccurTime { get; set; }

        //used to set the information type, it's a alarm/warning/information
        public Severity Severity { get; set; }

        //may be a url which used to open a new page
        public string Action { get; set; }

        public bool Acked { get; set; }
        /// <summary>
        /// Indicate where is the message from
        /// </summary>
        public string Module { get; set; }
    }
}