@@ -0,0 +1,916 @@
+package com.alvazan.orm.api.base;%0A%0Aimport java.util.ArrayList;%0Aimport java.util.List;%0A%0Aimport com.alvazan.orm.api.z8spi.iter.Cursor;%0A%0A/**%0A * This is used so you do not blow out your memory on a very wide row especially when you only want to display a few of the%0A * results.%0A * %0A * @author dhiller2%0A *%0A * @param %3CT%3E%0A */%0Apublic class CursorForMany%3CT%3E implements Cursor%3CT%3E %7B%0A%0A%09private List%3CT%3E list = new ArrayList%3CT%3E();%0A%09private int index;%0A%09%0A%09public CursorForMany() %7B%0A%09%7D%0A%09%0A%09public CursorForMany(List%3CT%3E elements) %7B%0A%09%09this.list.addAll(elements);%0A%09%7D%0A%09%0A%09@Override%0A%09public void beforeFirst() %7B%0A%09%09index = 0;%0A%09%7D%0A%0A%09@Override%0A%09public boolean next() %7B%0A%09%09index++;%0A%09%09if(index %3C list.size())%0A%09%09%09return true;%0A%09%09return false;%0A%09%7D%0A%0A%09@Override%0A%09public T getCurrent() %7B%0A%09%09return list.get(index);%0A%09%7D%0A%0A%09public void removeCurrent() %7B%0A%09%09list.remove(index);%0A%09%09index--;%0A%09%7D%0A%09%0A%09public void addElement(T element) %7B%0A%09%09this.list.add(element);%0A%09%7D%0A%7D%0A

add a cursor for many to be used later