public GpspClient(GamespyTcpStream client)
{
// Set disposed to false!
this.Disposed = false;
// Generate a unique name for this connection
this.ConnectionId = Interlocked.Increment(ref SessionsCreated);
// Init a new client stream class
Stream = client;
Stream.OnDisconnect += () => Dispose();
Stream.DataReceived += (message) =>
{
// Read client message, and parse it into key value pairs
string[] recieved = message.TrimStart('\\').Split('\\');
switch (recieved[0])
{
case "nicks":
SendNicks(ConvertToKeyValue(recieved));
break;
case "check":
SendCheck(ConvertToKeyValue(recieved));
break;
}
};
}