Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/sq/SQ.java @ 8539:84929f882fa2
(issue1753) Carry measurement date through SQ values
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Fri, 13 Feb 2015 12:34:06 +0100 |
parents | b8f94e865875 |
children |
comparison
equal
deleted
inserted
replaced
8538:c25a8066d99f | 8539:84929f882fa2 |
---|---|
8 | 8 |
9 package org.dive4elements.river.artifacts.model.sq; | 9 package org.dive4elements.river.artifacts.model.sq; |
10 | 10 |
11 import java.io.Serializable; | 11 import java.io.Serializable; |
12 | 12 |
13 import java.util.Date; | |
14 | |
13 | 15 |
14 /** Represents S/Q pairs. They are immutable! */ | 16 /** Represents S/Q pairs. They are immutable! */ |
15 public class SQ implements Serializable { | 17 public class SQ implements Serializable { |
16 | 18 |
17 public interface Factory { | 19 public interface Factory { |
18 SQ createSQ(double s, double q); | 20 SQ createSQ(double s, double q, Date d); |
19 } | 21 } |
20 | 22 |
21 public static final Factory SQ_FACTORY = new Factory() { | 23 public static final Factory SQ_FACTORY = new Factory() { |
22 @Override | 24 @Override |
23 public SQ createSQ(double s, double q) { | 25 public SQ createSQ(double s, double q, Date d) { |
24 return new SQ(s, q); | 26 return new SQ(s, q, d); |
25 } | 27 } |
26 }; | 28 }; |
27 | 29 |
28 public interface View { | 30 public interface View { |
29 double getS(SQ sq); | 31 double getS(SQ sq); |
30 double getQ(SQ sq); | 32 double getQ(SQ sq); |
33 Date getDate(SQ sq); | |
31 } | 34 } |
32 | 35 |
33 public static final View SQ_VIEW = new View() { | 36 public static final View SQ_VIEW = new View() { |
34 @Override | 37 @Override |
35 public double getS(SQ sq) { | 38 public double getS(SQ sq) { |
38 | 41 |
39 @Override | 42 @Override |
40 public double getQ(SQ sq) { | 43 public double getQ(SQ sq) { |
41 return sq.getQ(); | 44 return sq.getQ(); |
42 } | 45 } |
46 | |
47 @Override | |
48 public Date getDate(SQ sq) { | |
49 return sq.getDate(); | |
50 } | |
43 }; | 51 }; |
44 | 52 |
45 protected double s; | 53 protected double s; |
46 protected double q; | 54 protected double q; |
55 protected Date d; | |
47 | 56 |
48 public SQ() { | 57 public SQ() { |
49 } | 58 } |
50 | 59 |
51 public SQ(double s, double q) { | 60 public SQ(double s, double q, Date d) { |
52 this.s = s; | 61 this.s = s; |
53 this.q = q; | 62 this.q = q; |
63 this.d = d; | |
54 } | 64 } |
55 | 65 |
56 | 66 |
57 public double getS() { | 67 public double getS() { |
58 return s; | 68 return s; |
60 | 70 |
61 public double getQ() { | 71 public double getQ() { |
62 return q; | 72 return q; |
63 } | 73 } |
64 | 74 |
75 public Date getDate() { | |
76 return d; | |
77 } | |
78 | |
65 public boolean isValid() { | 79 public boolean isValid() { |
66 return !Double.isNaN(s) && !Double.isNaN(q); | 80 return !Double.isNaN(s) && !Double.isNaN(q); |
67 } | 81 } |
68 } | 82 } |
69 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 83 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |