comparison artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixMnwMwResultFacet.java @ 9347:08f46ccd37ba

salix.regional refactoring
author gernotbelger
date Tue, 31 Jul 2018 16:04:01 +0200
parents 72b3270e1568
children
comparison
equal deleted inserted replaced
9346:d89976700474 9347:08f46ccd37ba
6 * documentation coming with Dive4Elements River for details. 6 * documentation coming with Dive4Elements River for details.
7 */ 7 */
8 8
9 package org.dive4elements.river.artifacts.uinfo.salix; 9 package org.dive4elements.river.artifacts.uinfo.salix;
10 10
11 import org.apache.log4j.Logger;
12 import org.dive4elements.artifactdatabase.state.Facet; 11 import org.dive4elements.artifactdatabase.state.Facet;
13 import org.dive4elements.artifacts.Artifact; 12 import org.dive4elements.river.artifacts.common.ResultFacet;
14 import org.dive4elements.artifacts.CallContext; 13 import org.dive4elements.river.artifacts.states.DefaultState.ComputeType;
15 import org.dive4elements.river.artifacts.D4EArtifact;
16 import org.dive4elements.river.artifacts.common.AbstractCalculationResult;
17 import org.dive4elements.river.artifacts.common.AbstractCalculationResults;
18 import org.dive4elements.river.artifacts.model.CalculationResult;
19 import org.dive4elements.river.artifacts.model.DataFacet;
20 14
21 /** 15 /**
22 * Facet of the U-Info salix mnw-mw curve. 16 * Facet of the U-Info salix mnw-mw curve.
23 */ 17 */
24 public class SalixMnwMwResultFacet extends DataFacet { 18 public class SalixMnwMwResultFacet extends ResultFacet {
25 19
26 private static final long serialVersionUID = 1L; 20 private static final long serialVersionUID = 1L;
27
28 private static Logger log = Logger.getLogger(SalixMnwMwResultFacet.class);
29
30 private int resultIndex;
31 21
32 public SalixMnwMwResultFacet() { 22 public SalixMnwMwResultFacet() {
33 // required for clone operation deepCopy() 23 // required for clone operation deepCopy()
34 } 24 }
35 25
36 public SalixMnwMwResultFacet(final String name, final String description) { 26 public SalixMnwMwResultFacet(final int facetIndex, final int resultIndex, final String name, final String description, final String yAxisLabel,
37 super(name, description); 27 final String id, final String hash) {
38 } 28 super(facetIndex, resultIndex, name, description, yAxisLabel, ComputeType.ADVANCE, id, hash);
39
40 @Override
41 public final Object getData(final Artifact artifact, final CallContext context) {
42
43 log.debug("Get data for result at index: " + this.resultIndex);
44
45 final D4EArtifact flys = (D4EArtifact) artifact;
46
47 final CalculationResult res = (CalculationResult) flys.compute(context, this.hash, this.stateId, this.type, false);
48
49 final AbstractCalculationResults<AbstractCalculationResult> data = (AbstractCalculationResults<AbstractCalculationResult>) res.getData();
50
51 return data.getResults().get(this.resultIndex);
52 } 29 }
53 30
54 /** Copy deeply. */ 31 /** Copy deeply. */
55 @Override 32 @Override
56 public Facet deepCopy() { 33 public Facet deepCopy() {

http://dive4elements.wald.intevation.org