use of org.drools.core.spi.Tuple in project drools by kiegroup.
the class TupleIndexHashTable method toString.
public String toString() {
StringBuilder builder = new StringBuilder();
Iterator it = iterator();
for (Tuple leftTuple = (Tuple) it.next(); leftTuple != null; leftTuple = (Tuple) it.next()) {
builder.append(leftTuple).append("\n");
}
return builder.toString();
}
use of org.drools.core.spi.Tuple in project drools by kiegroup.
the class TupleList method toArray.
public Tuple[] toArray() {
Tuple[] tuples = new Tuple[this.size];
Tuple current = first;
for (int i = 0; i < this.size; i++) {
tuples[i] = current;
current = current.getNext();
}
return tuples;
}
use of org.drools.core.spi.Tuple in project drools by kiegroup.
the class TupleList method copyStateInto.
protected void copyStateInto(TupleList other) {
other.next = next;
other.first = first;
other.last = last;
other.iterator = iterator;
other.size = size;
for (Tuple current = first; current != null; current = current.getNext()) {
current.setMemory(other);
}
}
use of org.drools.core.spi.Tuple in project drools by kiegroup.
the class TupleList method remove.
public void remove(final Tuple tuple) {
Tuple previous = tuple.getPrevious();
Tuple next = tuple.getNext();
if (previous != null && next != null) {
// remove from middle
previous.setNext(next);
next.setPrevious(previous);
} else if (next != null) {
// remove from first
this.first = next;
next.setPrevious(null);
} else if (previous != null) {
// remove from end
this.last = previous;
previous.setNext(null);
} else {
// remove everything
this.last = null;
this.first = null;
}
tuple.clear();
this.size--;
}
use of org.drools.core.spi.Tuple in project drools by kiegroup.
the class TupleIndexRBTree method toArray.
public Entry[] toArray() {
FastIterator it = tree.fastIterator();
if (it == null) {
return new Entry[0];
}
List<Comparable> toBeRemoved = new ArrayList<Comparable>();
List<Tuple> result = new ArrayList<Tuple>();
TupleList list = null;
while ((list = (TupleList) it.next(list)) != null) {
Tuple entry = list.getFirst();
while (entry != null) {
result.add(entry);
entry = (Tuple) entry.getNext();
}
}
return result.toArray(new Tuple[result.size()]);
}
Aggregations