示例#1
0
        public static void Run(byte[] _beanData)
        {
            Log.Info("BeanMgr", "Run Bean data, size is  [{0}]", _beanData.Length);
            int    beanSize;
            string beanJson = takeBeanJsonFromData(_beanData, out beanSize);

            Log.Info("BeanMgr", "Run Bean {0}", beanJson);
            parseBeanJson(beanJson);
            int offset = 4 + beanSize;

            int ugcfiles_count = bytesToInt(_beanData, offset);

            offset += 4;
            Log.Info("BeanMgr", "has {0} ugc files", ugcfiles_count);
            //skip ugcfiles_count;

            for (int i = 0; i < ugcfiles_count; ++i)
            {
                int size_ugcfile_filename = bytesToInt(_beanData, offset);
                offset += 4;
                string filename = bytesToString(_beanData, offset, size_ugcfile_filename);
                Log.Info("BeanMgr", "take ugcfile : [{0}]", filename);
                offset += size_ugcfile_filename;
                int size_ugcfile_data = bytesToInt(_beanData, offset);
                offset += 4;
                byte[] filedata = new byte[size_ugcfile_data];
                System.Array.Copy(_beanData, offset, filedata, 0, size_ugcfile_data);
                UGCMgr.Cache(filename, filedata);
                offset += size_ugcfile_data;
            }

            int cachefiles_count = bytesToInt(_beanData, offset);

            offset += 4;
            Log.Info("BeanMgr", "has {0} cache files", cachefiles_count);
            //skip ugcfiles_count;
            for (int i = 0; i < cachefiles_count; ++i)
            {
                int size_cachefile_filename = bytesToInt(_beanData, offset);
                offset += 4;
                string filename = bytesToString(_beanData, offset, size_cachefile_filename);
                Log.Info("BeanMgr", "take cachefile : [{0}]", filename);
                offset += size_cachefile_filename;
                int size_cachefile_data = bytesToInt(_beanData, offset);
                offset += 4;
                byte[] filedata = new byte[size_cachefile_data];
                System.Array.Copy(_beanData, offset, filedata, 0, size_cachefile_data);
                offset += size_cachefile_data;

                UGCMgr.Cache(filename, filedata);
            }

            SlateMgr.Run();
        }
示例#2
0
 public static void Run(string _beanJson)
 {
     Log.Info("BeanMgr", "Run Bean {0}", _beanJson);
     parseBeanJson(_beanJson);
     SlateMgr.Run();
 }