You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oodt.apache.org by ma...@apache.org on 2017/09/02 15:35:34 UTC
[14/50] [abbrv] oodt git commit: - clear up some NPEs in product
paging - add some methods to FM utils in PCS core
- clear up some NPEs in product paging
- add some methods to FM utils in PCS core
Project: http://git-wip-us.apache.org/repos/asf/oodt/repo
Commit: http://git-wip-us.apache.org/repos/asf/oodt/commit/6338e497
Tree: http://git-wip-us.apache.org/repos/asf/oodt/tree/6338e497
Diff: http://git-wip-us.apache.org/repos/asf/oodt/diff/6338e497
Branch: refs/heads/development
Commit: 6338e4979d4c8b58dad3f8ca1ab7adfbd6f8d8dd
Parents: 6d5e10d
Author: Chris Mattmann <ma...@apache.org>
Authored: Wed Jul 26 13:38:27 2017 -0700
Committer: Chris Mattmann <ma...@apache.org>
Committed: Wed Jul 26 13:38:27 2017 -0700
----------------------------------------------------------------------
.../oodt/cas/filemgr/catalog/LuceneCatalog.java | 10 +++---
.../oodt/cas/filemgr/structs/ProductPage.java | 2 ++
.../cas/filemgr/catalog/TestLuceneCatalog.java | 10 ++++--
.../apache/oodt/pcs/util/FileManagerUtils.java | 37 ++++++++++++++++++++
4 files changed, 53 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/oodt/blob/6338e497/filemgr/src/main/java/org/apache/oodt/cas/filemgr/catalog/LuceneCatalog.java
----------------------------------------------------------------------
diff --git a/filemgr/src/main/java/org/apache/oodt/cas/filemgr/catalog/LuceneCatalog.java b/filemgr/src/main/java/org/apache/oodt/cas/filemgr/catalog/LuceneCatalog.java
index 4c9ed96..ae218d8 100644
--- a/filemgr/src/main/java/org/apache/oodt/cas/filemgr/catalog/LuceneCatalog.java
+++ b/filemgr/src/main/java/org/apache/oodt/cas/filemgr/catalog/LuceneCatalog.java
@@ -897,7 +897,8 @@ public class LuceneCatalog implements Catalog {
*/
public ProductPage getNextPage(ProductType type, ProductPage currentPage) {
if(type==null){
- return null;
+ LOG.warning("getNextPage: Provided type was null: Returning blank page.");
+ return ProductPage.blankPage();
}
if (currentPage == null) {
return getFirstPage(type);
@@ -921,11 +922,11 @@ public class LuceneCatalog implements Catalog {
"CatalogException getting next page for product type: ["
+ type.getProductTypeId()
+ "] from catalog: Message: " + e.getMessage());
- return null;
+ return ProductPage.blankPage();
}
// There are no products and thus no next page
if (products == null || (products.size() == 0)) {
- return null;
+ return ProductPage.blankPage();
}
nextPage.setPageProducts(products);
@@ -940,7 +941,8 @@ public class LuceneCatalog implements Catalog {
*/
public ProductPage getPrevPage(ProductType type, ProductPage currentPage) {
if(type==null){
- return null;
+ LOG.warning("getPrevPage: Provided type was null: Returning blank page.");
+ return ProductPage.blankPage();
}
if (currentPage == null) {
http://git-wip-us.apache.org/repos/asf/oodt/blob/6338e497/filemgr/src/main/java/org/apache/oodt/cas/filemgr/structs/ProductPage.java
----------------------------------------------------------------------
diff --git a/filemgr/src/main/java/org/apache/oodt/cas/filemgr/structs/ProductPage.java b/filemgr/src/main/java/org/apache/oodt/cas/filemgr/structs/ProductPage.java
index e70c19e..2ed9312 100644
--- a/filemgr/src/main/java/org/apache/oodt/cas/filemgr/structs/ProductPage.java
+++ b/filemgr/src/main/java/org/apache/oodt/cas/filemgr/structs/ProductPage.java
@@ -17,6 +17,7 @@
package org.apache.oodt.cas.filemgr.structs;
+import java.util.Collections;
//JDK imports
import java.util.List;
import java.util.Vector;
@@ -176,6 +177,7 @@ public class ProductPage {
blank.setPageNum(0);
blank.setTotalPages(0);
blank.setPageSize(0);
+ blank.setPageProducts(Collections.EMPTY_LIST);
return blank;
}
http://git-wip-us.apache.org/repos/asf/oodt/blob/6338e497/filemgr/src/test/java/org/apache/oodt/cas/filemgr/catalog/TestLuceneCatalog.java
----------------------------------------------------------------------
diff --git a/filemgr/src/test/java/org/apache/oodt/cas/filemgr/catalog/TestLuceneCatalog.java b/filemgr/src/test/java/org/apache/oodt/cas/filemgr/catalog/TestLuceneCatalog.java
index 166a991..890c20c 100644
--- a/filemgr/src/test/java/org/apache/oodt/cas/filemgr/catalog/TestLuceneCatalog.java
+++ b/filemgr/src/test/java/org/apache/oodt/cas/filemgr/catalog/TestLuceneCatalog.java
@@ -502,7 +502,10 @@ public class TestLuceneCatalog extends TestCase {
ProductPage page = myCat.getNextPage(null, myCat.getFirstPage(type));
- assertNull(page);
+ assertNotNull(page);
+ assertEquals(0, page.getPageNum());
+ assertEquals(0, page.getTotalPages());
+ assertEquals(0, page.getPageSize());
}
public void testGetNextPageNullCurrentPage(){
@@ -775,7 +778,10 @@ public class TestLuceneCatalog extends TestCase {
.size());
ProductPage page2 = myCat.getNextPage(type, myCat.getFirstPage(type));
ProductPage page = myCat.getPrevPage(null, page2);
- assertNull(page);
+ assertNotNull(page);
+ assertEquals(0, page.getPageNum());
+ assertEquals(0, page.getPageSize());
+ assertEquals(0, page.getTotalPages());
}
http://git-wip-us.apache.org/repos/asf/oodt/blob/6338e497/pcs/core/src/main/java/org/apache/oodt/pcs/util/FileManagerUtils.java
----------------------------------------------------------------------
diff --git a/pcs/core/src/main/java/org/apache/oodt/pcs/util/FileManagerUtils.java b/pcs/core/src/main/java/org/apache/oodt/pcs/util/FileManagerUtils.java
index abfed56..aecefb7 100644
--- a/pcs/core/src/main/java/org/apache/oodt/pcs/util/FileManagerUtils.java
+++ b/pcs/core/src/main/java/org/apache/oodt/pcs/util/FileManagerUtils.java
@@ -22,6 +22,7 @@ import org.apache.oodt.pcs.metadata.PCSConfigMetadata;
import org.apache.oodt.pcs.query.FilenameQuery;
import org.apache.oodt.cas.filemgr.structs.Element;
import org.apache.oodt.cas.filemgr.structs.Product;
+import org.apache.oodt.cas.filemgr.structs.ProductPage;
import org.apache.oodt.cas.filemgr.structs.ProductType;
import org.apache.oodt.cas.filemgr.structs.Query;
import org.apache.oodt.cas.filemgr.structs.Reference;
@@ -322,6 +323,42 @@ public class FileManagerUtils implements PCSConfigMetadata {
return p;
}
+
+
+ /**
+ * Gets the number of products for the given type.
+ * @param type The given type.
+ * @return The number of products.
+ */
+ public int safeGetNumProducts(ProductType type){
+ int numProducts = -1;
+ try{
+ numProducts = this.fmgrClient.getNumProducts(type);
+ }
+ catch(Exception e){
+ e.printStackTrace();
+ LOG.warning("Exception getting num products by type: ["+type.getName()+"]: "
+ + "Message: "+e.getLocalizedMessage());
+ }
+
+ return numProducts;
+ }
+
+
+ /**
+ * Get a first page of Products using the pagination API.
+ * @param type Gets the first page of products for this type.
+ * @return The first page of products for this type.
+ */
+ public ProductPage safeFirstPage(ProductType type) {
+ ProductPage page = null;
+ try {
+ page = this.fmgrClient.getFirstPage(type);
+ } catch (Exception e) {
+ LOG.info("No products found for: " + type.getName());
+ }
+ return page;
+ }
public String getFilePath(Product prod) {
if (prod.getProductReferences() == null) {