Made all VS-recommended changes

This commit is contained in:
2019-02-21 15:30:48 -06:00
parent edc7050279
commit f566b4c468
12 changed files with 60 additions and 59 deletions

View File

@ -9,18 +9,18 @@ namespace ScreenLogicConnect
{ {
public class EasyTouchUnit public class EasyTouchUnit
{ {
public String gatewayName { get; private set; } public string GatewayName { get; private set; }
public byte gatewaySubType { get; private set; } public byte GatewaySubType { get; private set; }
public byte gatewayType { get; private set; } public byte GatewayType { get; private set; }
public IPAddress ipAddress { get; private set; } public IPAddress IPAddress { get; private set; }
public bool isValid { get; private set; } public bool IsValid { get; private set; }
public short port { get; private set; } public short Port { get; private set; }
public EasyTouchUnit(UdpReceiveResult result) public EasyTouchUnit(UdpReceiveResult result)
{ {
try try
{ {
ipAddress = result.RemoteEndPoint.Address; IPAddress = result.RemoteEndPoint.Address;
using (var ms = new MemoryStream(result.Buffer)) using (var ms = new MemoryStream(result.Buffer))
{ {
@ -30,12 +30,12 @@ namespace ScreenLogicConnect
if (unitType == 2) if (unitType == 2)
{ {
br.ReadBytes(4); br.ReadBytes(4);
port = br.ReadInt16(); Port = br.ReadInt16();
gatewayType = br.ReadByte(); GatewayType = br.ReadByte();
gatewaySubType = br.ReadByte(); GatewaySubType = br.ReadByte();
gatewayName = Encoding.ASCII.GetString(result.Buffer.Skip((int)ms.Position).TakeWhile(x => x != 0).ToArray()); GatewayName = Encoding.ASCII.GetString(result.Buffer.Skip((int)ms.Position).TakeWhile(x => x != 0).ToArray());
isValid = true; IsValid = true;
} }
} }
} }
@ -50,10 +50,10 @@ namespace ScreenLogicConnect
{ {
try try
{ {
gatewayName = data.GatewayName; GatewayName = data.GatewayName;
ipAddress = IPAddress.Parse(data.IPAddr); IPAddress = IPAddress.Parse(data.IPAddr);
port = data.Port; Port = data.Port;
isValid = data.GatewayFound && data.PortOpen; IsValid = data.GatewayFound && data.PortOpen;
} }
catch (Exception e) catch (Exception e)
{ {

View File

@ -12,7 +12,7 @@ namespace ScreenLogicConnect
{ {
public static void SendHLMessage(this NetworkStream stream, Messages.HLMessage msg) public static void SendHLMessage(this NetworkStream stream, Messages.HLMessage msg)
{ {
var arr = msg.asByteArray(); var arr = msg.AsByteArray();
System.Diagnostics.Debug.WriteLine($" sent {arr.Length}"); System.Diagnostics.Debug.WriteLine($" sent {arr.Length}");
stream.Write(arr, 0, arr.Length); stream.Write(arr, 0, arr.Length);
} }
@ -21,7 +21,7 @@ namespace ScreenLogicConnect
{ {
bw.Write(val.Length); bw.Write(val.Length);
bw.Write(Encoding.ASCII.GetBytes(val)); bw.Write(Encoding.ASCII.GetBytes(val));
bw.Write(new byte[HLMessageTypeHelper.alignToNext4Boundary(val.Length)]); bw.Write(new byte[HLMessageTypeHelper.AlignToNext4Boundary(val.Length)]);
} }
public static void WritePrefixLength(this BinaryWriter bw, byte[] val) public static void WritePrefixLength(this BinaryWriter bw, byte[] val)

View File

@ -15,7 +15,7 @@ namespace ScreenLogicConnect
}; };
protected const short multicastPort = 1444; protected const short multicastPort = 1444;
private Socket searchSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); private readonly Socket searchSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
public static async Task<List<EasyTouchUnit>> Find() public static async Task<List<EasyTouchUnit>> Find()
{ {
@ -33,7 +33,7 @@ namespace ScreenLogicConnect
if (buf != null && buf.RemoteEndPoint != null) if (buf != null && buf.RemoteEndPoint != null)
{ {
var findServerResponse = new EasyTouchUnit(buf); var findServerResponse = new EasyTouchUnit(buf);
if (findServerResponse.isValid) if (findServerResponse.IsValid)
{ {
units.Add(findServerResponse); units.Add(findServerResponse);
} }

View File

@ -5,7 +5,7 @@ namespace ScreenLogicConnect.Messages
{ {
public class ChallengeString : HLMessage public class ChallengeString : HLMessage
{ {
public String challengeString { get; private set; } public string ChallengeStr { get; private set; }
public const short HLM_CLIENT_CHALLENGE = 14; public const short HLM_CLIENT_CHALLENGE = 14;
@ -29,13 +29,13 @@ namespace ScreenLogicConnect.Messages
{ {
} }
protected override void decode() protected override void Decode()
{ {
using (var ms = new MemoryStream(data)) using (var ms = new MemoryStream(data))
{ {
using (var br = new BinaryReader(dataByteStream)) using (var br = new BinaryReader(dataByteStream))
{ {
challengeString = HLMessageTypeHelper.extractString(br); ChallengeStr = HLMessageTypeHelper.ExtractString(br);
} }
} }
} }

View File

@ -24,7 +24,7 @@ namespace ScreenLogicConnect.Messages
{ {
} }
public override byte[] asByteArray() public override byte[] AsByteArray()
{ {
using (var ms = new MemoryStream()) using (var ms = new MemoryStream())
{ {
@ -40,7 +40,7 @@ namespace ScreenLogicConnect.Messages
data = ms.ToArray(); data = ms.ToArray();
} }
return base.asByteArray(); return base.AsByteArray();
} }
} }
} }

View File

@ -46,7 +46,7 @@ namespace ScreenLogicConnect.Messages
{ {
} }
public override byte[] asByteArray() public override byte[] AsByteArray()
{ {
using (var ms = new MemoryStream()) using (var ms = new MemoryStream())
{ {
@ -59,10 +59,10 @@ namespace ScreenLogicConnect.Messages
data = ms.ToArray(); data = ms.ToArray();
} }
return base.asByteArray(); return base.AsByteArray();
} }
protected override void decode() protected override void Decode()
{ {
using (var ms = new MemoryStream(data)) using (var ms = new MemoryStream(data))
{ {
@ -79,7 +79,7 @@ namespace ScreenLogicConnect.Messages
m_HWType = br.ReadByte(); m_HWType = br.ReadByte();
m_ControllerData = br.ReadByte(); m_ControllerData = br.ReadByte();
m_EquipFlags = br.ReadInt32(); m_EquipFlags = br.ReadInt32();
m_genCircuitName = HLMessageTypeHelper.extractString(br); m_genCircuitName = HLMessageTypeHelper.ExtractString(br);
m_CircuitCount = br.ReadInt32(); m_CircuitCount = br.ReadInt32();
bodyArray = new BodyDataStructure[m_CircuitCount]; bodyArray = new BodyDataStructure[m_CircuitCount];
for (int i = 0; i < m_CircuitCount; i++) for (int i = 0; i < m_CircuitCount; i++)
@ -87,7 +87,7 @@ namespace ScreenLogicConnect.Messages
bodyArray[i] = new BodyDataStructure() bodyArray[i] = new BodyDataStructure()
{ {
m_circuitID = br.ReadInt32(), m_circuitID = br.ReadInt32(),
m_name = HLMessageTypeHelper.extractString(br), m_name = HLMessageTypeHelper.ExtractString(br),
m_nameIndex = br.ReadByte(), m_nameIndex = br.ReadByte(),
m_function = br.ReadByte(), m_function = br.ReadByte(),
m_interface = br.ReadByte(), m_interface = br.ReadByte(),
@ -105,7 +105,7 @@ namespace ScreenLogicConnect.Messages
m_ColorArray = new PentLightColor[colorCount]; m_ColorArray = new PentLightColor[colorCount];
for (int i = 0; i < colorCount; i++) for (int i = 0; i < colorCount; i++)
{ {
m_ColorArray[i] = new PentLightColor(HLMessageTypeHelper.extractString(br), HLMessageTypeHelper.extractColor(br)); m_ColorArray[i] = new PentLightColor(HLMessageTypeHelper.ExtractString(br), HLMessageTypeHelper.ExtractColor(br));
} }
for (int i = 0; i < PUM_CIRC_COUNT; i++) for (int i = 0; i < PUM_CIRC_COUNT; i++)
{ {

View File

@ -19,9 +19,10 @@ namespace ScreenLogicConnect.Messages
public static GetGatewayData QUERY(string systemName, short senderID = 0) public static GetGatewayData QUERY(string systemName, short senderID = 0)
{ {
var ret = new GetGatewayData(senderID, HLM_GETGATEWAYDATA); return new GetGatewayData(senderID, HLM_GETGATEWAYDATA)
ret.GatewayName = systemName; {
return ret; GatewayName = systemName,
};
} }
public GetGatewayData(short senderID, short msgID) public GetGatewayData(short senderID, short msgID)
@ -34,7 +35,7 @@ namespace ScreenLogicConnect.Messages
{ {
} }
public override byte[] asByteArray() public override byte[] AsByteArray()
{ {
using (var ms = new MemoryStream()) using (var ms = new MemoryStream())
{ {
@ -47,10 +48,10 @@ namespace ScreenLogicConnect.Messages
data = ms.ToArray(); data = ms.ToArray();
} }
return base.asByteArray(); return base.AsByteArray();
} }
protected override void decode() protected override void Decode()
{ {
using (var ms = new MemoryStream(data)) using (var ms = new MemoryStream(data))
{ {
@ -58,7 +59,7 @@ namespace ScreenLogicConnect.Messages
{ {
GatewayFound = br.ReadBoolean(); GatewayFound = br.ReadBoolean();
LicenseOK = br.ReadBoolean(); LicenseOK = br.ReadBoolean();
IPAddr = HLMessageTypeHelper.extractString(br); IPAddr = HLMessageTypeHelper.ExtractString(br);
Port = br.ReadInt16(); Port = br.ReadInt16();
PortOpen = br.ReadBoolean(); PortOpen = br.ReadBoolean();
RelayOn = br.ReadBoolean(); RelayOn = br.ReadBoolean();

View File

@ -50,7 +50,7 @@ namespace ScreenLogicConnect.Messages
{ {
} }
public override byte[] asByteArray() public override byte[] AsByteArray()
{ {
using (var ms = new MemoryStream()) using (var ms = new MemoryStream())
{ {
@ -62,10 +62,10 @@ namespace ScreenLogicConnect.Messages
data = ms.ToArray(); data = ms.ToArray();
} }
return base.asByteArray(); return base.AsByteArray();
} }
protected override void decode() protected override void Decode()
{ {
using (var ms = new MemoryStream(data)) using (var ms = new MemoryStream(data))
{ {

View File

@ -42,7 +42,7 @@ namespace ScreenLogicConnect.Messages
bw.Write(dataArray); bw.Write(dataArray);
} }
decode(); Decode();
} }
public HLMessage(HLMessage msg) public HLMessage(HLMessage msg)
@ -50,7 +50,7 @@ namespace ScreenLogicConnect.Messages
{ {
} }
public virtual byte[] asByteArray() public virtual byte[] AsByteArray()
{ {
var dataLength = this.data?.Length ?? 0; var dataLength = this.data?.Length ?? 0;
byte[] result = new byte[dataLength + this.header.Length]; byte[] result = new byte[dataLength + this.header.Length];
@ -67,27 +67,27 @@ namespace ScreenLogicConnect.Messages
return result; return result;
} }
public static int extractDataSize(byte[] data) public static int ExtractDataSize(byte[] data)
{ {
return BitConverter.ToInt32(data, 4); return BitConverter.ToInt32(data, 4);
} }
public short getMessageID() public short GetMessageID()
{ {
return BitConverter.ToInt16(header, 2); return BitConverter.ToInt16(header, 2);
} }
public short getMessageSender() public short GetMessageSender()
{ {
return BitConverter.ToInt16(header, 0); return BitConverter.ToInt16(header, 0);
} }
public String getMessageIDasString() public string GetMessageIDasString()
{ {
return getMessageID().ToString(); return GetMessageID().ToString();
} }
protected virtual void decode() protected virtual void Decode()
{ {
} }
} }

View File

@ -5,10 +5,10 @@ namespace ScreenLogicConnect.Messages
{ {
public class HLMessageTypeHelper public class HLMessageTypeHelper
{ {
public static String extractString(BinaryReader br) public static string ExtractString(BinaryReader br)
{ {
var len = br.ReadInt32(); var len = br.ReadInt32();
var str = new String(br.ReadChars(len)); var str = new string(br.ReadChars(len));
while (len % 4 != 0) while (len % 4 != 0)
{ {
br.Read(); br.Read();
@ -18,7 +18,7 @@ namespace ScreenLogicConnect.Messages
return str; return str;
} }
public static RgbColor extractColor(BinaryReader br) public static RgbColor ExtractColor(BinaryReader br)
{ {
return new RgbColor( return new RgbColor(
(byte)(br.ReadInt32() & 0xff), (byte)(br.ReadInt32() & 0xff),
@ -27,7 +27,7 @@ namespace ScreenLogicConnect.Messages
); );
} }
public static int alignToNext4Boundary(int val) public static int AlignToNext4Boundary(int val)
{ {
int sub = val % 4; int sub = val % 4;
return sub == 0 ? 0 : 4 - sub; return sub == 0 ? 0 : 4 - sub;

View File

@ -25,7 +25,7 @@ namespace Test
{ {
foreach (var server in servers) foreach (var server in servers)
{ {
if (server.isValid) if (server.IsValid)
{ {
await ConnectToUnit(server); await ConnectToUnit(server);
break; break;
@ -33,7 +33,7 @@ namespace Test
} }
} }
if (servers == null || servers.Count == 0 || !servers.Any(x => x.isValid)) if (servers == null || servers.Count == 0 || !servers.Any(x => x.IsValid))
{ {
Console.WriteLine("No local units found."); Console.WriteLine("No local units found.");
} }
@ -42,7 +42,7 @@ namespace Test
static async Task DoRemoteConnect(string systemName, string systemPassword) static async Task DoRemoteConnect(string systemName, string systemPassword)
{ {
var unit = await ScreenLogicConnect.RemoteConnect.GetGatewayInfo(systemName); var unit = await ScreenLogicConnect.RemoteConnect.GetGatewayInfo(systemName);
if (unit.isValid) if (unit.IsValid)
{ {
await ConnectToUnit(unit, systemPassword); await ConnectToUnit(unit, systemPassword);
} }

View File

@ -19,7 +19,7 @@ namespace ScreenLogicConnect
} }
client = new TcpClient(); client = new TcpClient();
await client.ConnectAsync(unit.ipAddress, unit.port); await client.ConnectAsync(unit.IPAddress, unit.Port);
var connMsg = CreateConnectServerSoftMessage(); var connMsg = CreateConnectServerSoftMessage();
var stream = client.GetStream(); var stream = client.GetStream();
@ -37,7 +37,7 @@ namespace ScreenLogicConnect
using (var br = new BinaryReader(ms)) using (var br = new BinaryReader(ms))
{ {
br.ReadBytes(8); br.ReadBytes(8);
challengeStr = Messages.HLMessageTypeHelper.extractString(br); challengeStr = Messages.HLMessageTypeHelper.ExtractString(br);
} }
} }
@ -87,7 +87,7 @@ namespace ScreenLogicConnect
catch { } catch { }
} }
int msgDataSize = Messages.HLMessage.extractDataSize(headerBuffer); int msgDataSize = Messages.HLMessage.ExtractDataSize(headerBuffer);
if (msgDataSize <= 0 || msgDataSize >= 100000) if (msgDataSize <= 0 || msgDataSize >= 100000)
{ {
return null; return null;