Mercurial > dive4elements > river
comparison backend/src/main/java/org/dive4elements/river/importer/ImportRange.java @ 5838:5aa05a7a34b7
Rename modules to more fitting names.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 15:23:37 +0200 |
parents | flys-backend/src/main/java/org/dive4elements/river/importer/ImportRange.java@18619c1e7c2a |
children | 4dd33b86dc61 |
comparison
equal
deleted
inserted
replaced
5837:d9901a08d0a6 | 5838:5aa05a7a34b7 |
---|---|
1 package org.dive4elements.river.importer; | |
2 | |
3 import org.dive4elements.river.model.Range; | |
4 import org.dive4elements.river.model.River; | |
5 | |
6 import java.math.BigDecimal; | |
7 | |
8 import org.apache.log4j.Logger; | |
9 | |
10 /** A range that is about to be imported. */ | |
11 public class ImportRange | |
12 implements Comparable<ImportRange> | |
13 { | |
14 /** Private logger. */ | |
15 private static Logger log = Logger.getLogger(ImportRange.class); | |
16 | |
17 protected BigDecimal a; | |
18 protected BigDecimal b; | |
19 | |
20 protected Range peer; | |
21 | |
22 public ImportRange() { | |
23 } | |
24 | |
25 public ImportRange(BigDecimal a, BigDecimal b) { | |
26 this.a = a; | |
27 this.b = b; | |
28 } | |
29 | |
30 private static final int compare(BigDecimal a, BigDecimal b) { | |
31 if (a == null && b == null) { | |
32 return 0; | |
33 } | |
34 if (a == null && b != null) { | |
35 return -1; | |
36 } | |
37 if (a != null && b == null) { | |
38 return +1; | |
39 } | |
40 return a.compareTo(b); | |
41 } | |
42 | |
43 public void fixRangesOrder() { | |
44 if (compare(a, b) > 0) { | |
45 BigDecimal t = a; a = b; b = t; | |
46 } | |
47 } | |
48 | |
49 public int compareTo(ImportRange other) { | |
50 int cmp = compare(a, other.a); | |
51 if (cmp != 0) return cmp; | |
52 return compare(b, other.b); | |
53 } | |
54 | |
55 public BigDecimal getA() { | |
56 return a; | |
57 } | |
58 | |
59 public void setA(BigDecimal a) { | |
60 this.a = a; | |
61 } | |
62 | |
63 public BigDecimal getB() { | |
64 return b; | |
65 } | |
66 | |
67 public void setB(BigDecimal b) { | |
68 this.b = b; | |
69 } | |
70 | |
71 public Range getPeer(River river) { | |
72 if (peer == null) { | |
73 peer = ImporterSession.getInstance().getRange(river, a, b); | |
74 } | |
75 return peer; | |
76 } | |
77 } | |
78 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |