示例#1
0
            private IEnumerator TryConnectRestClient(RestClient client, string address, int port)
            {
                // Tries a connection, stores result in a RestDataContainer for future reference.
                RestDataContainer result = new RestDataContainer(this, client.TryConnect(address, port));

                //Debug.Log(string.Format("Result: {0}",((UnityWebRequestAsyncOperation)result.result).webRequest.responseCode));
                yield return(result.coroutine);

                // HERE we can make the check whether it is connected or not. Connection to CommBridge comes later.
                Debug.Log(string.Format("{2} :: Connected to client @ {0}:{1}", address, port,
                                        client.isConnected));
                //ADD TO LIST
                var clientIO = gameObject.GetComponent(client.clientType);

                if (client.isConnected)   // Currently failing
                {
                    connected.Add(client.address);
                }
                else
                {
                    if (!tryAgainSockets.ContainsKey(client.name))
                    {
                        Debug.Log(string.Format("Adding socket {0}@{1} to tryAgainRest", client.name, client.address));
                        tryAgainSockets.Add(client.address, client.clientType);
                    }
                }
            }
示例#2
0
            public IEnumerator Get(string route)
            {
                Debug.Log(string.Format("RestClient GET from {0}", string.Format("{0}:{1}/{2}", address, port, route)));
                RestDataContainer result = new RestDataContainer(owner,
                                                                 Request(string.Format("{0}:{1}/{2}", address, port, route), "GET", null, "GET_" + successStr, "GET_" + errorStr));

                yield return(result.coroutine);
            }
示例#3
0
            public IEnumerator TryConnect(string _address, int _port)
            {
                address = _address;
                port    = _port;
                RestDataContainer result = new RestDataContainer(owner, Post("", "0"));

                yield return(result.result);
            }
示例#4
0
            public IEnumerator Delete(string route, string jsonPayload)
            {
                Debug.Log(string.Format("RestClient DELETE from {0}", string.Format("{0}:{1}/{2}", address, port, route)));
                RestDataContainer result = new RestDataContainer(owner,
                                                                 Request(string.Format("{0}:{1}/{2}", address, port, route), "DELETE", jsonPayload, "DELETE_" + successStr, "DELETE_" + errorStr));

                yield return(result.coroutine);
            }
示例#5
0
            public IEnumerator Post(string route, string jsonPayload)
            {
                Debug.Log(string.Format("RestClient POST to {0}", string.Format("{0}:{1}/{2}", address, port, route)));
                RestDataContainer result = new RestDataContainer(owner,
                                                                 Request(string.Format("{0}:{1}/{2}", address, port, route), "POST", jsonPayload, "POST_" + successStr, "POST_" + errorStr));

                //Debug.Log(string.Format("RestClient.Post: {0}", result));
                yield return(result.result);
            }
示例#6
0
    public void Post(string route, string content)
    {
        RestDataContainer result = new RestDataContainer(this, wordcloudrestclient.Post(route, content));

        //if (result.result.webRequest.isNetworkError) {
        //    gameObject.BroadcastMessage(_wordcloudrestclient.ErrorStr, result.result.webRequest.error, SendMessageOptions.DontRequireReceiver);
        //}
        //else if (result.result.webRequest.responseCode < 200 || result.result.webRequest.responseCode >= 400) {
        //    gameObject.BroadcastMessage(_wordcloudrestclient.ErrorStr, result.result.webRequest.downloadHandler.text,
        //        SendMessageOptions.DontRequireReceiver);
        //}
        //else {
        //    //Debug.Log (webRequest.downloadHandler.text);
        //    gameObject.BroadcastMessage(_wordcloudrestclient.SuccessStr, result.result.webRequest.downloadHandler.text);
        //}
    }
示例#7
0
    public void Get(string route)
    {
        RestDataContainer result = new RestDataContainer(this, EpiSimSocket.Get(route));

        //if (result.result.webRequest.isNetworkError) {
        //    gameObject.BroadcastMessage(_epiSimSocket.ErrorStr, result.result.webRequest.error, SendMessageOptions.DontRequireReceiver);
        //}
        //else if (result.result.webRequest.responseCode < 200 || result.result.webRequest.responseCode >= 400) {
        //    gameObject.BroadcastMessage(_epiSimSocket.ErrorStr, result.result.webRequest.downloadHandler.text,
        //        SendMessageOptions.DontRequireReceiver);
        //}
        //else {
        //    //Debug.Log (webRequest.downloadHandler.text);
        //    gameObject.BroadcastMessage(_epiSimSocket.SuccessStr, result.result.webRequest.downloadHandler.text);
        //}
    }
示例#8
0
            private IEnumerator Request(string url, string method, string jsonPayload, string success, string error)
            {
                //StartCoroutine(AsyncRequest(jsonPayload, method, url, success, error));
                //IEnumerator r = AsyncRequest(jsonPayload, method, url, success, error);
                //yield return r;
                //Debug.Log((UnityWebRequest)r);
                //Debug.Log(r.GetType());
                //Debug.Log(r.Current);
                //Debug.Log(r.Current.GetType());
                //url = url.Replace(":0/", ""); // filler port from before. Might as well handle it here
                //Debug.LogWarning("URL for request: " + url);
                Debug.Log(string.Format("RestClient Request {1} to {0}", url, method));
                RestDataContainer result = new RestDataContainer(owner, AsyncRequest(jsonPayload, method, url, success, error));

                //Debug.Log(string.Format("RestClient.Request: {0}", result));
                yield return(result.result);
            }