/// <summary>
        /// Get the texture and return the DESC sort order
        /// </summary>
        private void GetResByType(string message, object callback)
        {
#if APLUS_DEV
            var now = DateTime.Now;
#endif
            if (string.IsNullOrEmpty(message))
            {
                throw new Exception("no message provide");
            }

            string json = "[]";

            switch (message.ToLower())
            {
            case AssetType.TEXTURES:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Texture);
                break;

            case AssetType.MODELS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Model);
                break;

            case AssetType.AUDIOS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.AudioClip);
                break;

            case AssetType.MOVIES:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.MovieTexture);
                break;

            case AssetType.FONTS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Font);
                break;

            case AssetType.MATERIALS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Material);
                break;

            case AssetType.SHADERS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Shader);
                break;

            case AssetType.ANIMATIONS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.AnimationClip);
                break;

            case AssetType.PREFABS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Prefab);
                break;

            case AssetType.STREAMING_ASSETS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.StreamingAssets);
                break;

            case AssetType.CODE:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Script);
                break;

            case AssetType.BLACKLIST:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Blacklist);
                break;

            case AssetType.OTHERS:
                json = APCache.GetAssetsLitJsonByTypeFromCache(APAssetType.Others);
                break;

            case "hierarchy":
                json = GetHierarchyAssetsListJson();
                break;

            default:
                break;
            }

            json = CLZF2_Base64(json);
            wrap = new CallbackWrapper(callback);
            wrap.Send(json);

#if APLUS_DEV
            Utility.DebugLog(String.Format("Load Res {0} cost {1} ms", message, (DateTime.Now - now).TotalMilliseconds));
#endif
        }