comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationCurveProcessor.java @ 9376:f318359b81a2

S-Info flood duration theme rename, and more infrastructure themes in the duration curve
author mschaefer
date Fri, 03 Aug 2018 17:02:38 +0200
parents 66b003701546
children f8308db94634
comparison
equal deleted inserted replaced
9375:a0a2e68a1e11 9376:f318359b81a2
18 import org.dive4elements.river.artifacts.common.AbstractCalculationResult; 18 import org.dive4elements.river.artifacts.common.AbstractCalculationResult;
19 import org.dive4elements.river.artifacts.model.FacetTypes; 19 import org.dive4elements.river.artifacts.model.FacetTypes;
20 import org.dive4elements.river.exports.DiagramGenerator; 20 import org.dive4elements.river.exports.DiagramGenerator;
21 import org.dive4elements.river.exports.DurationCurveGenerator; 21 import org.dive4elements.river.exports.DurationCurveGenerator;
22 import org.dive4elements.river.exports.process.DefaultProcessor; 22 import org.dive4elements.river.exports.process.DefaultProcessor;
23 import org.dive4elements.river.model.Attribute.AttributeKey;
23 24
24 /** 25 /**
25 * Processor to generate the facet and data series of a flood duration curve 26 * Processor to generate the facet and data series of a flood duration curve
26 * 27 *
27 * @author Matthias Schäfer 28 * @author Matthias Schäfer
35 36
36 public static final String FACET_FLOOD_DURATION_MAINVALUES_W = "sinfo.mainvalues.w"; 37 public static final String FACET_FLOOD_DURATION_MAINVALUES_W = "sinfo.mainvalues.w";
37 38
38 public static final String FACET_FLOOD_DURATION_MAINVALUES_Q = "sinfo.mainvalues.q"; 39 public static final String FACET_FLOOD_DURATION_MAINVALUES_Q = "sinfo.mainvalues.q";
39 40
40 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE = "infrastructure.wq"; 41 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT = "infrastructure.w.left";
42
43 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT = "infrastructure.w.right";
44
45 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT = "infrastructure.q.left";
46
47 public static final String FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT = "infrastructure.q.right";
41 48
42 private static final Set<String> HANDLED_FACET_TYPES = new HashSet<>(); 49 private static final Set<String> HANDLED_FACET_TYPES = new HashSet<>();
43 50
44 static { 51 static {
45 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_W); 52 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_W);
46 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_Q); 53 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_Q);
47 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_W); 54 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_W);
48 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_Q); 55 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_MAINVALUES_Q);
49 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE); 56 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT);
57 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT);
58 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT);
59 HANDLED_FACET_TYPES.add(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT);
60 }
61
62 public static boolean isInfrastructureFacet(final String name) {
63 return name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT) || name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT)
64 || name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT) || name.equals(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT);
50 } 65 }
51 66
52 public static Facet createFloodDurationWCurveFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, 67 public static Facet createFloodDurationWCurveFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result,
53 final int facetIndex, final int resultIndex, final String description) { 68 final int facetIndex, final int resultIndex, final String description) {
54 69
71 final int facetIndex, final int resultIndex, final String description) { 86 final int facetIndex, final int resultIndex, final String description) {
72 87
73 return new FloodDurationMainValuesQFacet(FACET_FLOOD_DURATION_MAINVALUES_Q, description); 88 return new FloodDurationMainValuesQFacet(FACET_FLOOD_DURATION_MAINVALUES_Q, description);
74 } 89 }
75 90
76 public static Facet createInfrastructureWFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, 91 public static Facet createInfrastructureFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result,
77 final int facetIndex, final int resultIndex, final String description) { 92 final int facetIndex, final int resultIndex, final String description, final AttributeKey riverside, final boolean isW) {
78 93
79 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE, description); 94 if (riverside == AttributeKey.LEFT) {
95 if (isW)
96 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_LEFT, description, riverside, isW);
97 else
98 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_LEFT, description, riverside, isW);
99 }
100 else {
101 if (isW)
102 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_W_RIGHT, description, riverside, isW);
103 else
104 return new FloodDurationInfrastructureFacet(FACET_FLOOD_DURATION_INFRASTRUCTURE_Q_RIGHT, description, riverside, isW);
105 }
80 } 106 }
81 107
82 @Override 108 @Override
83 public final String getAxisLabel(final DiagramGenerator generator) { 109 public final String getAxisLabel(final DiagramGenerator generator) {
84 return generator.msg(DurationCurveGenerator.I18N_YAXIS_LABEL_W); 110 return generator.msg(DurationCurveGenerator.I18N_YAXIS_LABEL_W);

http://dive4elements.wald.intevation.org