List of usage examples for org.apache.commons.jxpath.ri.model NodePointer setIndex
public void setIndex(int index)
From source file:org.eclipse.e4.emf.internal.xpath.CollectionNodeIterator.java
/** * Prepare...//from w w w . ja v a2 s. c om */ private void prepare() { collection = new ArrayList<>(); NodePointer ptr = (NodePointer) pointer.clone(); int length = ptr.getLength(); for (int i = 0; i < length; i++) { ptr.setIndex(i); NodePointer elementPointer = ptr.getValuePointer(); NodeIterator iter = getElementNodeIterator(elementPointer); for (int j = 1; iter.setPosition(j); j++) { NodePointer childPointer = iter.getNodePointer(); if (reverse) { collection.add(0, childPointer); } else { collection.add(childPointer); } } } if (startWith != null) { int index = collection.indexOf(startWith); if (index == -1) { throw new JXPathException("Invalid starting pointer for iterator: " + startWith); } while (collection.size() > index) { if (!reverse) { collection.remove(collection.size() - 1); } else { collection.remove(0); } } } }
From source file:org.eclipse.e4.emf.internal.xpath.CollectionPointer.java
@Override public NodePointer createChild(JXPathContext context, QName name, int index, Object value) { NodePointer ptr = (NodePointer) clone(); ptr.setIndex(index); return ptr.createPath(context, value); }
From source file:org.eclipse.e4.emf.internal.xpath.CollectionPointer.java
@Override public NodePointer createChild(JXPathContext context, QName name, int index) { NodePointer ptr = (NodePointer) clone(); ptr.setIndex(index); return ptr.createPath(context); }