Example usage for org.jsoup.nodes Node siblingIndex

List of usage examples for org.jsoup.nodes Node siblingIndex

Introduction

In this page you can find the example usage for org.jsoup.nodes Node siblingIndex.

Prototype

int siblingIndex

To view the source code for org.jsoup.nodes Node siblingIndex.

Click Source Link

Usage

From source file:com.screenslicer.core.scrape.Dissect.java

public static String nodeHash(Node node, List<Node> nodes, boolean lenientUrl, boolean lenientTitle) {
    StringBuilder position = new StringBuilder();
    Node cur = node;
    while (cur != null) {
        position.append("<<0>>");
        position.append(cur.hashCode());
        position.append("<<1>>");
        position.append(cur.nodeName());
        position.append("<<2>>");
        position.append(cur.childNodes().size());
        position.append("<<3>>");
        position.append(cur.siblingIndex());
        position.append("<<4>>");
        cur = cur.parent();//from www  . java  2s.c  om
    }
    for (Node child : node.childNodes()) {
        position.append("<<c0>>");
        position.append(child.hashCode());
        position.append("<<c1>>");
        position.append(child.nodeName());
        position.append("<<c2>>");
        position.append(child.childNodes().size());
        position.append("<<c3>>");
        position.append(child.siblingIndex());
        position.append("<<c4>>");
    }
    if (nodes != null) {
        for (Node n : nodes) {
            position.append("<<s0>>");
            position.append(n.hashCode());
            position.append("<<s1>>");
            position.append(n.nodeName());
            position.append("<<s2>>");
            position.append(n.childNodes().size());
            position.append("<<s3>>");
            position.append(n.siblingIndex());
            position.append("<<s4>>");
        }
    }
    position.append("<<>>");
    position.append(Util.outerHtml(node).hashCode());
    return "dissectedResults-<<" + lenientUrl + ">>-<<" + lenientTitle + ">>-" + position.toString();
}