Class CMISQLtoNXQL.NXQLtoCMISIterableQueryResult
java.lang.Object
org.nuxeo.ecm.core.opencmis.impl.server.CMISQLtoNXQL.NXQLtoCMISIterableQueryResult
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Iterable<Map<String,
,Serializable>> Iterator<Map<String,
,Serializable>> IterableQueryResult
- Enclosing class:
- CMISQLtoNXQL
public static class CMISQLtoNXQL.NXQLtoCMISIterableQueryResult
extends Object
implements IterableQueryResult, Iterator<Map<String,Serializable>>
IterableQueryResult wrapping the one from the NXQL query to turn values into CMIS ones.
-
Field Summary
Modifier and TypeFieldDescriptionprotected IterableQueryResult
protected Iterator<Map<String,
Serializable>> protected NuxeoCmisService
-
Constructor Summary
ConstructorDescriptionNXQLtoCMISIterableQueryResult
(IterableQueryResult it, Map<String, String> realColumns, Map<String, org.apache.chemistry.opencmis.server.support.query.ColumnReference> virtualColumns, NuxeoCmisService service) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the query result and releases the underlying resources held by the cursor.boolean
hasNext()
iterator()
boolean
Indicates if the query result must be closed (because it holds resources).next()
long
pos()
Gets the current position in the iterator.void
remove()
long
size()
Gets the total size of the query result.void
skipTo
(long pos) Skips to a given position in the iterator.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
it
-
iter
-
realColumns
-
virtualColumns
-
service
-
-
Constructor Details
-
NXQLtoCMISIterableQueryResult
public NXQLtoCMISIterableQueryResult(IterableQueryResult it, Map<String, String> realColumns, Map<String, org.apache.chemistry.opencmis.server.support.query.ColumnReference> virtualColumns, NuxeoCmisService service)
-
-
Method Details
-
iterator
- Specified by:
iterator
in interfaceIterable<Map<String,
Serializable>>
-
close
public void close()Description copied from interface:IterableQueryResult
Closes the query result and releases the underlying resources held by the cursor.This MUST be called when the query result is no more needed, otherwise underlying resources will be leaked. There is no auto-closing at the end of the iteration.
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceIterableQueryResult
-
mustBeClosed
public boolean mustBeClosed()Description copied from interface:IterableQueryResult
Indicates if the query result must be closed (because it holds resources).- Specified by:
mustBeClosed
in interfaceIterableQueryResult
- Returns:
true
if the query result must be closed,false
otherwise
-
size
public long size()Description copied from interface:IterableQueryResult
Gets the total size of the query result.Note that this may be costly, and that some backends may not be able to do this operation, in which case
-1
will be returned.- Specified by:
size
in interfaceIterableQueryResult
- Returns:
- the size, or
-1
for an unknown size
-
pos
public long pos()Description copied from interface:IterableQueryResult
Gets the current position in the iterator.Positions start at
0
.- Specified by:
pos
in interfaceIterableQueryResult
- Returns:
- the position
-
skipTo
public void skipTo(long pos) Description copied from interface:IterableQueryResult
Skips to a given position in the iterator.Positions start at
0
.- Specified by:
skipTo
in interfaceIterableQueryResult
-
hasNext
public boolean hasNext()- Specified by:
hasNext
in interfaceIterator<Map<String,
Serializable>>
-
remove
public void remove()- Specified by:
remove
in interfaceIterator<Map<String,
Serializable>>
-
next
- Specified by:
next
in interfaceIterator<Map<String,
Serializable>>
-