diff artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentLoadDataValueFilter.java @ 8055:cd35b76f1ef8

Sediment load. More off year based calculations.
author Sascha L. Teichmann <teichmann@intevation.de>
date Fri, 18 Jul 2014 13:03:28 +0200
parents 72760ca2fc2b
children 25feef564d09
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentLoadDataValueFilter.java	Fri Jul 18 12:22:51 2014 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentLoadDataValueFilter.java	Fri Jul 18 13:03:28 2014 +0200
@@ -20,6 +20,20 @@
     private SedimentLoadDataValueFilter() {
     }
 
+    public static final class Not implements Filter {
+
+        private Filter parent;
+
+        public Not(Filter parent) {
+            this.parent = parent;
+        }
+
+        @Override
+        public boolean accept(Value value) {
+            return !parent.accept(value);
+        }
+    } // class Not
+
     public static abstract class Composite implements Filter {
         protected List<Filter> filters;
 
@@ -27,8 +41,9 @@
             filters = new ArrayList<Filter>();
         }
 
-        public void add(Filter filter) {
+        public Composite add(Filter filter) {
             filters.add(filter);
+            return this;
         }
     }
 
@@ -98,6 +113,10 @@
         private Date a;
         private Date b;
 
+        public TimeRangeIntersects(int year) {
+            this(year, year);
+        }
+
         public TimeRangeIntersects(int startYear, int endYear) {
             this(firstJan(Math.min(startYear, endYear)),
                 lastDec(Math.max(startYear, endYear)));

http://dive4elements.wald.intevation.org