Class TableRowIterator
- java.lang.Object
-
- org.intermine.webservice.server.core.TableRowIterator
-
- All Implemented Interfaces:
java.lang.Iterable<java.util.List<Either<ResultCell,SubTable>>>
,java.util.Iterator<java.util.List<Either<ResultCell,SubTable>>>
public class TableRowIterator extends java.lang.Object implements java.util.Iterator<java.util.List<Either<ResultCell,SubTable>>>, java.lang.Iterable<java.util.List<Either<ResultCell,SubTable>>>
A class for iterating over rows of results returned from the object store in a way that is very similar in shape to the raw results, but more tractable and more easily serialised and handled in other places.- Author:
- Alex Kalderimis
-
-
Constructor Summary
Constructors Constructor Description TableRowIterator(PathQuery pathQuery, Query query, Results results, java.util.Map<java.lang.String,QuerySelectable> nodeForPath, Page page, InterMineAPI im)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<Path>
getEffectiveView()
boolean
hasNext()
java.util.Iterator<java.util.List<Either<ResultCell,SubTable>>>
iterator()
java.util.List<Either<ResultCell,SubTable>>
next()
void
remove()
-
-
-
Constructor Detail
-
TableRowIterator
public TableRowIterator(PathQuery pathQuery, Query query, Results results, java.util.Map<java.lang.String,QuerySelectable> nodeForPath, Page page, InterMineAPI im)
Constructor.- Parameters:
pathQuery
- The path-query these results represent an answer to.query
- The object store query this path-query compiles to.results
- The object-store results.nodeForPath
- The map from selectable to the path it represents.page
- The section of the results required.im
- A reference to the API (MAY BE NULL!).
-
-
Method Detail
-
getEffectiveView
public java.util.List<Path> getEffectiveView()
- Returns:
- a read-only view over the effective view.
-
iterator
public java.util.Iterator<java.util.List<Either<ResultCell,SubTable>>> iterator()
- Specified by:
iterator
in interfacejava.lang.Iterable<java.util.List<Either<ResultCell,SubTable>>>
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfacejava.util.Iterator<java.util.List<Either<ResultCell,SubTable>>>
-
remove
public void remove()
- Specified by:
remove
in interfacejava.util.Iterator<java.util.List<Either<ResultCell,SubTable>>>
-
next
public java.util.List<Either<ResultCell,SubTable>> next()
- Specified by:
next
in interfacejava.util.Iterator<java.util.List<Either<ResultCell,SubTable>>>
-
-