Esempio n. 1
0
        internal async void SendSimInitializeRequest()
        {
            var serverUri = _communication.SimulatorServerUri;

            if (serverUri == null)
            {
                return;
            }

            var param0 = new GeneralSimInitializeRequestParams {
                SupportedFormats = _supportedScoreFileFormats
            };

            var @params = new object[] {
                param0
            };

            var rpcResult = await SendRequestAsync(serverUri, CommonProtocolMethodNames.General_SimInitialize, @params, null);

            if (!rpcResult.StatusCode.IsSuccessful())
            {
                // TODO: Handle HTTP protocol errors.
                return;
            }

            Debug.Assert(rpcResult.ResponseObject != null, "result.ResponseObject != null");

            if (!JsonRpcHelper.IsResponseValid(rpcResult.ResponseObject))
            {
                // TODO: Handle malformed RPC object.
                Debug.Print("RPC response is invalid.");
                return;
            }

            if (JsonRpcHelper.IsResponseSuccessful(rpcResult.ResponseObject))
            {
                var response = JsonRpcHelper.TranslateAsResponse(rpcResult.ResponseObject);

                Debug.Assert(response.Result != null, "response.Result != null");

                var result = response.GetResult <GeneralSimInitializeResponseResult>();

                Debug.Assert(result != null, nameof(result) + " != null");

                var selectedFormat = result.SelectedFormat;

                if (selectedFormat == null)
                {
                    // No common format
                }
                else
                {
                    // Select it as the common format
                }
            }
            else
            {
                var error = JsonRpcHelper.TranslateAsResponse(rpcResult.ResponseObject);
            }
        }
Esempio n. 2
0
        internal async void SendReloadRequest([NotNull] EditReloadRequestParams param0)
        {
            var serverUri = _communication.SimulatorServerUri;

            if (serverUri == null)
            {
                return;
            }

            var @params = new object[] {
                param0
            };

            var result = await SendRequestAsync(serverUri, CommonProtocolMethodNames.Edit_Reload, @params, null);

            if (!result.StatusCode.IsSuccessful())
            {
                // TODO: Handle HTTP protocol errors.
                return;
            }

            Debug.Assert(result.ResponseObject != null, "result.ResponseObject != null");

            if (!JsonRpcHelper.IsResponseValid(result.ResponseObject))
            {
                // TODO: Handle malformed RPC object.
                Debug.Print("RPC response is invalid.");
                return;
            }

            if (JsonRpcHelper.IsResponseSuccessful(result.ResponseObject))
            {
                var response = JsonRpcHelper.TranslateAsResponse(result.ResponseObject);
            }
            else
            {
                var error = JsonRpcHelper.TranslateAsResponse(result.ResponseObject);
            }
        }