comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/WaterlevelFacet.java @ 8202:e4606eae8ea5

sed src/**/*.java 's/logger/log/g'
author Sascha L. Teichmann <teichmann@intevation.de>
date Fri, 05 Sep 2014 12:58:17 +0200
parents 2e0ba1f67900
children 5e38e2924c07
comparison
equal deleted inserted replaced
8201:4b8c5a08de04 8202:e4606eae8ea5
21 /** 21 /**
22 * Facet of a Waterlevel (WQKms). 22 * Facet of a Waterlevel (WQKms).
23 */ 23 */
24 public class WaterlevelFacet extends DataFacet { 24 public class WaterlevelFacet extends DataFacet {
25 25
26 private static Logger logger = Logger.getLogger(WaterlevelFacet.class); 26 private static Logger log = Logger.getLogger(WaterlevelFacet.class);
27 27
28 public WaterlevelFacet(int index, String name, String description) { 28 public WaterlevelFacet(int index, String name, String description) {
29 super(index, name, description, ComputeType.ADVANCE, null, null); 29 super(index, name, description, ComputeType.ADVANCE, null, null);
30 } 30 }
31 31
50 return ((ExtremeResult) res.getData()).getWQKms(); 50 return ((ExtremeResult) res.getData()).getWQKms();
51 else if (res.getData() instanceof WQKms[]) { 51 else if (res.getData() instanceof WQKms[]) {
52 return (WQKms []) res.getData(); 52 return (WQKms []) res.getData();
53 } 53 }
54 else { 54 else {
55 logger.error("WaterlevelFacet got wrong data type " + res.getData()); 55 log.error("WaterlevelFacet got wrong data type " + res.getData());
56 return null; 56 return null;
57 } 57 }
58 } 58 }
59 59
60 /** 60 /**
62 * @return a WQKms at given index. 62 * @return a WQKms at given index.
63 */ 63 */
64 @Override 64 @Override
65 public Object getData(Artifact artifact, CallContext context) { 65 public Object getData(Artifact artifact, CallContext context) {
66 66
67 if (logger.isDebugEnabled()) { 67 if (log.isDebugEnabled()) {
68 logger.debug("Get data for waterlevels at index: " + index + 68 log.debug("Get data for waterlevels at index: " + index +
69 " /stateId: " + stateId); 69 " /stateId: " + stateId);
70 } 70 }
71 71
72 if (artifact == null) { 72 if (artifact == null) {
73 logger.error("WaterlevelFacet.getData: artifact is null"); 73 log.error("WaterlevelFacet.getData: artifact is null");
74 return null; 74 return null;
75 } 75 }
76 76
77 D4EArtifact winfo = (D4EArtifact) artifact; 77 D4EArtifact winfo = (D4EArtifact) artifact;
78 78
79 CalculationResult res = (CalculationResult) 79 CalculationResult res = (CalculationResult)
80 winfo.compute(context, hash, stateId, type, false); 80 winfo.compute(context, hash, stateId, type, false);
81 81
82 if (res == null) { 82 if (res == null) {
83 logger.error("WaterlevelFacet.getData: null result"); 83 log.error("WaterlevelFacet.getData: null result");
84 return null; 84 return null;
85 } 85 }
86 86
87 WQKms [] wqkms = getWQKms(res); 87 WQKms [] wqkms = getWQKms(res);
88 Object KM = context.getContextValue("currentKm"); 88 Object KM = context.getContextValue("currentKm");
90 // Interpolation. 90 // Interpolation.
91 if (KM != null) { 91 if (KM != null) {
92 linearInterpolate(wqkms[index], (Double) KM); 92 linearInterpolate(wqkms[index], (Double) KM);
93 } 93 }
94 else { 94 else {
95 logger.debug("Do not interpolate."); 95 log.debug("Do not interpolate.");
96 } 96 }
97 97
98 return wqkms != null ? wqkms[index] : null; 98 return wqkms != null ? wqkms[index] : null;
99 } 99 }
100 100
103 * Linear interpolation of WQKms. 103 * Linear interpolation of WQKms.
104 * TODO rewrite. 104 * TODO rewrite.
105 * @return [w, q, km] 105 * @return [w, q, km]
106 */ 106 */
107 public WQKms linearInterpolate(WQKms wqkms, double km) { 107 public WQKms linearInterpolate(WQKms wqkms, double km) {
108 logger.debug("interpolate at given km (" + km + ")"); 108 log.debug("interpolate at given km (" + km + ")");
109 109
110 WQKms resultWQKms = new WQKms(); 110 WQKms resultWQKms = new WQKms();
111 int size = wqkms.size(); 111 int size = wqkms.size();
112 boolean kmIncreasing = wqkms.getKm(0) < wqkms.getKm(size-1); 112 boolean kmIncreasing = wqkms.getKm(0) < wqkms.getKm(size-1);
113 int mod = kmIncreasing ? +1 : -1; 113 int mod = kmIncreasing ? +1 : -1;
147 wqkms.getKm(idx), wqkms.getKm(idx - mod), 147 wqkms.getKm(idx), wqkms.getKm(idx - mod),
148 wqkms.getQ(idx), wqkms.getQ(idx - mod)); 148 wqkms.getQ(idx), wqkms.getQ(idx - mod));
149 resultWQKms.add(inW, inQ, km); 149 resultWQKms.add(inW, inQ, km);
150 } 150 }
151 else { 151 else {
152 logger.debug("waterlevelfacet stuff " + idx + " size " + size + " mod: " + mod); 152 log.debug("waterlevelfacet stuff " + idx + " size " + size + " mod: " + mod);
153 } 153 }
154 154
155 return resultWQKms; 155 return resultWQKms;
156 } 156 }
157 157

http://dive4elements.wald.intevation.org