protected void loadByJsonData(SdNode config, String json)
        {
            ONode data = ONode.tryLoad(json);

            if (DdSource.isBook(config))
            {
                if (TextUtils.isEmpty(shop))
                {
                    logo  = data.get("logo").getString();
                    name  = data.get("name").getString();
                    shop  = data.get("shop").getString();
                    intro = data.get("intro").getString();

                    buyUrl = data.get("buyUrl").getString();
                }
            }

            ONode sl = data.get("pictures").asArray();

            foreach (ONode n in sl)
            {
                PicModel pic = new PicModel(bookUrl, n.getString());

                pictures.Add(pic);
            }
        }
Beispiel #2
0
        public void loadByJson(SdNode config, params String[] jsons)
        {
            if (jsons == null || jsons.Length == 0)
            {
                return;
            }

            foreach (String json in jsons)   //支持多个数据块加载
            {
                ONode data = ONode.tryLoad(json).asArray();

                if (DdSource.isHots(config))
                {
                    foreach (ONode n in data)
                    {
                        BookModel b = new BookModel();
                        b.name = n.get("name").getString();
                        b.url  = n.get("url").getString();
                        b.logo = n.get("logo").getString();

                        hotList.Add(b);
                    }
                    return;
                }

                if (DdSource.isUpdates(config))
                {
                    foreach (ONode n in data)
                    {
                        BookUpdateModel b = new BookUpdateModel();
                        b.name       = n.get("name").getString();
                        b.url        = n.get("url").getString();
                        b.logo       = n.get("logo").getString();
                        b.newSection = n.get("newSection").getString();
                        b.updateTime = n.get("updateTime").getString();

                        updateList.Add(b);
                    }
                    return;
                }

                if (DdSource.isTags(config))
                {
                    foreach (ONode n in data)
                    {
                        DdNode t1 = new DdNode(null);
                        t1.title = n.get("title").getString();
                        t1.url   = n.get("url").getString();
                        t1.group = n.get("group").getString();
                        t1.logo  = n.get("logo").getString();

                        doAddTagItem(t1);
                    }
                }
            }
        }
Beispiel #3
0
        //------------------
        //

        public void loadByConfig(SdNode config)
        {
            if (DdSource.isHots(config))
            {
                hotList.Clear();

                foreach (SdNode t1 in config.items())
                {
                    BookModel b = new BookModel();
                    b.name = t1.title;
                    b.url  = t1.url;
                    b.logo = t1.logo;

                    hotList.Add(b);
                }
                return;
            }

            if (DdSource.isUpdates(config))
            {
                updateList.Clear();

                foreach (SdNode t1 in config.items())
                {
                    BookUpdateModel b = new BookUpdateModel();
                    b.name = t1.title;
                    b.url  = t1.url;
                    b.logo = t1.logo;


                    updateList.Add(b);
                }
                return;
            }

            if (DdSource.isTags(config))
            {
                tagList.Clear();

                foreach (SdNode t1 in config.items())
                {
                    doAddTagItem(t1);
                }
                return;
            }
        }
Beispiel #4
0
        public virtual void loadByJson(SdNode config, params String[] jsons)
        {
            if (jsons == null || jsons.Length == 0)
            {
                return;
            }

            if (DdSource.isBook(config))
            {
                String json = jsons[0]; //不支持多个数据块加载
                ONode  data = ONode.tryLoad(json);

                name       = data.get("name").getString();
                author     = data.get("author").getString();
                intro      = data.get("intro").getString();
                logo       = data.get("logo").getString();
                updateTime = data.get("updateTime").getString();

                isSectionsAsc = data.get("isSectionsAsc").getInt() > 0;//默认为倒排
            }

            foreach (String json in jsons) //支持多个数据块加载
            {
                ONode data = ONode.tryLoad(json);
                ONode sl   = data.get("sections").asArray();

                foreach (ONode n in sl)
                {
                    SectionModel sec = newSection();
                    sec.name = n.get("name").getString();
                    sec.url  = n.get("url").getString();

                    sec.bookName = name;
                    sec.bookUrl  = bookUrl;

                    sec.orgIndex = total();


                    sections.Add(sec);

                    onAddItem(sec);
                }
            }
        }