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/10/12 17:57:39 UTC
[15/50] [abbrv] oodt git commit: Fix for OODT-931 CAS Crawler and
metadata preconditions should say what preconditions failed.
Fix for OODT-931 CAS Crawler and metadata preconditions should say what preconditions failed.
Project: http://git-wip-us.apache.org/repos/asf/oodt/repo
Commit: http://git-wip-us.apache.org/repos/asf/oodt/commit/fa825105
Tree: http://git-wip-us.apache.org/repos/asf/oodt/tree/fa825105
Diff: http://git-wip-us.apache.org/repos/asf/oodt/diff/fa825105
Branch: refs/heads/master
Commit: fa8251058b55b5703eda622d6bc64df2c89c8e52
Parents: fcb214f
Author: Chris Mattmann <ma...@apache.org>
Authored: Wed Jul 6 16:08:04 2016 -0700
Committer: Lewis John McGibbney <le...@gmail.com>
Committed: Thu Mar 9 21:12:41 2017 -0800
----------------------------------------------------------------------
CHANGES.txt | 3 ++
.../cas/crawl/MetExtractorProductCrawler.java | 37 ++++++++++++++++----
.../oodt/cas/crawl/StdProductCrawler.java | 16 +++++++--
3 files changed, 47 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/oodt/blob/fa825105/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 22147f5..e779398 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,9 @@ Apache OODT Change Log
Release 1.1 - Current Development
+* OODT-931 CAS Crawler and metadata preconditions should say what preconditions
+ failed (mattmann)
+
* OODT-932 OODT-Core forces javadoc to run and fails on linting - it shouldn't
do that (mattmann)
http://git-wip-us.apache.org/repos/asf/oodt/blob/fa825105/crawler/src/main/java/org/apache/oodt/cas/crawl/MetExtractorProductCrawler.java
----------------------------------------------------------------------
diff --git a/crawler/src/main/java/org/apache/oodt/cas/crawl/MetExtractorProductCrawler.java b/crawler/src/main/java/org/apache/oodt/cas/crawl/MetExtractorProductCrawler.java
index d663e84..978798a 100644
--- a/crawler/src/main/java/org/apache/oodt/cas/crawl/MetExtractorProductCrawler.java
+++ b/crawler/src/main/java/org/apache/oodt/cas/crawl/MetExtractorProductCrawler.java
@@ -22,12 +22,14 @@ import org.apache.oodt.cas.metadata.Metadata;
import org.apache.oodt.cas.metadata.exceptions.MetExtractionException;
import org.apache.oodt.cas.metadata.exceptions.NamingConventionException;
import org.apache.oodt.cas.metadata.filenaming.NamingConvention;
+import org.apache.oodt.cas.metadata.preconditions.PreCondEvalUtils;
import org.apache.oodt.cas.metadata.preconditions.PreConditionComparator;
import org.springframework.beans.factory.annotation.Required;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
+import java.util.logging.Level;
/**
@@ -58,14 +60,29 @@ public class MetExtractorProductCrawler extends ProductCrawler {
@Override
protected boolean passesPreconditions(File product) {
if (this.getPreCondIds() != null) {
- for (String preCondId : this.getPreCondIds()) {
- if (!((PreConditionComparator<?>) this.getApplicationContext()
- .getBean(preCondId)).passes(product)) {
- return false;
- }
- }
+ PreCondEvalUtils evalUtils = new PreCondEvalUtils(
+ this.getApplicationContext());
+ if (!evalUtils.eval(this.getPreCondIds(), product)) {
+ return false;
+ }
}
- return product.exists() && product.length() > 0;
+
+ String preCondComparatorId = "ProductFileExistsCheck";
+ String preCondComparatorIdLength = "ProductLengthGreaterZeroCheck";
+
+ boolean existsFlag = true, lengthFlag = true;
+
+ if (!product.exists()){
+ existsFlag = false;
+ logConditionMessage(existsFlag, preCondComparatorId, product);
+ }
+
+ if (product.length() == 0){
+ lengthFlag = false;
+ logConditionMessage(lengthFlag, preCondComparatorIdLength, product);
+ }
+
+ return existsFlag && lengthFlag;
}
@Override
@@ -120,4 +137,10 @@ public class MetExtractorProductCrawler extends ProductCrawler {
public String getNamingConventionId() {
return namingConventionId;
}
+
+ private void logConditionMessage(boolean flag, String preCondComparatorId, File product){
+ String startMsg = flag ? "Passed":"Failed";
+ LOG.log(Level.INFO, startMsg + " precondition comparator id "
+ + preCondComparatorId+" file: "+product);
+ }
}
http://git-wip-us.apache.org/repos/asf/oodt/blob/fa825105/crawler/src/main/java/org/apache/oodt/cas/crawl/StdProductCrawler.java
----------------------------------------------------------------------
diff --git a/crawler/src/main/java/org/apache/oodt/cas/crawl/StdProductCrawler.java b/crawler/src/main/java/org/apache/oodt/cas/crawl/StdProductCrawler.java
index 00e0c91..dcc5b68 100644
--- a/crawler/src/main/java/org/apache/oodt/cas/crawl/StdProductCrawler.java
+++ b/crawler/src/main/java/org/apache/oodt/cas/crawl/StdProductCrawler.java
@@ -23,6 +23,7 @@ import org.apache.oodt.cas.metadata.extractors.MetReaderExtractor;
//JDK imports
import java.io.File;
+import java.util.logging.Level;
/**
* A generic Product Crawler for Products. The Crawler is given a root Product
@@ -58,8 +59,19 @@ public class StdProductCrawler extends ProductCrawler {
@Override
protected boolean passesPreconditions(File product) {
- return new File(product.getAbsolutePath() + "." + this.metFileExtension)
- .exists();
+ String metFilePath = product.getAbsolutePath() + "." + this.metFileExtension;
+ boolean flag = new File(metFilePath).exists();
+ String preCondComparatorId = "MetFileExistsCheck";
+
+ if (!flag){
+ LOG.log(Level.INFO, "Failed precondition comparator id "
+ + preCondComparatorId+" file: "+metFilePath+" does not exist.");
+ }
+ else{
+ LOG.log(Level.INFO, "Passed precondition comparator id "
+ + preCondComparatorId+" file: "+metFilePath+" exists.");
+ }
+ return flag;
}
@Override