Example usage for org.jsoup.parser Tag valueOf

List of usage examples for org.jsoup.parser Tag valueOf

Introduction

In this page you can find the example usage for org.jsoup.parser Tag valueOf.

Prototype

public static Tag valueOf(String tagName) 

Source Link

Document

Get a Tag by name.

Usage

From source file:com.assignmentone.snippet.ComplicatedSnippet.java

private Element createElement() {
    Element ul = new Element(Tag.valueOf("ul"), "");
    ul.appendChild(new Element(Tag.valueOf("li"), "").appendText("This text is created by snippet.(1)"));
    ul.appendChild(new Element(Tag.valueOf("li"), "").appendText("This text is created by snippet.(2)"));
    ul.appendChild(new Element(Tag.valueOf("li"), "").appendText("This text is created by snippet.(3)"));
    return ul;//w w  w .j a va2 s .com
}

From source file:com.assignmentone.snippet.ShowCodeSnippet.java

private Element makeShowHtml(String file, String title, String contents) {

    // create the panel tag
    Element panel = new Element(Tag.valueOf("div"), "");
    panel.addClass("panel");
    panel.addClass("panel-default");

    Element heading = new Element(Tag.valueOf("div"), "");
    heading.addClass("panel-heading");

    Element body = new Element(Tag.valueOf("div"), "");
    body.addClass("panel-body");

    panel.appendChild(heading);//from www  .j a  v a 2s . c  o m
    panel.appendChild(body);

    // write title and file path
    String headStr = StringUtils.isEmpty(title) ? "" : title + ":";
    headStr += file;
    heading.appendText(headStr);

    // create the pre tag
    Element pre = new Element(Tag.valueOf("pre"), "");
    pre.addClass("prettyprint source");
    pre.attr("style", "overflow-x:auto");
    if (contents != null) {
        pre.appendChild(new Element(Tag.valueOf("span"), "").appendText(contents));
    }
    body.appendChild(pre);
    return panel;
}

From source file:com.astamuse.asta4d.web.form.flow.base.BasicFormFlowSnippetTrait.java

/**
 * We only render the form trace map when it exists
 * //w w w. j  a v a2  s .c o  m
 * @return
 */
default Renderer renderTraceId(String traceId) {
    if (StringUtils.isEmpty(traceId)) {
        return Renderer.create();
    } else {
        return Renderer.create(":root", new ElementSetter() {
            @Override
            public void set(Element elem) {
                Element hide = new Element(Tag.valueOf("input"), "");
                hide.attr("name", FormFlowConstants.FORM_FLOW_TRACE_ID_QUERY_PARAM);
                hide.attr("type", "hidden");
                hide.attr("value", traceId);
                elem.appendChild(hide);
            }
        });
    }
}

From source file:me.vertretungsplan.parser.SVPlanParser.java

@NotNull
SubstitutionSchedule parseSVPlanSchedule(List<Document> docs) throws IOException, JSONException {
    SubstitutionSchedule v = SubstitutionSchedule.fromData(scheduleData);

    for (Document doc : docs) {
        if (doc.select(".svp").size() > 0) {
            for (Element svp : doc.select(".svp")) {
                parseSvPlanDay(v, svp, doc);
            }/*from ww w  . j a  va2 s  . c o  m*/
        } else if (doc.select(".Trennlinie").size() > 0) {
            Element div = new Element(Tag.valueOf("div"), "");
            for (Node node : doc.body().childNodesCopy()) {
                if (node instanceof Element && ((Element) node).hasClass("Trennlinie")
                        && div.select("table").size() > 0) {
                    parseSvPlanDay(v, div, doc);
                    div = new Element(Tag.valueOf("div"), "");
                } else {
                    div.appendChild(node);
                }
            }
            parseSvPlanDay(v, div, doc);
        } else {
            parseSvPlanDay(v, doc, doc);
        }
    }

    v.setClasses(getAllClasses());
    v.setTeachers(getAllTeachers());
    return v;
}

From source file:com.astamuse.asta4d.web.form.field.SimpleFormFieldValueRenderer.java

protected Element createAlternativeDisplayElement(String nonNullString) {
    Element span = new Element(Tag.valueOf("span"), "");
    span.text(nonNullString);//w w  w .  j a v  a  2  s.  c o  m
    return span;
}

From source file:com.astamuse.asta4d.web.form.flow.base.AbstractFormFlowSnippet.java

/**
 * We only render the form trace map when it exists
 * //from   w w  w  . java2 s. c  o  m
 * @return
 */
protected Renderer renderTraceMapData() {
    if (StringUtils.isEmpty(formTraceMapStr)) {
        return Renderer.create();
    } else {
        return Renderer.create(":root", new ElementSetter() {
            @Override
            public void set(Element elem) {
                Element hide = new Element(Tag.valueOf("input"), "");
                hide.attr("name", FormFlowConstants.FORM_STEP_TRACE_MAP_STR);
                hide.attr("type", "hidden");
                hide.attr("value", formTraceMapStr);
                elem.appendChild(hide);
            }
        });
    }
}

From source file:com.astamuse.asta4d.web.form.field.impl.AbstractRadioAndCheckboxPrepareRenderer.java

@Override
public Renderer preRender(final String editSelector, final String displaySelector) {

    if (duplicateSelector != null && labelWrapperIndicatorAttr != null) {
        String msg = "duplicateSelector (%s) and labelWrapperIndicatorAttr (%s) cannot be specified at same time.";
        throw new IllegalArgumentException(String.format(msg, duplicateSelector, labelWrapperIndicatorAttr));
    }/*  w  w  w  . j a v  a2s.  c  o  m*/

    Renderer renderer = super.preRender(editSelector, displaySelector);

    renderer.disableMissingSelectorWarning();

    // create wrapper for input element
    final WrapperIdHolder wrapperIdHolder = new WrapperIdHolder();

    if (duplicateSelector == null && optionMap != null) {

        renderer.add(new Renderer(editSelector, new ElementTransformer(null) {
            @Override
            public Element invoke(Element elem) {

                if (wrapperIdHolder.wrapperId != null) {
                    throw new RuntimeException("The target of selector[" + editSelector
                            + "] must be unique but over than 1 target was found."
                            + "Perhaps you have specified an option value map on a group of elements "
                            + "which is intented to be treated as predefined static options by html directly.");
                }

                String id = elem.id();
                if (StringUtils.isEmpty(id)) {
                    String msg = "A %s input element must have id value being configured:%s";
                    throw new RuntimeException(String.format(msg, getTypeString(), elem.outerHtml()));
                }

                GroupNode wrapper = new GroupNode();

                // cheating the rendering engine for not skipping the rendering on group node
                wrapper.attr(ExtNodeConstants.GROUP_NODE_ATTR_TYPE,
                        ExtNodeConstants.GROUP_NODE_ATTR_TYPE_USERDEFINE);

                // put the input element under the wrapper node
                wrapper.appendChild(elem.clone());

                String wrapperId = IdGenerator.createId();
                wrapper.attr("id", wrapperId);

                wrapperIdHolder.inputId = id;
                wrapperIdHolder.wrapperId = wrapperId;

                // record the selector for against label
                if (labelWrapperIndicatorAttr == null) {
                    wrapperIdHolder.labelSelector = SelectorUtil.attr("label", "for", wrapperIdHolder.inputId);
                } else {
                    wrapperIdHolder.labelSelector = SelectorUtil.attr(labelWrapperIndicatorAttr,
                            wrapperIdHolder.inputId);
                }

                return wrapper;
            }
        }));

        renderer.add(":root", new Renderable() {
            @Override
            public Renderer render() {
                if (wrapperIdHolder.wrapperId == null) {
                    // for display mode?
                    return Renderer.create();
                }

                // remove the label element and cache it in warpperIdHolder, we will relocate it later(since we have to duplicate the
                // input
                // and label pair by given option value map, we have to make sure that the input and label elements are in same parent
                // node
                // which can be duplicated)
                Renderer renderer = Renderer.create().disableMissingSelectorWarning();
                renderer.add(new Renderer(wrapperIdHolder.labelSelector, new ElementTransformer(null) {
                    @Override
                    public Element invoke(Element elem) {
                        wrapperIdHolder.relocatingLabels.add(elem.clone());
                        return new GroupNode();
                    }

                }));

                return renderer.enableMissingSelectorWarning();
            }
        });

        renderer.add(":root", new Renderable() {
            @Override
            public Renderer render() {

                if (wrapperIdHolder.wrapperId == null) {
                    // for display mode?
                    return Renderer.create();
                }

                String selector = SelectorUtil.id(wrapperIdHolder.wrapperId);

                // relocate the label element to the wrapper node
                return Renderer.create(selector, new ElementSetter() {
                    @Override
                    public void set(Element elem) {
                        if (wrapperIdHolder.relocatingLabels.isEmpty()) {// no existing label found
                            Element label = new Element(Tag.valueOf("label"), "");
                            label.attr("for", wrapperIdHolder.inputId);
                            elem.appendChild(label);
                        } else {
                            for (Element label : wrapperIdHolder.relocatingLabels) {
                                elem.appendChild(label);
                            }
                        }
                    }
                });

            }
        });

    } else {
        if (duplicateSelector != null && optionMap != null) {
            // if duplicateSelector is specified, we just only need to store the input element id
            renderer.add(editSelector, new ElementSetter() {
                @Override
                public void set(Element elem) {
                    if (wrapperIdHolder.inputId != null) {
                        String msg = "The target of selector[%s] (inside duplicator:%s) must be unique but over than 1 target was found.";
                        throw new RuntimeException(String.format(msg, editSelector, duplicateSelector));
                    }
                    String id = elem.id();
                    if (StringUtils.isEmpty(id)) {
                        String msg = "A %s input element (inside duplicator:%s) must have id value being configured:%s";
                        throw new RuntimeException(
                                String.format(msg, getTypeString(), duplicateSelector, elem.outerHtml()));
                    }
                    wrapperIdHolder.inputId = id;

                    // record the selector for against label
                    // labelWrapperIndicatorAttr would not be null since we checked it at the entry of this method.
                    wrapperIdHolder.labelSelector = SelectorUtil.attr("label", "for", wrapperIdHolder.inputId);
                }
            });
        }
    }

    // here we finished restructure the input element and its related label element and then we begin to manufacture all the input/label
    // pairs for option list

    renderer.add(":root", new Renderable() {
        @Override
        public Renderer render() {

            if (optionMap == null) {
                // for static options
                Renderer renderer = Renderer.create();
                final List<String> inputIdList = new LinkedList<>();
                renderer.add(editSelector, new ElementSetter() {
                    @Override
                    public void set(Element elem) {
                        inputIdList.add(elem.id());
                    }
                });
                renderer.add(":root", new Renderable() {
                    @Override
                    public Renderer render() {
                        Renderer render = Renderer.create().disableMissingSelectorWarning();
                        for (String id : inputIdList) {
                            render.add(SelectorUtil.attr(labelWrapperIndicatorAttr, id), LABEL_REF_ATTR, id);
                            render.add(SelectorUtil.attr("label", "for", id), LABEL_REF_ATTR, id);
                        }
                        return render.enableMissingSelectorWarning();
                    }
                });

                if (duplicateSelector != null) {
                    renderer.add(duplicateSelector, new Renderable() {
                        @Override
                        public Renderer render() {
                            String duplicatorRef = IdGenerator.createId();
                            Renderer render = Renderer.create(":root", DUPLICATOR_REF_ID_ATTR, duplicatorRef);
                            render.add("input", DUPLICATOR_REF_ATTR, duplicatorRef);
                            String labelSelector;
                            if (labelWrapperIndicatorAttr == null) {
                                labelSelector = SelectorUtil.tag("label");
                            } else {
                                labelSelector = SelectorUtil.attr(labelWrapperIndicatorAttr);
                            }
                            render.add(labelSelector, DUPLICATOR_REF_ATTR, duplicatorRef);
                            return render;
                        }
                    });
                }
                return renderer;
            } else {
                if (wrapperIdHolder.wrapperId == null && duplicateSelector == null) {
                    // for display mode?
                    return Renderer.create();
                }
                if (wrapperIdHolder.inputId == null) {
                    // target input element not found
                    return Renderer.create();
                }
                String selector = duplicateSelector == null ? SelectorUtil.id(wrapperIdHolder.wrapperId)
                        : duplicateSelector;
                return Renderer.create(selector, optionMap.getOptionList(), row -> {

                    Renderer renderer = Renderer.create().disableMissingSelectorWarning();

                    String inputSelector = SelectorUtil.id("input", wrapperIdHolder.inputId);
                    renderer.add(inputSelector, "value", row.getValue());

                    // we have to generate a new uuid for the input element to make sure its id is unique even we duplicated it.
                    String newInputId = inputIdByValue ? row.getValue() : IdGenerator.createId();

                    // make the generated id more understandable by prefixing with original id
                    newInputId = wrapperIdHolder.inputId + "-" + newInputId;

                    String duplicatorRef = null;

                    if (duplicateSelector != null) {
                        duplicatorRef = IdGenerator.createId();
                    }

                    renderer.add(":root", DUPLICATOR_REF_ID_ATTR, duplicatorRef);

                    renderer.add(inputSelector, DUPLICATOR_REF_ATTR, duplicatorRef);
                    renderer.add(inputSelector, "id", newInputId);

                    // may be a wrapper container of label
                    renderer.add(wrapperIdHolder.labelSelector, LABEL_REF_ATTR, newInputId);
                    if (labelWrapperIndicatorAttr != null) {
                        renderer.add(wrapperIdHolder.labelSelector, labelWrapperIndicatorAttr, newInputId);
                    }
                    renderer.add(wrapperIdHolder.labelSelector, DUPLICATOR_REF_ATTR, duplicatorRef);

                    renderer.add("label", "for", newInputId);
                    renderer.add("label", row.getDisplayText());

                    return renderer.enableMissingSelectorWarning();
                });
            }
        }
    });

    // since we cheated the rendering engine, we should set the type of group node created to faked for fast clean up
    renderer.add(":root", new Renderable() {
        @Override
        public Renderer render() {
            if (wrapperIdHolder.wrapperId == null) {
                // for display mode?
                return Renderer.create();
            }
            String selector = SelectorUtil.id(wrapperIdHolder.wrapperId);
            return Renderer.create(selector, new ElementSetter() {
                @Override
                public void set(Element elem) {
                    elem.attr(ExtNodeConstants.GROUP_NODE_ATTR_TYPE,
                            ExtNodeConstants.GROUP_NODE_ATTR_TYPE_FAKE);
                }
            });
        }
    });

    PrepareRenderingDataUtil.storeDataToContextBySelector(editSelector, displaySelector, optionMap);

    return renderer.enableMissingSelectorWarning();
}

From source file:no.kantega.publishing.admin.content.htmlfilter.RemoveNestedSpanTagsFilter.java

private static Element createSafeElement(Element sourceEl) {
    String sourceTag = sourceEl.tagName();
    org.jsoup.nodes.Attributes destAttrs = new org.jsoup.nodes.Attributes();
    Element dest = new Element(Tag.valueOf(sourceTag), sourceEl.baseUri(), destAttrs);

    org.jsoup.nodes.Attributes sourceAttrs = sourceEl.attributes();
    for (Attribute sourceAttr : sourceAttrs) {
        destAttrs.put(sourceAttr);/* ww w.  j  a  va2  s. c om*/
    }

    return dest;
}

From source file:org.asqatasun.rules.elementchecker.text.TextEmptinessCheckerTest.java

@Override
protected void setUp() throws Exception {
    super.setUp();
    mockTextElementBuilder = createMock(TextElementBuilder.class);
    mockSSPHandler = createMock(SSPHandler.class);
    elements = new Elements();
    element = new Element(Tag.valueOf("div"), "");
    mockTestSolutionHandler = createMock(TestSolutionHandler.class);
    mockProcessRemarkService = createMock(ProcessRemarkService.class);
}

From source file:org.asqatasun.rules.elementchecker.text.TextNotIdenticalToAttributeCheckerTest.java

@Override
protected void setUp() throws Exception {
    super.setUp();
    mockTextElementBuilder = createMock(TextElementBuilder.class);
    mockSSPHandler = createMock(SSPHandler.class);
    elements = new Elements();
    element = new Element(Tag.valueOf("div"), "");
    element.attr(AttributeStore.ALT_ATTR, "test");
    mockTestSolutionHandler = createMock(TestSolutionHandler.class);
    mockProcessRemarkService = createMock(ProcessRemarkService.class);
}