using Newtonsoft.Json; using Newtonsoft.Json.Converters; using System; using EVCB_OCPP.Packet.Utilities; using EVCB_OCPP.Packet.Messages.SubTypes; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; namespace EVCB_OCPP.Packet.Messages.Core { public class BootNotificationConfirmation : IConfirmation { [Required] [JsonConverter(typeof(UTCDateTimeConverter))] public DateTime currentTime { set; get; } [Required] public int interval { set; get; } [Required] [JsonConverter(typeof(StringEnumConverter))] public RegistrationStatus status { set; get; } private IRequest _request = null; public IRequest GetRequest() { return _request; } public void SetRequest(IRequest request) { _request = request; } public bool Validate() { return Validator.TryValidateObject(this, new ValidationContext(this), null, true); } } }