Beispiel #1
0
        public void TestConverter()
        {
            var t = new ExtractTile("a");

            var json = JsonConvert.SerializeObject(t);

            Assert.True(true);
        }
Beispiel #2
0
        /// <summary>
        /// parse tile
        /// </summary>
        /// <param name="expression">tile expression</param>
        /// <returns>extract tile</returns>
        public static ExtractTile ParserTile(string expression)
        {
            expression = expression.Trim();
            var lines = Regex.Split(expression, @"\s+\[meta\]\n");

            var tile = new ExtractTile();
            var b    = ParserBase(lines.First());

            tile.Name      = b.Name;
            tile.Selectors = b.Selectors;
            if (lines.Length > 1)
            {
                tile.Metas = ParserMeta(lines.Last());
            }

            return(tile);
        }
Beispiel #3
0
        /// <summary>
        /// parse tile
        /// </summary>
        /// <param name="expression">tile expression</param>
        /// <returns>extract tile</returns>
        public static ExtractTile ParserTile(string expression)
        {
            expression = expression.Trim();
            var lines = Split(expression, new string[] { @"\s+\[meta\]", @"\s+\[paging\]" });

            var tile = new ExtractTile();

            foreach (var key in lines.Keys)
            {
                switch (key.Trim())
                {
                case "":
                {
                    var b = ParserBase(lines[key]);
                    tile.Name      = b.Name;
                    tile.Selectors = b.Selectors;
                    break;
                }

                case "[meta]":
                {
                    tile.Metas = ParserMeta(lines[key]);
                    break;
                }

                case "[paging]":
                {
                    var b = new ExtractBlock("_paging");
                    b.TileSelector = ParserTile(lines[key]);
                    tile.Paging    = b;
                    break;
                }
                }
            }

            return(tile);
        }