Report structure

Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/commit/06bef782
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/tree/06bef782
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/diff/06bef782

Branch: refs/heads/master
Commit: 06bef782020e1de371d26b7a761905034b1d82d9
Parents: 6c6dfa6
Author: Menaka Madushanka <[email protected]>
Authored: Fri Jul 24 04:00:27 2015 +0530
Committer: Menaka Madushanka <[email protected]>
Committed: Fri Jul 24 04:00:27 2015 +0530

----------------------------------------------------------------------
 .../taverna/robundle/validator/RoValidator.java | 54 +++++++++++++++++++-
 .../robundle/validator/ValidationReport.java    |  4 ++
 2 files changed, 56 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/06bef782/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/RoValidator.java
----------------------------------------------------------------------
diff --git 
a/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/RoValidator.java
 
b/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/RoValidator.java
index 18bf218..ce340cd 100644
--- 
a/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/RoValidator.java
+++ 
b/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/RoValidator.java
@@ -66,11 +66,15 @@ public class RoValidator {
        private ArrayList<String> errorList = new ArrayList<>();
        
        //ArrayList for warnings :- If files not listed in the manifest are 
included in bundle
-       private ArrayList<String> warningList = new ArrayList<String>();
+       private ArrayList<String> infoWarningList = new ArrayList<String>();
+       
+       //If there are external urls
+       private ArrayList<String> warning = new ArrayList<String>();
        
        
        public RoValidator(Path path){
                this.p = path;
+               this.validate();
        }
        
        public void validate(){
@@ -99,10 +103,56 @@ public class RoValidator {
                
                check(items);
                
+               
        }
        
-       public void check(ArrayList<String> list){
+       public ValidationReport check(ArrayList<String> list){
+               
+               ValidationReport report = new ValidationReport();
+               
+               for(PathMetadata pm : this.aggr){
+                       
+                       //If aggregates listed in manifest are not found in 
bundle...
+                       if(!list.contains(pm.toString())){
+                               
+                               /*
+                                * Here it can be a external url or the file is 
missing
+                                * */
+                               //If the aggregate is a external URL...
+                               if(pm.toString().contains("http://";) || 
pm.toString().contains(".com")){
+                                       this.warning.add(pm.toString());
+                               }else{
+                                       this.errorList.add(pm.toString());      
+                               }
+                       }
+               }
+                       
+               /*
+                * There could be files in the bundle, which are not included 
as aggregates.
+                * There are default files: mimetype and LICENSE
+                * */
                
+               for(String s : list){
+                       
+                       s = s.toLowerCase();
+                       PathMetadata p = new PathMetadata(s);
+                       if(s.contains("mimetype")||s.contains("license")){
+                               //This is ok and skip
+                       }else{
+                               if(!this.aggr.contains(p)){
+                                       this.infoWarningList.add(s);
+                               }
+                       }
+               }
+               
+               report.setErrorList(this.errorList);
+               report.setInfoWarnings(this.infoWarningList);
+               report.setWarnings(this.warning);
+               
+               return report;
        }
        
+       
+       
+       
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/06bef782/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/ValidationReport.java
----------------------------------------------------------------------
diff --git 
a/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/ValidationReport.java
 
b/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/ValidationReport.java
index 6217039..04f6539 100644
--- 
a/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/ValidationReport.java
+++ 
b/taverna-robundle/src/main/java/org/apache/taverna/robundle/validator/ValidationReport.java
@@ -9,6 +9,10 @@ public class ValidationReport {
        private ArrayList<String> infoWarnings;
        
        private ArrayList<String> warnings;
+       
+       public ValidationReport(){
+               
+       }
 
        public ArrayList<String> getErrorList() {
                return errorList;

Reply via email to