private IEnumerator CoExecuteRequest(UnityWebRequest www, Dictionary <string, string> postData)
        {
            www.SendWebRequest();

            float elapsedTime = 0.0f;

            while (!www.isDone)
            {
                elapsedTime += Time.deltaTime;
                if (elapsedTime >= connectionData.timeOutLimit)
                {
                    Drive.HandleError("Operation timed out, connection aborted. Check your internet connection and try again.", elapsedTime);
                    yield break;
                }

                yield return(null);
            }

            if (www.isNetworkError)
            {
                Drive.HandleError("Connection error after " + elapsedTime.ToString() + " seconds: " + www.error, elapsedTime);
                yield break;
            }

            Drive.ProcessResponse(www.downloadHandler.text, elapsedTime);
        }
        private void EditorUpdate()
        {
            while (!_www.isDone)
            {
                _elapsedTime = EditorApplication.timeSinceStartup - _startTime;
                if (_elapsedTime >= connectionData.timeOutLimit)
                {
                    Drive.ProcessResponse("TIME_OUT", (float)_elapsedTime);
                    EditorApplication.update -= EditorUpdate;
                }
                return;
            }

            if (_www.isNetworkError)
            {
                Drive.ProcessResponse("Connection error after " + _elapsedTime.ToString() + " seconds: " + _www.error, (float)_elapsedTime);
                return;
            }

            Drive.ProcessResponse(_www.downloadHandler.text, (float)_elapsedTime);

            EditorApplication.update -= EditorUpdate;
        }