void republish() // sample code with timeouts
    {
        publishedStateWrapper.id   = ++ctr;
        publishedStateWrapper.text = String.Format(" ---> {0}. Hello Node.Cpp!", ctr);
        if (ctr == 1)
        {
            publishedStateWrapper.html = html_text_tag_converter.htmlstring_to_htmltag(dummyHtml);
        }
        else
        {
            basic_test.IHtmlTag tag = publishedStateWrapper.html;
            if (tag.tags.currentVariant() == basic_test.HtmlTextOrTags_variants.text)
            {
                publishedStateWrapper.html.tags.str = String.Format("now my number is {0}", ctr + 10000);
            }
            else
            {
                publishedStateWrapper.html.name = String.Format("html_{0}", ctr + 2000);
            }
        }

        // GlobalMQ: at the end of each handler cause pools to post all updates
        Pool.postAllUpdates();

        //setTimeout( [this]() {
        //	republish();
        //}, 10 );
    }
Пример #2
0
    public static string htmltag_to_htmlstring(basic_test.IHtmlTag htmltag)
    {
        StringBuilder output = new StringBuilder();

        basic_test.HtmlTextOrTags_variants var = htmltag.tags.currentVariant();

        // add opened tag
        if (htmltag.name.Length != 0)
        {
            output.Append("<").Append(htmltag.name);

            if (htmltag.properties.Count != 0)
            {
                foreach (basic_test.IProperty prop in htmltag.properties)
                {
                    output.Append(prop.name).Append("=").Append(prop.value);
                }
            }
            output.Append(">");
        }

        // add inside content
        if (var == basic_test.HtmlTextOrTags_variants.taglists)
        {
            foreach (basic_test.IHtmlTag tag in htmltag.tags.tags)
            {
                //add text inside tag
                output.Append(htmltag_to_htmlstring(tag));
            }
        }
        else if (var == basic_test.HtmlTextOrTags_variants.text)
        {
            output.Append(htmltag.tags.str);
        }

        // add closed tag
        if (htmltag.name.Length != 0)
        {
            if (htmltag.name != "P") // condition for exceptions of singletags
            {
                output.Append("</").Append(htmltag.name).Append(">");
            }
        }


        return(output.ToString());
    }