RpcValidateParameters.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System;
  2. using InABox.Core;
  3. namespace InABox.Rpc
  4. {
  5. public class RpcValidateParameters : ISerializeBinary
  6. {
  7. public string? UserID { get; set; }
  8. public string? Password { get; set; }
  9. public string? PIN { get; set; }
  10. public bool UsePIN { get; set; }
  11. // reconnect to an existing session
  12. public Guid SessionID { get; set; }
  13. public Platform Platform { get; set; }
  14. public String? Version { get; set; }
  15. public void SerializeBinary(CoreBinaryWriter writer)
  16. {
  17. writer.Write(UserID ?? "");
  18. writer.Write(Password ?? "");
  19. writer.Write(PIN ?? "");
  20. writer.Write(UsePIN);
  21. writer.Write(SessionID);
  22. writer.WriteBinaryValue(Platform);
  23. writer.Write(Version ?? "");
  24. }
  25. public void DeserializeBinary(CoreBinaryReader reader)
  26. {
  27. UserID = reader.ReadString();
  28. Password = reader.ReadString();
  29. PIN = reader.ReadString();
  30. UsePIN = reader.ReadBoolean();
  31. SessionID = reader.ReadGuid();
  32. Platform = reader.ReadBinaryValue<Platform>();
  33. Version = reader.ReadString();
  34. }
  35. }
  36. }