1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- using System;
- using InABox.Clients;
- using InABox.Core;
- namespace InABox.Rpc
- {
- public class RpcValidateResult : IRpcCommandResult, IValidationData
- {
-
- public ValidationStatus Status { get; set; }
- public Guid UserGuid { get; set; }
- public string? UserID { get; set; }
- public Guid SecurityID { get; set; }
- public Guid SessionID { get; set; }
- public string? Recipient2FA { get; set; }
- public DateTime PasswordExpiration { get; set; }
- public RpcValidateResult()
- {
- UserID = "";
- }
- public void SerializeBinary(CoreBinaryWriter writer)
- {
- writer.Write((int)Status);
- writer.Write(UserGuid);
- writer.Write(UserID ?? string.Empty);
- writer.Write(SecurityID);
- writer.Write(SessionID);
- writer.Write(Recipient2FA ?? string.Empty);
- writer.Write(PasswordExpiration.ToUniversalTime().Ticks);
- }
- public void DeserializeBinary(CoreBinaryReader reader)
- {
- Status = (ValidationStatus)reader.ReadInt32();
- UserGuid = reader.ReadGuid();
- UserID = reader.ReadString();
- SecurityID = reader.ReadGuid();
- SessionID = reader.ReadGuid();
- Recipient2FA = reader.ReadString();
- PasswordExpiration = new DateTime(reader.ReadInt64(), DateTimeKind.Utc).ToLocalTime();
- }
- public string FullDescription() => Status.ToString();
- }
- }
|