diff options
Diffstat (limited to 'apidocs/com/amazon/carbonado/Cursor.html')
-rw-r--r-- | apidocs/com/amazon/carbonado/Cursor.html | 431 |
1 files changed, 431 insertions, 0 deletions
diff --git a/apidocs/com/amazon/carbonado/Cursor.html b/apidocs/com/amazon/carbonado/Cursor.html new file mode 100644 index 0000000..0230910 --- /dev/null +++ b/apidocs/com/amazon/carbonado/Cursor.html @@ -0,0 +1,431 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (version 1.7.0_25) on Tue Dec 03 13:53:39 PST 2013 --> +<meta http-equiv="Content-Type" content="text/html" charset="UTF-8"> +<title>Cursor (Carbonado 1.2.3 API)</title> +<meta name="date" content="2013-12-03"> +<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style"> +</head> +<body> +<script type="text/javascript"><!-- + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="Cursor (Carbonado 1.2.3 API)"; + } +//--> +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar_top"> +<!-- --> +</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="class-use/Cursor.html">Use</a></li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../com/amazon/carbonado/CorruptEncodingException.html" title="class in com.amazon.carbonado"><span class="strong">Prev Class</span></a></li> +<li><a href="../../../com/amazon/carbonado/Derived.html" title="annotation in com.amazon.carbonado"><span class="strong">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../index.html?com/amazon/carbonado/Cursor.html" target="_top">Frames</a></li> +<li><a href="Cursor.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_detail">Method</a></li> +</ul> +</div> +<a name="skip-navbar_top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">com.amazon.carbonado</div> +<h2 title="Interface Cursor" class="title">Interface Cursor<S></h2> +</div> +<div class="contentContainer"> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl> +<dt>All Known Implementing Classes:</dt> +<dd><a href="../../../com/amazon/carbonado/cursor/AbstractCursor.html" title="class in com.amazon.carbonado.cursor">AbstractCursor</a>, <a href="../../../com/amazon/carbonado/cursor/ControllerCursor.html" title="class in com.amazon.carbonado.cursor">ControllerCursor</a>, <a href="../../../com/amazon/carbonado/cursor/DifferenceCursor.html" title="class in com.amazon.carbonado.cursor">DifferenceCursor</a>, <a href="../../../com/amazon/carbonado/cursor/EmptyCursor.html" title="class in com.amazon.carbonado.cursor">EmptyCursor</a>, <a href="../../../com/amazon/carbonado/cursor/FetchAheadCursor.html" title="class in com.amazon.carbonado.cursor">FetchAheadCursor</a>, <a href="../../../com/amazon/carbonado/cursor/FilteredCursor.html" title="class in com.amazon.carbonado.cursor">FilteredCursor</a>, <a href="../../../com/amazon/carbonado/cursor/GroupedCursor.html" title="class in com.amazon.carbonado.cursor">GroupedCursor</a>, <a href="../../../com/amazon/carbonado/cursor/IntersectionCursor.html" title="class in com.amazon.carbonado.cursor">IntersectionCursor</a>, <a href="../../../com/amazon/carbonado/cursor/IteratorCursor.html" title="class in com.amazon.carbonado.cursor">IteratorCursor</a>, <a href="../../../com/amazon/carbonado/cursor/LimitCursor.html" title="class in com.amazon.carbonado.cursor">LimitCursor</a>, <a href="../../../com/amazon/carbonado/cursor/MultiTransformedCursor.html" title="class in com.amazon.carbonado.cursor">MultiTransformedCursor</a>, <a href="../../../com/amazon/carbonado/raw/RawCursor.html" title="class in com.amazon.carbonado.raw">RawCursor</a>, <a href="../../../com/amazon/carbonado/cursor/SingletonCursor.html" title="class in com.amazon.carbonado.cursor">SingletonCursor</a>, <a href="../../../com/amazon/carbonado/cursor/SkipCursor.html" title="class in com.amazon.carbonado.cursor">SkipCursor</a>, <a href="../../../com/amazon/carbonado/cursor/SortedCursor.html" title="class in com.amazon.carbonado.cursor">SortedCursor</a>, <a href="../../../com/amazon/carbonado/cursor/SymmetricDifferenceCursor.html" title="class in com.amazon.carbonado.cursor">SymmetricDifferenceCursor</a>, <a href="../../../com/amazon/carbonado/cursor/ThrottledCursor.html" title="class in com.amazon.carbonado.cursor">ThrottledCursor</a>, <a href="../../../com/amazon/carbonado/cursor/TransformedCursor.html" title="class in com.amazon.carbonado.cursor">TransformedCursor</a>, <a href="../../../com/amazon/carbonado/cursor/UnionCursor.html" title="class in com.amazon.carbonado.cursor">UnionCursor</a></dd> +</dl> +<hr> +<br> +<pre>public interface <span class="strong">Cursor<S></span></pre> +<div class="block">Represents the results of a <a href="../../../com/amazon/carbonado/Query.html" title="interface in com.amazon.carbonado"><code>Query</code></a>'s fetch + operation. Cursors must be closed promptly when no longer + needed. Failure to do so may result in excessive resource consumption or + deadlock. As a convenience, the close operation is automatically performed + when the end is reached or when an exception is thrown. + + <P>Note: because a Cursor manages resources, it is inapproprate to create a long-lived one and + pass it around in your code. A cursor is expected to live close to the Query which vended + it. To discourage inappropriate retention, the cursor does not implement methods (like + "getQuery" or "reset") which would make it more convenient to operate on in isolation. + + <P>Similarly, it is difficult to guarantee that the results of a cursor will + be the same in case of a "reset" or reverse iteration. For this reason, + neither is supported; if you need to iterate the same set of objects twice, + simply retain the query object and reissue it. Be aware that the results may + not be identical, if any relevant objects are added to or removed the + repository in the interim. To guard against this, operate within a + serializable <a href="../../../com/amazon/carbonado/IsolationLevel.html" title="enum in com.amazon.carbonado"><code>isolation level</code></a>. + + <p>Cursor instances are mutable and not guaranteed to be thread-safe. Only + one thread should ever operate on a cursor instance.</div> +<dl><dt><span class="strong">Author:</span></dt> + <dd>Brian S O'Neill, Don Schneider</dd></dl> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method_summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span>Methods</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#close()">close</a></strong>()</code> +<div class="block">Call close to release any resources being held by this cursor.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>int</code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#copyInto(java.util.Collection)">copyInto</a></strong>(java.util.Collection<? super <a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>> c)</code> +<div class="block">Copies all remaining next elements into the given collection.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>int</code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#copyInto(java.util.Collection, int)">copyInto</a></strong>(java.util.Collection<? super <a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>> c, + int limit)</code> +<div class="block">Copies a limited amount of remaining next elements into the given + collection.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#hasNext()">hasNext</a></strong>()</code> +<div class="block">Returns true if this cursor has more elements.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code><a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a></code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#next()">next</a></strong>()</code> +<div class="block">Returns the next element from this cursor.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>int</code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#skipNext(int)">skipNext</a></strong>(int amount)</code> +<div class="block">Skips forward by the specified amount of elements, returning the actual + amount skipped.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>java.util.List<<a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>></code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#toList()">toList</a></strong>()</code> +<div class="block">Copies all remaining next elements into a new modifiable list.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>java.util.List<<a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>></code></td> +<td class="colLast"><code><strong><a href="../../../com/amazon/carbonado/Cursor.html#toList(int)">toList</a></strong>(int limit)</code> +<div class="block">Copies a limited amount of remaining next elements into a new modifiable + list.</div> +</td> +</tr> +</table> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method_detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="close()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>close</h4> +<pre>void close() + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Call close to release any resources being held by this cursor. Further + operations on this cursor will behave as if there are no results.</div> +<dl><dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code></dd></dl> +</li> +</ul> +<a name="hasNext()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>hasNext</h4> +<pre>boolean hasNext() + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Returns true if this cursor has more elements. In other words, returns + true if <a href="../../../com/amazon/carbonado/Cursor.html#next()"><code>next</code></a> would return an element rather than throwing + an exception.</div> +<dl><dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd></dl> +</li> +</ul> +<a name="next()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>next</h4> +<pre><a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a> next() + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Returns the next element from this cursor. This method may be called + repeatedly to iterate through the results.</div> +<dl><dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd> +<dd><code>java.util.NoSuchElementException</code> - if the cursor has no next element.</dd></dl> +</li> +</ul> +<a name="skipNext(int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>skipNext</h4> +<pre>int skipNext(int amount) + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Skips forward by the specified amount of elements, returning the actual + amount skipped. The actual amount is less than the requested amount only + if the end of the results was reached.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>amount</code> - maximum amount of elements to skip</dd> +<dt><span class="strong">Returns:</span></dt><dd>actual amount skipped</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd> +<dd><code>java.lang.IllegalArgumentException</code> - if amount is negative</dd></dl> +</li> +</ul> +<a name="copyInto(java.util.Collection)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>copyInto</h4> +<pre>int copyInto(java.util.Collection<? super <a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>> c) + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Copies all remaining next elements into the given collection. This + method is roughly equivalent to the following: + <pre> + Cursor cursor; + ... + while (cursor.hasNext()) { + c.add(cursor.next()); + } + </pre> + + <p>As a side-effect of calling this method, the cursor is closed.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>actual amount of results added</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd></dl> +</li> +</ul> +<a name="copyInto(java.util.Collection, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>copyInto</h4> +<pre>int copyInto(java.util.Collection<? super <a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>> c, + int limit) + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Copies a limited amount of remaining next elements into the given + collection. This method is roughly equivalent to the following: + <pre> + Cursor cursor; + ... + while (--limit >= 0 && cursor.hasNext()) { + c.add(cursor.next()); + } + </pre></div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>limit</code> - maximum amount of elements to copy</dd> +<dt><span class="strong">Returns:</span></dt><dd>actual amount of results added</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd> +<dd><code>java.lang.IllegalArgumentException</code> - if limit is negative</dd></dl> +</li> +</ul> +<a name="toList()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>toList</h4> +<pre>java.util.List<<a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>> toList() + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Copies all remaining next elements into a new modifiable list. This + method is roughly equivalent to the following: + <pre> + Cursor<S> cursor; + ... + List<S> list = new ... + cursor.copyInto(list); + </pre> + + <p>As a side-effect of calling this method, the cursor is closed.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>a new modifiable list</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd></dl> +</li> +</ul> +<a name="toList(int)"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>toList</h4> +<pre>java.util.List<<a href="../../../com/amazon/carbonado/Cursor.html" title="type parameter in Cursor">S</a>> toList(int limit) + throws <a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></pre> +<div class="block">Copies a limited amount of remaining next elements into a new modifiable + list. This method is roughly equivalent to the following: + <pre> + Cursor<S> cursor; + ... + List<S> list = new ... + cursor.copyInto(list, limit); + </pre></div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>limit</code> - maximum amount of elements to copy</dd> +<dt><span class="strong">Returns:</span></dt><dd>a new modifiable list</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="../../../com/amazon/carbonado/FetchException.html" title="class in com.amazon.carbonado">FetchException</a></code> - if storage layer throws an exception</dd> +<dd><code>java.lang.IllegalArgumentException</code> - if limit is negative</dd></dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar_bottom"> +<!-- --> +</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="class-use/Cursor.html">Use</a></li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../index-files/index-1.html">Index</a></li> +<li><a href="../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../com/amazon/carbonado/CorruptEncodingException.html" title="class in com.amazon.carbonado"><span class="strong">Prev Class</span></a></li> +<li><a href="../../../com/amazon/carbonado/Derived.html" title="annotation in com.amazon.carbonado"><span class="strong">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../index.html?com/amazon/carbonado/Cursor.html" target="_top">Frames</a></li> +<li><a href="Cursor.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_detail">Method</a></li> +</ul> +</div> +<a name="skip-navbar_bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +<p class="legalCopy"><small>Copyright © 2006-2013 <a href="https://github.com/Carbonado/Carbonado">Amazon Technologies, Inc.</a>. All Rights Reserved.</small></p> +</body> +</html> |