annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixAnalysisCompute.java @ 3785:a5f65e8983be

Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from file:///home/clients/bsh/bsh-generischer-viewer/Material/SVN/flys-artifacts/trunk ........ r5501 | felix | 2012-09-18 11:49:45 +0200 (Di, 18 Sep 2012) | 1 line fix issue865 - missing showarea theme prop. ........ r5502 | clins | 2012-09-18 12:18:30 +0200 (Di, 18 Sep 2012) | 1 line Add robustness checks to prevent NPEs ........ r5504 | felix | 2012-09-18 14:03:15 +0200 (Di, 18 Sep 2012) | 1 line i18n for area label (fix issue487). ........ r5505 | clins | 2012-09-18 16:19:59 +0200 (Di, 18 Sep 2012) | 1 line Update themes to show point descriptions ........ r5506 | rrenkert | 2012-09-18 17:00:30 +0200 (Di, 18 Sep 2012) | 3 lines Removed incorrect characteristic diameter. ........ r5507 | rrenkert | 2012-09-18 17:03:20 +0200 (Di, 18 Sep 2012) | 3 lines Fixed some stupid bugs in bed quality data factory and calculation. ........ r5508 | teichmann | 2012-09-18 17:45:49 +0200 (Di, 18 Sep 2012) | 1 line The usual whitespace and import cleanups. ........ r5511 | teichmann | 2012-09-18 18:24:51 +0200 (Di, 18 Sep 2012) | 1 line Use generics aware Collections.emptyList(). ........ r5512 | teichmann | 2012-09-18 20:36:52 +0200 (Di, 18 Sep 2012) | 1 line Some more little steps towards "Auslagerung extremer Wasserspiegellagen". ........ r5513 | clins | 2012-09-18 23:38:19 +0200 (Di, 18 Sep 2012) | 1 line A and B facets of fix analyis are now deactivated by default ........ r5516 | bricks | 2012-09-19 10:45:51 +0200 (Mi, 19 Sep 2012) | 2 lines Add the gauge station to the GaugeOverviewInfoService xml response ........ r5517 | rrenkert | 2012-09-19 10:50:23 +0200 (Mi, 19 Sep 2012) | 3 lines Added CSV export to bed quality calculation. ........ r5518 | bricks | 2012-09-19 11:04:04 +0200 (Mi, 19 Sep 2012) | 2 lines Fix date in changelog entry ........ r5519 | teichmann | 2012-09-19 11:17:14 +0200 (Mi, 19 Sep 2012) | 1 line Removed trailing whitespace. ........ flys-artifacts/tags/2.9.1@5531 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 19 Sep 2012 14:58:31 +0000
parents 487a8cb4a222
children 9a2c38fb5f29
rev   line source
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.artifacts.states.fixation;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
2
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
3 import java.text.DateFormat;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
4 import java.util.Date;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
5 import java.util.List;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
6
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
7 import org.apache.log4j.Logger;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
8
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
9 import de.intevation.artifactdatabase.state.Facet;
3785
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
10 import de.intevation.artifactdatabase.state.FacetActivity;
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
11 import de.intevation.artifacts.Artifact;
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12 import de.intevation.artifacts.CallContext;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13 import de.intevation.flys.artifacts.FLYSArtifact;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14 import de.intevation.flys.artifacts.access.FixAnalysisAccess;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
15 import de.intevation.flys.artifacts.model.CalculationResult;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16 import de.intevation.flys.artifacts.model.DataFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
17 import de.intevation.flys.artifacts.model.DateRange;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18 import de.intevation.flys.artifacts.model.FacetTypes;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
19 import de.intevation.flys.artifacts.model.ReportFacet;
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
20 import de.intevation.flys.artifacts.model.fixings.FixAnalysisCalculation;
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21 import de.intevation.flys.artifacts.model.fixings.FixAnalysisEventsFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22 import de.intevation.flys.artifacts.model.fixings.FixAnalysisPeriodsFacet;
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
23 import de.intevation.flys.artifacts.model.fixings.FixAnalysisResult;
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 import de.intevation.flys.artifacts.model.fixings.FixAvSectorFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 import de.intevation.flys.artifacts.model.fixings.FixDerivateFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 import de.intevation.flys.artifacts.model.fixings.FixDeviationFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 import de.intevation.flys.artifacts.model.fixings.FixLongitudinalAnalysisFacet;
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
28 import de.intevation.flys.artifacts.model.fixings.FixLongitudinalAvSectorFacet;
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29 import de.intevation.flys.artifacts.model.fixings.FixLongitudinalDeviationFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30 import de.intevation.flys.artifacts.model.fixings.FixLongitudinalReferenceFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31 import de.intevation.flys.artifacts.model.fixings.FixOutlierFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
32 import de.intevation.flys.artifacts.model.fixings.FixReferenceEventsFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
33 import de.intevation.flys.artifacts.model.fixings.FixWQCurveFacet;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34 import de.intevation.flys.artifacts.resources.Resources;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35 import de.intevation.flys.artifacts.states.DefaultState;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36 import de.intevation.flys.utils.IdGenerator;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
38 /**
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
39 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a>
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
40 */
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
41 public class FixAnalysisCompute
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
42 extends DefaultState
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
43 implements FacetTypes
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
44 {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
45 /** The log used in this class. */
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
46 private static Logger log = Logger.getLogger(FixAnalysisCompute.class);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
48 private static final String I18N_REFERENCEPERIOD = "fix.reference.period.event.short";
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
49
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50 private static final String I18N_ANALYSISPERIODS = "fix.analysis.periods";
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52 private static final String I18N_DERIVATIVE = "fix.derivative";
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 private static final String I18N_OUTLIER = "fix.outlier";
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
56 private static final String I18N_ANALYSIS = "fix.analysis.short";
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 private static final String I18N_DEVIATION = "fix.deviation";
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60 private static final String I18N_REFERENCEDEVIATION = "fix.reference.deviation";
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62 public static final String [] SECTOR_LABELS = {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 "[0 - (MNQ+MQ)/2)",
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64 "[(MNQ+MQ)/2 - (MQ+MHQ)/2)",
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65 "[(MQ+MHQ)/2 - HQ5)",
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66 "[HQ5 - \u221e)"
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67 };
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68
3785
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
69 static {
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
70 // Active/deactivate facets.
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
71 FacetActivity.Registry.getInstance().register(
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
72 "fixanalysis",
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
73 new FacetActivity() {
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
74 @Override
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
75 public Boolean isInitialActive(
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
76 Artifact artifact,
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
77 Facet facet,
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
78 String output
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
79 ) {
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
80 String name = facet.getName();
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
81
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
82 if (name.contains(FacetTypes.FIX_ANALYSIS_EVENTS_DWT)
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
83 || name.contains(FacetTypes.FIX_ANALYSIS_EVENTS_LS)
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
84 || name.contains(FacetTypes.FIX_ANALYSIS_EVENTS_WQ)
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
85 || name.contains(FacetTypes.FIX_REFERENCE_EVENTS_DWT)
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
86 || name.contains(FacetTypes.FIX_REFERENCE_EVENTS_LS)
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
87 || name.contains(FacetTypes.FIX_REFERENCE_EVENTS_WQ)
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
88 ) {
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
89 return Boolean.FALSE;
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
90 }
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
91
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
92 return Boolean.TRUE;
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
93 }
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
94 });
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
95 }
a5f65e8983be Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3730
diff changeset
96
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
97 /**
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
98 * The default constructor that initializes an empty State object.
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
99 */
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
100 public FixAnalysisCompute() {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
101 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
102
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
103 @Override
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
104 public Object computeAdvance(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
105 FLYSArtifact artifact,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
106 String hash,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
107 CallContext context,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
108 List<Facet> facets,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
109 Object old
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
110 ) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
111 log.debug("FixAnalysisCompute.computeAdvance");
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
112
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
113 CalculationResult res;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
114
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
115 FixAnalysisAccess access =
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
116 new FixAnalysisAccess(artifact);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
117
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
118 if (old instanceof CalculationResult) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
119 res = (CalculationResult)old;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
120 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
121 else {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
122 FixAnalysisCalculation calc = new FixAnalysisCalculation(access);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
123 res = calc.calculate();
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
124 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
125
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
126 if (facets == null) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
127 return res;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
128 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
129
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
130 if (res.getReport().hasProblems()) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
131 facets.add(new ReportFacet(ComputeType.ADVANCE, hash, id));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
132 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
133
3415
e3c7a3228bc2 FixA: Renamed FixResult to FixAnalysisResult.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3412
diff changeset
134 FixAnalysisResult fr = (FixAnalysisResult)res.getData();
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
135 if (fr == null) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
136 return res;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
137 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
138
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
139 facets.add(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
140 new DataFacet(CSV, "CSV data", ComputeType.ADVANCE, hash, id));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
141 facets.add(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
142 new DataFacet(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
143 FIX_PARAMETERS, "parameters", ComputeType.ADVANCE, hash, id));
3599
659c1111db13 FixA: Added exporter for AT files.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3415
diff changeset
144 facets.add(
659c1111db13 FixA: Added exporter for AT files.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3415
diff changeset
145 new DataFacet(AT, "AT data", ComputeType.ADVANCE, hash, id));
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
146
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
147 int maxId = -100;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
148
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
149 int sectorMask = fr.getUsedSectorsInAnalysisPeriods();
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
150
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
151 int qsS = access.getQSectorStart();
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
152 int qsE = access.getQSectorEnd();
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
153
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
154 // TODO: i18n
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
155 DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
156
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
157 DateRange [] periods = access.getAnalysisPeriods();
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
158
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
159 for (int i = 0; i < periods.length; i++) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
160 DateRange period = periods[i];
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
161 String startDate = df.format(period.getFrom());
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
162 String endDate = df.format(period.getTo());
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
163
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
164 for (int j = qsS; j <= qsE; j++) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
165
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
166 // Only emit facets for sectors that really have data.
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
167 if ((sectorMask & (1 << j)) == 0) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
168 continue;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
169 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
170
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
171 String sector = SECTOR_LABELS[j];
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
172 String description = sector + ": " +
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
173 startDate + " - " +
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
174 endDate;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
175
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
176 int sectorNdx = j - qsS;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
177 int facetNdx = i << 2;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
178 facetNdx = facetNdx | j;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
179
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
180 if (facetNdx > maxId) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
181 maxId = facetNdx;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
182 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
183
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
184 facets.add(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
185 new FixAvSectorFacet(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
186 facetNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
187 FIX_SECTOR_AVERAGE_DWT + "_" + sectorNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
188 description));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
189 facets.add(
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
190 new FixLongitudinalAvSectorFacet(
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
191 facetNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
192 FIX_SECTOR_AVERAGE_LS + "_" + sectorNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
193 description));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
194 // TODO: i18n
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
195 String dev = "Abweichung: " + description;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
196 facets.add(
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
197 new FixLongitudinalAvSectorFacet(
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
198 facetNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
199 FIX_SECTOR_AVERAGE_LS_DEVIATION + "_" + sectorNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
200 dev));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
201 facets.add(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
202 new FixAvSectorFacet(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
203 facetNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
204 FIX_SECTOR_AVERAGE_WQ + "_" + sectorNdx,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
205 description));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
206
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
207 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
208
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
209 String eventDesc =
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
210 Resources.getMsg(context.getMeta(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
211 I18N_ANALYSIS,
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
212 I18N_ANALYSIS);
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
213
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
214 int k = 0;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
215 for (Date d: fr.getAnalysisEventsDates(i)) {
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
216 int anaNdx = i << 8;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
217 anaNdx = anaNdx | k;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
218 facets.add(new FixAnalysisEventsFacet(anaNdx,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
219 FIX_ANALYSIS_EVENTS_DWT,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
220 eventDesc + (i+1) + " - " + df.format(d)));
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
221 facets.add(new FixLongitudinalAnalysisFacet(anaNdx,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
222 FIX_ANALYSIS_EVENTS_LS,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
223 eventDesc + (i+1) + " - " + df.format(d)));
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
224 facets.add(new FixAnalysisEventsFacet(anaNdx,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
225 FIX_ANALYSIS_EVENTS_WQ,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
226 eventDesc + (i+1) +" - " + df.format(d)));
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
227 k++;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
228 }
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
229 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
230
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
231 IdGenerator idg = new IdGenerator(maxId + 1);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
232
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
233 String i18n_ref = Resources.getMsg(context.getMeta(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
234 I18N_REFERENCEPERIOD,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
235 I18N_REFERENCEPERIOD);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
236 String i18n_dev = Resources.getMsg(context.getMeta(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
237 I18N_REFERENCEDEVIATION,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
238 I18N_REFERENCEDEVIATION);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
239
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
240 int i = 0;
3730
487a8cb4a222 FixA: Improved robustness and performance in facet generation for dates.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3610
diff changeset
241 for (Date d: fr.getReferenceEventsDates()) {
3610
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
242 int refNdx = idg.next() << 8;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
243 refNdx |= i;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
244 facets.add(new FixReferenceEventsFacet(refNdx,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
245 FIX_REFERENCE_EVENTS_DWT,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
246 i18n_ref + " - " + df.format(d)));
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
247 refNdx = idg.next() << 8;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
248 refNdx = refNdx | i;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
249 facets.add(new FixLongitudinalReferenceFacet(refNdx,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
250 FIX_REFERENCE_EVENTS_LS,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
251 i18n_ref + " - " + df.format(d)));
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
252 refNdx = idg.next() << 8;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
253 refNdx |= i;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
254 facets.add(new FixReferenceEventsFacet(refNdx,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
255 FIX_REFERENCE_EVENTS_WQ,
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
256 i18n_ref + " - " + df.format(d)));
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
257 i++;
66f539df4e8b Issue 716.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3599
diff changeset
258 }
3412
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
259
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
260
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
261 facets.add(new FixLongitudinalDeviationFacet(idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
262 FIX_DEVIATION_LS,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
263 i18n_dev));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
264
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
265 String i18n_ana = Resources.getMsg(context.getMeta(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
266 I18N_ANALYSISPERIODS,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
267 I18N_ANALYSISPERIODS);
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
268 facets.add(new FixAnalysisPeriodsFacet(idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
269 FIX_ANALYSIS_PERIODS_DWT,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
270 i18n_ana));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
271 facets.add(new FixAnalysisPeriodsFacet(idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
272 FIX_ANALYSIS_PERIODS_LS,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
273 i18n_ana));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
274 facets.add(new FixAnalysisPeriodsFacet(idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
275 FIX_ANALYSIS_PERIODS_WQ,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
276 i18n_ana));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
277
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
278
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
279 facets.add(new FixWQCurveFacet(idg.next(), "W/Q"));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
280
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
281 Boolean preprocessing = access.getPreprocessing();
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
282
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
283 if (preprocessing != null && preprocessing) {
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
284 facets.add(new FixOutlierFacet(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
285 idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
286 FIX_OUTLIER,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
287 Resources.getMsg(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
288 context.getMeta(), I18N_OUTLIER, I18N_OUTLIER)));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
289 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
290
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
291 facets.add(new FixDerivateFacet(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
292 idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
293 FIX_DERIVATE,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
294 Resources.getMsg(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
295 context.getMeta(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
296 I18N_DERIVATIVE,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
297 I18N_DERIVATIVE)));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
298
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
299 facets.add(new FixDeviationFacet(
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
300 idg.next(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
301 FIX_DEVIATION_DWT,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
302 Resources.getMsg(context.getMeta(),
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
303 I18N_DEVIATION,
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
304 I18N_DEVIATION)));
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
305 return res;
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
306 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
307 }
da000d9513f7 FixA: Renamed FixationCompute to FixAnalysisCompute
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
308 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org