本文整理了Java中org.jdom.Element.getDescendants()
方法的一些代码示例,展示了Element.getDescendants()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Element.getDescendants()
方法的具体详情如下:
包路径:org.jdom.Element
类名称:Element
方法名:getDescendants
[英]Returns an iterator that walks over all descendants in document order.
[中]返回按文档顺序遍历所有子体的迭代器。
代码示例来源:origin: org.codehaus.xfire/xfire-core
public Iterator getDescendants()
{
return element.getDescendants();
}
代码示例来源:origin: net.bpelunit/util
@SuppressWarnings("unchecked")
public static Iterator<Element> getDescendants(Element parent, ElementFilter filter) {
return parent.getDescendants(filter);
}
代码示例来源:origin: org.codehaus.xfire/xfire-core
public Iterator getDescendants(Filter filter)
{
return element.getDescendants(filter);
}
代码示例来源:origin: locationtech/geowave
public static Element findFirstChild(final Element parentEl, final String childName) {
final ElementFilter filter = new ElementFilter(childName);
final Iterator<Element> childrenIter = parentEl.getDescendants(filter);
if (childrenIter.hasNext()) {
return childrenIter.next();
}
return null;
}
代码示例来源:origin: miltonio/milton2
public static List<Element> getElements(Element root, String name) {
List<Element> list = new ArrayList<Element>();
Iterator it = root.getDescendants(new ElementFilter(name));
while(it.hasNext()) {
Object o = it.next();
if( o instanceof Element) {
list.add((Element)o);
}
}
return list;
}
代码示例来源:origin: net.bpelunit/framework
public void setOriginalBPELProcess(Element process) {
Iterator<Element> compensHandlers = process
.getDescendants(new ElementFilter(COMPENSATION_HANDLER,
getProcessNamespace()));
elementsOfBPEL = new ArrayList<Element>();
while (compensHandlers.hasNext()) {
elementsOfBPEL.add(compensHandlers.next());
}
}
代码示例来源:origin: stackoverflow.com
FileInputStream fis = new FileInputStream(file); //where file holds the data to parse.
Can also use StringBuilder
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(fis); //build a JDOM doc from file
ArrayList<String> arl = new ArrayList<String>();
Element root = doc.getRootElement();
Iterator elemIter = root.getDescendants(); //you can put filters on this to only get specific types of elements ie: root.getDescendants("ZQuery"); will give you an iterator over just ZQuery elements.
while (elemIter.hasNext()) {
Element foo = (Element) elemIter.next();
String CDATA = foo.getChildText("ZQuery")
arl.add(CDATA);
}
代码示例来源:origin: stackoverflow.com
SAXBuilder builder = new SAXBuilder();
Document document = builder.build(new File("src/com/foo/test.xml"));
Element root = document.getRootElement();
ElementFilter filter = new ElementFilter();
Iterator i = root.getDescendants(filter);
while (i.hasNext()) {
Element element = (Element) i.next();
System.out.println(element);
}
代码示例来源:origin: stackoverflow.com
public String getTitleText(final Element title) {
final StringBuilder sb = new StringBuilder();
for (final Text txt : title.getDescendants(Filters.text())) {
final Element parent = txt.getParentElement();
if (parent == title ||
parent.getAttributeValue("active", "not").equals("true")) {
sb.append(txt.getValue());
}
}
return sb.toString();
}
代码示例来源:origin: net.bpelunit/framework
private Element searchSourceElement2(Element link, Element processElement) {
Iterator<Element> iter = processElement
.getDescendants(new ElementFilter(SOURCE_TAG,
getProcessNamespace()));
Element source = null;
String linkName = link.getAttributeValue(ATTRIBUTE_NAME);
while (iter.hasNext()) {
source = iter.next();
String attribut = source.getAttributeValue(ATTRIBUTE_LINKNAME);
if (attribut != null && attribut.equals(linkName)) {
break;
}
}
return source;
}
代码示例来源:origin: stackoverflow.com
Element root = document.getRootElement();
ElementFilter filter = new org.jdom2.filter.ElementFilter("model");
for(Element c : root.getDescendants(filter)) {
System.out.println(c.getTextNormalize());
}
代码示例来源:origin: net.bpelunit/framework
/**
* Erhält die noch nicht modifizierte Beschreibung des BPELProzesses als
* XML-Element. Alle für die Instrumentierung benötigten Elemente der
* Prozessbeschreibung werden gespeichert
*
* @param process
* noch nicht modifiziertes BPEL-Prozess
*/
public void setOriginalBPELProcess(Element process) {
elementsOfBPEL = new ArrayList<Element>();
Iterator<Element> iter = process
.getDescendants(new ElementFilter(LinkMetricHandler.LINK_TAG,
process.getNamespace()));
while (iter.hasNext()) {
elementsOfBPEL.add(iter.next());
}
}
代码示例来源:origin: net.bpelunit/framework
public void setOriginalBPELProcess(Element process) {
@SuppressWarnings("serial")
ElementFilter filter = new ElementFilter(getProcessNamespace()) {
@Override
public boolean matches(Object obj) {
boolean result = false;
String elementName;
if (super.matches(obj)) {
elementName = ((Element) obj).getName();
if (elementName.equals(CATCH_ELEMENT)
|| elementName.equals(CATCHALL_ELEMENT)) {
result = true;
}
}
return result;
}
};
elementsOfBPEL = new ArrayList<Element>();
for (Iterator<Element> iter = process.getDescendants(filter); iter
.hasNext();) {
elementsOfBPEL.add(iter.next());
}
}
代码示例来源:origin: net.bpelunit/framework
/**
* Gets the unmodified bpel process as xml element.
*
* <br />All elements needed for instrumentating will be saved
*
* @param unmodified bpel process
*/
public void setOriginalBPELProcess(Element process) {
ElementFilter filter = new ElementFilter(process.getNamespace());
elementsOfBPEL = new ArrayList<Element>();
for (@SuppressWarnings("unchecked")
Iterator<Element> iter = process.getDescendants(filter); iter
.hasNext();) {
Element basicActivity = iter.next();
if (activitiesToRespect.contains(basicActivity.getName())) {
elementsOfBPEL.add(basicActivity);
}
}
}
代码示例来源:origin: net.bpelunit/framework
private List<Element> getCreateInstanceActivity(Element activity) {
List<Element> list=new ArrayList<Element>();
String name = activity.getName();
if ((name.equals(StructuredActivities.PICK_ACTIVITY)
|| name.equals(BasicActivities.RECEIVE_ACTIVITY)) && canCreateInstance(activity)) {
list.add(activity);
return list;
}
if (isStructuredActivity(activity)) {
Iterator<Element> iter = activity.getDescendants(new ContentFilter(ContentFilter.ELEMENT) {
@Override
public boolean matches(Object obj) {
if (super.matches(obj)) {
Element el = (Element) obj;
if(canCreateInstance(el)) {
return true;
}
}
return false;
}
});
while(iter.hasNext()) {
list.add(iter.next());
}
}
return list;
}
代码示例来源:origin: net.bpelunit/framework
/**
* Erhält die noch nicht modifizierte Beschreibung des BPELProzesses als
* XML-Element. Alle für die Instrumentierung benötigten Elemente der
* Prozessbeschreibung werden gespeichert
*
* @param process
* noch nicht modifiziertes BPEL-Prozess
* @see net.bpelunit.framework.coverage.annotation.metrics.IMetric#setOriginalBPELProcess(org.jdom.Element)
*/
public void setOriginalBPELProcess(Element process) {
Element nextElement;
Iterator<Element> iter = process
.getDescendants(new ElementFilter(process
.getNamespace()));
elementsOfBPEL = new ArrayList<Element>();
while (iter.hasNext()) {
nextElement = iter.next();
if (isStructuredActivity(nextElement)) {
elementsOfBPEL.add(nextElement);
}
}
}
代码示例来源:origin: org.codehaus.mevenide/grammar
private List collectPluginParams(Document pluginDoc, HintContext hintCtx) {
Iterator it = pluginDoc.getRootElement().getDescendants(new Filter() {
public boolean matches(Object object) {
if (object instanceof Element) {
Element el = (Element)object;
if ("parameter".equals(el.getName()) && //NOI18N
el.getParentElement() != null && "parameters".equals(el.getParentElement().getName()) && //NOI18N
el.getParentElement().getParentElement() != null && "mojo".equals(el.getParentElement().getParentElement().getName())) { //NOI18N
return true;
}
}
return false;
}
});
List toReturn = new ArrayList();
Collection params = new HashSet();
while (it.hasNext()) {
Element el = (Element)it.next();
String editable = el.getChildText("editable"); //NOI18N
if ("true".equalsIgnoreCase(editable)) { //NOI18N
String name = el.getChildText("name"); //NOI18N
if (name.startsWith(hintCtx.getCurrentPrefix()) && !params.contains(name)) {
params.add(name);
toReturn.add(new MyElement(name));
}
}
}
return toReturn;
}
代码示例来源:origin: org.codehaus.mevenide/grammar
private Enumeration collectGoals(Document pluginDoc, HintContext virtualTextCtx) {
Iterator it = pluginDoc.getRootElement().getDescendants(new Filter() {
public boolean matches(Object object) {
if (object instanceof Element) {
Element el = (Element)object;
if ("goal".equals(el.getName()) && //NOI18N
el.getParentElement() != null && "mojo".equals(el.getParentElement().getName())) { //NOI18N
return true;
}
}
return false;
}
});
Collection toReturn = new ArrayList();
while (it.hasNext()) {
Element el = (Element)it.next();
String name = el.getText();
if (name.startsWith(virtualTextCtx.getCurrentPrefix())) {
toReturn.add(new MyTextElement(name, virtualTextCtx.getCurrentPrefix()));
}
}
return Collections.enumeration(toReturn);
}
代码示例来源:origin: uk.org.mygrid.taverna.processors/taverna-wsdl-processor
/**
* Updates the element namespace, and also iterates all descendant elements.
* If these elements have no default namespace, or is blank then it is also
* set to namespaceURI (JDOM by default will not set the child elements to
* the same namespace as the element modified but will override them with
* blank namespaces).
*
* @param dataElement
* @param namespaceURI
*/
private void updateElementNamespace(Element dataElement, String namespaceURI) {
dataElement.setNamespace(Namespace.getNamespace(namespaceURI));
Iterator iterator = dataElement.getDescendants();
while (iterator.hasNext()) {
Object descendantObject = iterator.next();
if (descendantObject instanceof Element) {
Element childElement = (Element) descendantObject;
if (childElement.getNamespaceURI() == null
|| childElement.getNamespaceURI().length() == 0)
childElement.setNamespace(Namespace
.getNamespace(namespaceURI));
}
}
}
代码示例来源:origin: net.sf.taverna.cagrid/cagrid-wsdl-generic
/**
* Updates the element namespace, and also iterates all descendant elements.
* If these elements have no default namespace, or is blank then it is also
* set to namespaceURI (JDOM by default will not set the child elements to
* the same namespace as the element modified but will override them with
* blank namespaces).
*
* @param dataElement
* @param namespaceURI
*/
private void updateElementNamespace(Element dataElement, String namespaceURI) {
dataElement.setNamespace(Namespace.getNamespace(namespaceURI));
Iterator<?> iterator = dataElement.getDescendants();
while (iterator.hasNext()) {
Object descendantObject = iterator.next();
if (descendantObject instanceof Element) {
Element childElement = (Element) descendantObject;
if (childElement.getNamespaceURI() == null
|| childElement.getNamespaceURI().length() == 0)
childElement.setNamespace(Namespace
.getNamespace(namespaceURI));
}
}
}
内容来源于网络,如有侵权,请联系作者删除!