Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentLoadLSFacet.java @ 8587:07c9ac22f611
(issue1755) Generalise BedQuality result handling
The bedquality calculation now produces a result for each time period
which has BedQualityResultValues for each specific result type.
Formally this was split up in density, porosity and diameter classes
with some bedload diameter classes mixed in for extra fun.
The intent of this commit is to allow more shared code and generic
access patterns to the BedQuality results.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Wed, 18 Mar 2015 18:42:08 +0100 |
parents | 1cd7225df846 |
children | b32c1927f90d |
rev | line source |
---|---|
8137
c200b76145ce
Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8114
diff
changeset
|
1 /* Copyright (C) 2012, 2012, 2013 by Bundesanstalt für Gewässerkunde |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
3 * |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
7 */ |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
8 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
9 package org.dive4elements.river.artifacts.model.minfo; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
10 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
11 import gnu.trove.TDoubleArrayList; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
12 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
13 import org.dive4elements.artifactdatabase.state.Facet; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
14 import org.dive4elements.artifactdatabase.state.StaticFacet; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
15 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
16 import org.dive4elements.artifacts.Artifact; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
17 import org.dive4elements.artifacts.CallContext; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
18 import org.dive4elements.artifacts.CallMeta; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
19 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
20 import org.dive4elements.river.artifacts.D4EArtifact; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
21 import org.dive4elements.river.artifacts.resources.Resources; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
22 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
23 import org.dive4elements.river.artifacts.model.DataFacet; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
24 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
25 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
26 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
27 import org.dive4elements.river.model.SedimentLoadLS; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
28 import org.dive4elements.river.model.SedimentLoadLSValue; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
29 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
30 import org.apache.log4j.Logger; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
31 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
32 import org.w3c.dom.Document; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
33 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
34 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
35 /** Facet to access sediment loads for longitudinal sections. |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
36 * This facet differs from the sedimentloadfacet in that it |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
37 * handles values from the sedimentload_ls table in the backend db. |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
38 * |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
39 * The sedimentload facet uses the internal sedimentload data model |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
40 * to work with measurement stations instead. |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
41 */ |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
42 public class SedimentLoadLSFacet |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
43 extends DataFacet |
8148 | 44 implements StaticFacet |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
45 { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
46 private static Logger log = Logger.getLogger(SedimentLoadLSFacet.class); |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
47 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
48 /* Aheinecke we probably need to get the kind and split this up here |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
49 * in some way */ |
8204
c657ddcf1fa6
Sediment loads at measurement stations and longitudinal sections need different processing and styling for diagrams.
Tom Gottfried <tom@intevation.de>
parents:
8202
diff
changeset
|
50 private static final String NAME = "sedimentload.ls"; |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
51 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
52 public SedimentLoadLSFacet() { |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
53 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
54 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
55 public SedimentLoadLSFacet(int idx, String name, String description, |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
56 ComputeType type, String stateId, String hash) { |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
57 super(idx, name, description, type, hash, stateId); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
58 this.metaData.put("X", "chart.longitudinal.section.xaxis.label"); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
59 this.metaData.put("Y", ""); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
60 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
61 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
62 @Override |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
63 public Object getData(Artifact artifact, CallContext context) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
64 log.debug("get Data"); |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
65 D4EArtifact arti = (D4EArtifact) artifact; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
66 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
67 String idStr = arti.getDataAsString("load_id"); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
68 int id = Integer.valueOf(idStr); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
69 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
70 SedimentLoadLS theLoad = SedimentLoadLS.getSedimentLoadById(id); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
71 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
72 if (theLoad == null) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
73 log.error("No load found for id: " + idStr); |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
74 return null; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
75 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
76 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
77 /* Now lets get what we want */ |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
78 TDoubleArrayList xPos = new TDoubleArrayList(); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
79 TDoubleArrayList yPos = new TDoubleArrayList(); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
80 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
81 for (SedimentLoadLSValue val: theLoad.getSedimentLoadLSValues()) { |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
82 double value = val.getValue(); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
83 if (Double.isNaN(value)) { |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
84 continue; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
85 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
86 xPos.add(val.getStation()); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
87 yPos.add(value); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
88 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
89 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
90 return new double[][] {xPos.toNativeArray(), yPos.toNativeArray()}; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
91 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
92 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
93 @Override |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
94 public void setup(Artifact artifact, Document data, CallMeta callMeta) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
95 log.debug("setup"); |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
96 String code = D4EArtifact.getDatacageIDValue(data); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
97 String[] split = code.split(";"); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
98 String idStr = split[0]; |
8142
d4e4dde1d5cb
With the exception of real calculation results, descriptions of sediment loads can all follow the same pattern.
Tom Gottfried <tom@intevation.de>
parents:
8137
diff
changeset
|
99 String years = split.length >= 2 ? split[1] : ""; |
8222
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
100 String kind = split.length >= 3 ? split[2] : ""; |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
101 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
102 int id = Integer.valueOf(idStr); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
103 SedimentLoadLS theLoad = SedimentLoadLS.getSedimentLoadById(id); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
104 if (theLoad == null) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
105 log.error("No load found for id: " + idStr); |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
106 return; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
107 } |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
108 log.debug("Setting up SedimentLoadLSFacet for id: " + id); |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
109 if (theLoad.getGrainFraction() != null) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
110 log.debug("GrainFraction: " + theLoad.getGrainFraction().getName()); |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
111 } |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
112 log.debug("Kind: " + theLoad.getKind()); |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
113 log.debug("Unit: " + theLoad.getUnit().getName()); |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
114 |
8204
c657ddcf1fa6
Sediment loads at measurement stations and longitudinal sections need different processing and styling for diagrams.
Tom Gottfried <tom@intevation.de>
parents:
8202
diff
changeset
|
115 // Name has the pattern sedimentload.ls.<unit>.<grainfraction_name> |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
116 name = NAME; |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
117 |
8114
84f42caeea2a
Reconstruct facet description of sediment load longitudinal sections. i18n will follow.
"Tom Gottfried <tom@intevation.de>"
parents:
8111
diff
changeset
|
118 String i18nUnit = ""; |
84f42caeea2a
Reconstruct facet description of sediment load longitudinal sections. i18n will follow.
"Tom Gottfried <tom@intevation.de>"
parents:
8111
diff
changeset
|
119 |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
120 if (theLoad.getUnit().getName().equals("m3/a")) { |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
121 /* unit_id is NOT NULL */ |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
122 name += ".m3a"; |
8114
84f42caeea2a
Reconstruct facet description of sediment load longitudinal sections. i18n will follow.
"Tom Gottfried <tom@intevation.de>"
parents:
8111
diff
changeset
|
123 i18nUnit = "m\u00b3/a"; |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
124 } else { |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
125 name += ".ta"; |
8114
84f42caeea2a
Reconstruct facet description of sediment load longitudinal sections. i18n will follow.
"Tom Gottfried <tom@intevation.de>"
parents:
8111
diff
changeset
|
126 i18nUnit = "t/a"; |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
127 } |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
128 |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
129 String gfName; |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
130 if (theLoad.getGrainFraction() != null) { |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
131 gfName = theLoad.getGrainFraction().getName(); |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
132 } else { |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
133 gfName = "unknown"; |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
134 } |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
135 name += "." + gfName; |
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
136 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8148
diff
changeset
|
137 log.debug("Created facet: " + name); |
8109
2707c3aa1aa7
(issue1681) Handle different grain fraction kinds
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8103
diff
changeset
|
138 |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
139 description = Resources.getMsg( |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
140 callMeta, |
8142
d4e4dde1d5cb
With the exception of real calculation results, descriptions of sediment loads can all follow the same pattern.
Tom Gottfried <tom@intevation.de>
parents:
8137
diff
changeset
|
141 "facet.sedimentload." + gfName, |
d4e4dde1d5cb
With the exception of real calculation results, descriptions of sediment loads can all follow the same pattern.
Tom Gottfried <tom@intevation.de>
parents:
8137
diff
changeset
|
142 new Object[] { years, i18nUnit }); |
8222
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
143 |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
144 if (kind.equals("official")) { |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
145 String descPrefix = Resources.getMsg( |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
146 callMeta, |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
147 "facet.sedimentload.prefix.offcial"); |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
148 description = descPrefix + description; |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
149 } |
1cd7225df846
Let official epochs be showy and remove detritus of 'yields' in datacage config.
Tom Gottfried <tom@intevation.de>
parents:
8204
diff
changeset
|
150 |
8103
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
151 ((D4EArtifact)artifact).addStringData("load_id", idStr); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
152 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
153 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
154 |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
155 /** Copy deeply. */ |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
156 @Override |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
157 public Facet deepCopy() { |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
158 SedimentLoadLSFacet copy = new SedimentLoadLSFacet(); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
159 copy.set(this); |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
160 copy.type = type; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
161 copy.hash = hash; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
162 copy.stateId = stateId; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
163 return copy; |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
164 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
165 } |
54d35418141e
Add SedimentLoadLSFacet
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
166 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |