Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/states/fixation/LocationSelect.java @ 6059:5f52a8079625
Get location limits from fixation overview in fixation location selection
Part of issue 1277
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Wed, 22 May 2013 13:03:10 +0200 |
parents | af13ceeba52a |
children | 3516b58296bb |
rev | line source |
---|---|
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5867
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5867
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4866
diff
changeset
|
9 package org.dive4elements.river.artifacts.states.fixation; |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 import org.apache.log4j.Logger; |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4866
diff
changeset
|
13 import org.dive4elements.artifacts.Artifact; |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
15 import org.dive4elements.river.utils.RiverUtils; |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
17 import org.dive4elements.river.artifacts.D4EArtifact; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4866
diff
changeset
|
18 import org.dive4elements.river.artifacts.states.RangeState; |
6059
5f52a8079625
Get location limits from fixation overview in fixation location selection
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
19 import org.dive4elements.river.artifacts.model.FixingsOverviewFactory; |
5f52a8079625
Get location limits from fixation overview in fixation location selection
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
20 import org.dive4elements.river.artifacts.model.FixingsOverview; |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 /** |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 */ |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 public class LocationSelect extends RangeState { |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 /** The logger used in this class. */ |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 private static Logger logger = Logger.getLogger(LocationSelect.class); |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 |
4866
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
31 private static final String LOWER = "ld_from"; |
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
32 |
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
33 private static final String UPPER = "ld_to"; |
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
34 |
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
35 private static final String STEP = "ld_step"; |
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
36 |
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4865
diff
changeset
|
37 |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 /** |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 * The default constructor that initializes an empty State object. |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 */ |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 public LocationSelect() { |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 } |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 @Override |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 protected String getUIProvider() { |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 return "fix.location_panel"; |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 } |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 @Override |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 protected double[] getMinMax(Artifact artifact) { |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
51 D4EArtifact flysArtifact = (D4EArtifact) artifact; |
6059
5f52a8079625
Get location limits from fixation overview in fixation location selection
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
52 String riverName = flysArtifact.getDataAsString("river"); |
5f52a8079625
Get location limits from fixation overview in fixation location selection
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
53 FixingsOverview overview = FixingsOverviewFactory.getOverview(riverName); |
5f52a8079625
Get location limits from fixation overview in fixation location selection
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
54 |
5f52a8079625
Get location limits from fixation overview in fixation location selection
Andre Heinecke <aheinecke@intevation.de>
parents:
5994
diff
changeset
|
55 return new double[]{overview.getExtent().getStart(), overview.getExtent().getEnd()}; |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 } |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 |
3447
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
58 |
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
59 /** Misuse to set location mode. */ |
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
60 @Override |
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
61 public boolean validate(Artifact artifact) |
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
62 throws IllegalArgumentException |
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
63 { |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
64 ((D4EArtifact) artifact).addStringData("ld_mode", "distance"); |
3447
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
65 return super.validate(artifact); |
90ef6fdcf688
Set ld_mode.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2699
diff
changeset
|
66 } |
2651
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
67 } |
9e9eb9d97548
Initial transition configuration and artifact/state stubs for fixation
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |