Exemplo n.º 1
0
        public static HashSet <string> GetSceneCids(ApiEnvironment environment, Vector2Int coords, Vector2Int size)
        {
            HashSet <string> sceneCids = new HashSet <string>();

            string url = GetScenesAPIUrl(environment, coords.x, coords.y, size.x, size.y);

            UnityWebRequest w = UnityWebRequest.Get(url);

            w.SendWebRequest();

            while (!w.isDone)
            {
            }

            if (!w.WebRequestSucceded())
            {
                throw new Exception($"Request error! Parcels couldn't be fetched! -- {w.error}");
            }

            ScenesAPIData scenesApiData = JsonUtility.FromJson <ScenesAPIData>(w.downloadHandler.text);

            Assert.IsTrue(scenesApiData != null, "Invalid response from ScenesAPI");
            Assert.IsTrue(scenesApiData.data != null, "Invalid response from ScenesAPI");

            foreach (var data in scenesApiData.data)
            {
                sceneCids.Add(data.root_cid);
            }

            return(sceneCids);
        }
Exemplo n.º 2
0
        public static HashSet <string> GetScenesCids(ApiEnvironment environment, List <Vector2Int> coords)
        {
            HashSet <string> sceneCids = new HashSet <string>();

            foreach (Vector2Int v in coords)
            {
                string url = GetScenesAPIUrl(environment, v.x, v.y, 0, 0);

                UnityWebRequest w = UnityWebRequest.Get(url);
                w.SendWebRequest();

                while (!w.isDone)
                {
                }

                if (!w.WebRequestSucceded())
                {
                    Debug.LogWarning($"Request error! Parcels couldn't be fetched! -- {w.error}");
                    continue;
                }

                ScenesAPIData scenesApiData = JsonUtility.FromJson <ScenesAPIData>(w.downloadHandler.text);

                Assert.IsTrue(scenesApiData != null, "Invalid response from ScenesAPI");
                Assert.IsTrue(scenesApiData.data != null, "Invalid response from ScenesAPI");

                foreach (var data in scenesApiData.data)
                {
                    sceneCids.Add(data.root_cid);
                }
            }

            return(sceneCids);
        }
Exemplo n.º 3
0
        public static HashSet <string> GetScenesCids(IWebRequest webRequest, ApiTLD tld, List <Vector2Int> coords)
        {
            HashSet <string> sceneCids = new HashSet <string>();

            foreach (Vector2Int v in coords)
            {
                string url = GetScenesAPIUrl(tld, v.x, v.y, 0, 0);

                DownloadHandler downloadHandler = null;

                try
                {
                    downloadHandler = webRequest.Get(url);
                }
                catch (HttpRequestException e)
                {
                    throw new HttpRequestException($"Request error! Parcels couldn't be fetched! -- {url} -- {e.Message}", e);
                }

                ScenesAPIData scenesApiData = JsonUtility.FromJson <ScenesAPIData>(downloadHandler.text);
                downloadHandler.Dispose();

                Assert.IsTrue(scenesApiData != null, "Invalid response from ScenesAPI");
                Assert.IsTrue(scenesApiData.data != null, "Invalid response from ScenesAPI");

                foreach (var data in scenesApiData.data)
                {
                    sceneCids.Add(data.root_cid);
                }
            }

            return(sceneCids);
        }