Mercurial > dive4elements > river
comparison backend/src/main/java/org/dive4elements/river/model/River.java @ 9527:7c8d62867876
Cleanup of MainWstValue code. Cache qPositions once determined.
author | gernotbelger |
---|---|
date | Tue, 02 Oct 2018 13:25:52 +0200 |
parents | 50416a0df385 |
children | d9fda7af24ca |
comparison
equal
deleted
inserted
replaced
9526:51212d40ff56 | 9527:7c8d62867876 |
---|---|
12 import java.math.BigDecimal; | 12 import java.math.BigDecimal; |
13 import java.math.MathContext; | 13 import java.math.MathContext; |
14 import java.util.Comparator; | 14 import java.util.Comparator; |
15 import java.util.List; | 15 import java.util.List; |
16 import java.util.Map; | 16 import java.util.Map; |
17 import java.util.NavigableMap; | |
17 import java.util.TreeMap; | 18 import java.util.TreeMap; |
18 | 19 |
19 import javax.persistence.Column; | 20 import javax.persistence.Column; |
20 import javax.persistence.Entity; | 21 import javax.persistence.Entity; |
21 import javax.persistence.GeneratedValue; | 22 import javax.persistence.GeneratedValue; |
425 if (gauge.getName().equalsIgnoreCase(name)) | 426 if (gauge.getName().equalsIgnoreCase(name)) |
426 return gauge; | 427 return gauge; |
427 } | 428 } |
428 return null; | 429 return null; |
429 } | 430 } |
431 | |
432 public Gauge firstUpstreamGauge() { | |
433 final List<Gauge> gauges = getGauges(); | |
434 | |
435 final NavigableMap<BigDecimal, Gauge> byKm = new TreeMap<>(); | |
436 | |
437 for (final Gauge gauge : gauges) { | |
438 final Range range = gauge.getRange(); | |
439 if (range != null) { | |
440 final BigDecimal a = range.getA(); | |
441 byKm.put(a, gauge); | |
442 } | |
443 } | |
444 | |
445 if (byKm.isEmpty()) | |
446 return null; | |
447 | |
448 if (kmUp) | |
449 return byKm.lastEntry().getValue(); | |
450 | |
451 return byKm.firstEntry().getValue(); | |
452 } | |
430 } | 453 } |
431 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 454 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |