コード例 #1
0
        void IAssetService.Get(string id, object sender, AssetRetrieved handler)
        {
            List <string> serverURIs = m_registry.RequestModuleInterface <IConfigurationService>().FindValueOf("AssetServerURI");

            //if (m_serverURL != string.Empty)
            //    serverURIs = new List<string>(new string[1] { m_serverURL });
            foreach (string m_ServerURI in serverURIs)
            {
                string uri = m_ServerURI + "/" + id;

                Aurora.Framework.AssetBase asset = null;
                if (m_Cache != null)
                {
                    asset = m_Cache.Get(id);
                }

                if (asset == null)
                {
                    AsynchronousRestObjectRequester.
                    MakeRequest <int, AssetBase>("GET", uri, 0,
                                                 delegate(AssetBase a)
                    {
                        handler(id, sender, TearDown(a));
                    });
                }
                else
                {
                    handler(id, sender, asset);
                }
            }
        }
コード例 #2
0
        public bool Get(string id, object sender, AssetRetrieved handler)
        {
            List <string> serverURIs =
                m_registry.RequestModuleInterface <IConfigurationService>().FindValueOf("AssetServerURI");

            if (m_serverURL != string.Empty)
            {
                serverURIs = new List <string>(new string[1] {
                    m_serverURL
                });
            }
            foreach (string m_ServerURI in serverURIs)
            {
                string uri = m_ServerURI + "/" + id;

                Aurora.Framework.AssetBase asset = null;
                if (m_Cache != null)
                {
                    asset = m_Cache.Get(id);
                }

                if (asset == null)
                {
                    bool result = false;

                    AsynchronousRestObjectRequester.
                    MakeRequest("GET", uri, 0,
                                delegate(AssetBase aa)
                    {
                        Aurora.Framework.AssetBase a = TearDown(aa);
                        if (m_Cache != null)
                        {
                            m_Cache.Cache(a.IDString, a);
                        }
                        handler(id, sender, a);
                        result = true;
                    });

                    if (result)
                    {
                        return(result);
                    }
                }
                else
                {
                    handler(id, sender, asset);
                    return(true);
                }
            }

            return(false);
        }