You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2013/07/03 07:05:53 UTC
svn commit: r1499209 - in
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne:
ResultIterator.java access/ResultIterator.java
Author: aadamchik
Date: Wed Jul 3 05:05:53 2013
New Revision: 1499209
URL: http://svn.apache.org/r1499209
Log:
CAY-1829 Make ResultIterator implement Iterable<T>, create ObjectContext.iterate method
fixing inheritance hierarchy with the deprecated interface... this will
make deprecation meaningful
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/ResultIterator.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/ResultIterator.java
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/ResultIterator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/ResultIterator.java?rev=1499209&r1=1499208&r2=1499209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/ResultIterator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/ResultIterator.java Wed Jul 3 05:05:53 2013
@@ -31,7 +31,7 @@ import java.util.List;
* Result "rows", depending on the query, may be represented as scalar values,
* DataRows, or Object[] arrays containing a mix of scalars and DataRows.
*/
-public interface ResultIterator<T> extends Iterable<T> {
+public interface ResultIterator<T> extends org.apache.cayenne.access.ResultIterator<T>, Iterable<T> {
/**
* Returns all yet unread rows from ResultSet without closing it.
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/ResultIterator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/ResultIterator.java?rev=1499209&r1=1499208&r2=1499209&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/ResultIterator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/access/ResultIterator.java Wed Jul 3 05:05:53 2013
@@ -18,11 +18,48 @@
****************************************************************/
package org.apache.cayenne.access;
+import java.util.List;
+
/**
* @deprecated since 3.2 moved to {@link org.apache.cayenne.ResultIterator} and
* significantly reworked.
*/
@Deprecated
-public interface ResultIterator<T> extends org.apache.cayenne.ResultIterator<T> {
+public interface ResultIterator<T> {
+ /**
+ * Returns all yet unread rows from ResultSet without closing it.
+ *
+ * @since 3.0
+ */
+ List<T> allRows();
+
+ /**
+ * Returns true if there is at least one more record that can be read from
+ * the iterator.
+ */
+ boolean hasNextRow();
+
+ /**
+ * Returns the next result row that is, depending on the query, may be a
+ * scalar value, a DataRow, or an Object[] array containing a mix of scalars
+ * and DataRows.
+ *
+ * @since 3.0
+ */
+ T nextRow();
+
+ /**
+ * Goes past current row. If the row is not needed, this may save some time
+ * on data conversion.
+ *
+ * @since 3.0
+ */
+ void skipRow();
+ /**
+ * Closes ResultIterator and associated ResultSet. This method must be
+ * called explicitly when the user is finished processing the records.
+ * Otherwise unused database resources will not be released properly.
+ */
+ void close();
}