You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by dc...@apache.org on 2010/04/26 20:00:23 UTC
svn commit: r938158 - in
/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client:
chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/
chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/cli...
Author: dcaruana
Date: Mon Apr 26 18:00:22 2010
New Revision: 938158
URL: http://svn.apache.org/viewvc?rev=938158&view=rev
Log:
Paging updates:
- remove getIterator() from PagingIterable (added by mistake)
- added getPageNumItems() to PagingIterable
- updated tests
Modified:
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterable.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterator.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/AbstractIterator.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/CollectionIterable.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/PageIterable.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/test/java/org/apache/chemistry/opencmis/client/runtime/PagingListTest.java
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterable.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterable.java?rev=938158&r1=938157&r2=938158&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterable.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterable.java Mon Apr 26 18:00:22 2010
@@ -45,12 +45,4 @@ public interface PagingIterable<T> exten
* @see java.lang.Iterable#iterator()
*/
PagingIterator<T> iterator();
-
- /**
- * Getter version of iterator()
- *
- * @see java.lang.Iterable#iterator()
- * @return iterator
- */
- PagingIterator<T> getIterator();
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterator.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterator.java?rev=938158&r1=938157&r2=938158&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterator.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-api/src/main/java/org/apache/chemistry/opencmis/client/api/PagingIterator.java Mon Apr 26 18:00:22 2010
@@ -35,6 +35,13 @@ public interface PagingIterator<T> exten
long getPosition();
/**
+ * Returns the number of items fetched for the current page.
+ *
+ * @return number of items for currently fetched page
+ */
+ long getPageNumItems();
+
+ /**
* Returns whether the repository contains additional items beyond the page of
* items already fetched.
*
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/AbstractIterator.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/AbstractIterator.java?rev=938158&r1=938157&r2=938158&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/AbstractIterator.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/AbstractIterator.java Mon Apr 26 18:00:22 2010
@@ -18,9 +18,12 @@
*/
package org.apache.chemistry.opencmis.client.runtime.util;
+import java.util.List;
+
import org.apache.chemistry.opencmis.client.api.PagingIterator;
import org.apache.chemistry.opencmis.client.runtime.util.AbstractPageFetch.PageFetchResult;
+
/**
* Abstract <code>PagingIterator</code> implementation.
*
@@ -50,8 +53,7 @@ public abstract class AbstractIterator<T
/*
* (non-Javadoc)
*
- * @see
- * org.apache.chemistry.opencmis.client.api.util.PagingIterator#getPosition
+ * @see org.apache.chemistry.opencmis.client.api.util.PagingIterator#getPosition
* ()
*/
public long getPosition() {
@@ -60,6 +62,21 @@ public abstract class AbstractIterator<T
/*
* (non-Javadoc)
+ * @see org.apache.chemistry.opencmis.client.api.PagingIterator#getPageNumItems()
+ */
+ public long getPageNumItems() {
+ PageFetchResult<T> page = getCurrentPage();
+ if (page != null) {
+ List<T> items = page.getPage();
+ if (items != null) {
+ return items.size();
+ }
+ }
+ return 0L;
+ }
+
+ /*
+ * (non-Javadoc)
* @see org.apache.chemistry.opencmis.client.api.PagingIterator#getTotalNumItems()
*/
public long getTotalNumItems() {
@@ -95,7 +112,6 @@ public abstract class AbstractIterator<T
/*
* (non-Javadoc)
- *
* @see java.util.Iterator#remove()
*/
public void remove() {
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/CollectionIterable.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/CollectionIterable.java?rev=938158&r1=938157&r2=938158&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/CollectionIterable.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/CollectionIterable.java Mon Apr 26 18:00:22 2010
@@ -61,15 +61,6 @@ public class CollectionIterable<T> imple
/*
* (non-Javadoc)
*
- * @see org.apache.chemistry.opencmis.client.api.PagingIterable#getIterator()
- */
- public PagingIterator<T> getIterator() {
- return iterator();
- }
-
- /*
- * (non-Javadoc)
- *
* @see org.apache.chemistry.opencmis.client.api.util.PagingIterable#skipTo(long)
*/
public PagingIterable<T> skipTo(long position) {
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/PageIterable.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/PageIterable.java?rev=938158&r1=938157&r2=938158&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/PageIterable.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/main/java/org/apache/chemistry/opencmis/client/runtime/util/PageIterable.java Mon Apr 26 18:00:22 2010
@@ -61,15 +61,6 @@ public class PageIterable<T> implements
/*
* (non-Javadoc)
*
- * @see org.apache.chemistry.opencmis.client.api.PagingIterable#getIterator()
- */
- public PagingIterator<T> getIterator() {
- return iterator();
- }
-
- /*
- * (non-Javadoc)
- *
* @see org.apache.chemistry.opencmis.client.api.util.PagingIterable#skipTo(long)
*/
public PagingIterable<T> skipTo(long position) {
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/test/java/org/apache/chemistry/opencmis/client/runtime/PagingListTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/test/java/org/apache/chemistry/opencmis/client/runtime/PagingListTest.java?rev=938158&r1=938157&r2=938158&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/test/java/org/apache/chemistry/opencmis/client/runtime/PagingListTest.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-impl/src/test/java/org/apache/chemistry/opencmis/client/runtime/PagingListTest.java Mon Apr 26 18:00:22 2010
@@ -179,6 +179,23 @@ public class PagingListTest {
assertEquals(false, i.getHasMoreItems());
}
+ @Test
+ public void totalPageNumItems() {
+ System.out.println("\ntotalPageNumItems");
+
+ int pageSize = 7;
+ PagingIterable<String> p = this.getIterable(this.data10, pageSize);
+ assertNotNull(p);
+ PagingIterator<String> i = (PagingIterator<String>) p.iterator();
+ assertNotNull(i);
+ assertEquals(pageSize, i.getPageNumItems());
+ for (int idx = 0; i.hasNext() && idx < (pageSize + 1); idx++) {
+ i.next();
+ }
+ assertEquals(pageSize + 1, i.getPosition());
+ assertEquals(this.data10.length - pageSize, i.getPageNumItems());
+ }
+
private void loopSkip(String[] data, int skipCount, int pageSize) {
System.out.println("\nloopSkip (" + skipCount + ", " + pageSize + ")");