public override void ResponseReceived(string response)
        {
            JObject jObject;

            try
            {
                jObject = JObject.Parse(response);
            }
            catch (JsonReaderException)
            {
                return;
            }

            if (jObject["Solution"] == null)
            {
                OnGameReceived?.Invoke(this, response);
                return;
            }

            OnSolutionReceived?.Invoke(this, jObject["Solution"].ToString());
        }
Пример #2
0
        private void HandleSolutionReceived(IAsyncResult ar)
        {
            if (ar.IsNull() || ((AsyncResult)ar).AsyncDelegate.IsNull())
            {
                throw new ArgumentNullException("ar");
            }

            if (!ar.IsNull())
            {
                var expr = ar.AsyncState as string;
                var proc = (ExpressionProcessorMethod)(((AsyncResult)ar).AsyncDelegate);

                if (!proc.IsNull())
                {
                    var solution = proc.EndInvoke(ar);

                    if (!OnSolutionReceived.IsNull())
                    {
                        OnSolutionReceived(solution, expr);
                    }
                }
            }
        }