BreadCrumb.java
1.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/*
* Decompiled with CFR 0_118.
*/
package com.day.cq.searchpromote.xml.result;
import com.day.cq.searchpromote.xml.result.AbstractResultEntity;
import com.day.cq.searchpromote.xml.result.BreadCrumbItem;
import com.day.cq.searchpromote.xml.result.ResultParser;
import java.util.ArrayList;
import java.util.List;
import javax.xml.namespace.QName;
import javax.xml.stream.XMLEventReader;
import javax.xml.stream.events.Characters;
import javax.xml.stream.events.StartElement;
import javax.xml.stream.events.XMLEvent;
public class BreadCrumb
extends AbstractResultEntity {
private static final String BREADCRUMB_ITEM_NODE = "breadcrumb-item";
private static final String NAME_NODE = "name";
private String name;
private List<BreadCrumbItem> items = new ArrayList<BreadCrumbItem>();
@Override
public void parse(XMLEventReader reader) throws Exception {
XMLEvent event;
while (reader.hasNext() && !(event = ResultParser.getNextEvent(reader)).isEndElement()) {
StartElement startElement = event.asStartElement();
String localPart = startElement.getName().getLocalPart();
if (localPart.equals("name")) {
this.name = reader.nextEvent().asCharacters().getData();
ResultParser.getNextEvent(reader);
continue;
}
if (localPart.equals("breadcrumb-item")) {
BreadCrumbItem item = new BreadCrumbItem();
item.parse(reader);
this.items.add(item);
continue;
}
ResultParser.parseUnknownTag(reader);
}
}
public String getName() {
return this.name;
}
public List<BreadCrumbItem> getItems() {
return this.items;
}
}