# HG changeset patch # User Ingo Weinzierl # Date 1347457078 0 # Node ID 3dcc4feff243991376d793538f41a275553cb8d5 # Parent 99f80469ba2ba2e2f583f996cf3eb3302925d0f6 Created the initial structure for MINFO bed quality chart generation. flys-artifacts/trunk@5439 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 99f80469ba2b -r 3dcc4feff243 flys-artifacts/ChangeLog --- a/flys-artifacts/ChangeLog Tue Sep 11 14:46:09 2012 +0000 +++ b/flys-artifacts/ChangeLog Wed Sep 12 13:37:58 2012 +0000 @@ -1,3 +1,20 @@ +2012-09-12 Ingo Weinzierl + + * doc/conf/artifacts/minfo.xml: Defined facets for bed quality chart. + + * src/main/java/de/intevation/flys/artifacts/model/BedQualityCalculation.java: + Calculation stub for bed quality. + + * src/main/java/de/intevation/flys/artifacts/access/BedQualityAccess.java: + Access stub for bed quality data. + + * src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java: Added + facets defined in minfo.xml. + + * src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java: + Override computeAdvance; no calculation and facet creation takes place + yet. + 2012-09-11 Sascha L. Teichmann * src/main/java/de/intevation/flys/artifacts/services/GaugeOverviewInfoService.java: diff -r 99f80469ba2b -r 3dcc4feff243 flys-artifacts/doc/conf/artifacts/minfo.xml --- a/flys-artifacts/doc/conf/artifacts/minfo.xml Tue Sep 11 14:46:09 2012 +0000 +++ b/flys-artifacts/doc/conf/artifacts/minfo.xml Wed Sep 12 13:37:58 2012 +0000 @@ -285,6 +285,10 @@ + + + + diff -r 99f80469ba2b -r 3dcc4feff243 flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedQualityAccess.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/BedQualityAccess.java Wed Sep 12 13:37:58 2012 +0000 @@ -0,0 +1,11 @@ +package de.intevation.flys.artifacts.access; + +import de.intevation.flys.artifacts.FLYSArtifact; + +public class BedQualityAccess extends Access { + + public BedQualityAccess(FLYSArtifact artifact) { + super(artifact); + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : diff -r 99f80469ba2b -r 3dcc4feff243 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/BedQualityCalculation.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/BedQualityCalculation.java Wed Sep 12 13:37:58 2012 +0000 @@ -0,0 +1,19 @@ +package de.intevation.flys.artifacts.model; + +import org.apache.log4j.Logger; + +import de.intevation.flys.artifacts.access.BedQualityAccess; + +public class BedQualityCalculation extends Calculation { + + private static final Logger logger = Logger.getLogger(BedQualityCalculation.class); + + public CalculationResult calculate(BedQualityAccess access) { + logger.info("BedQualityCalculation.calculate"); + + // TODO calculate + Object result = null; + + return new CalculationResult(result, this); + } +} diff -r 99f80469ba2b -r 3dcc4feff243 flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java Tue Sep 11 14:46:09 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/FacetTypes.java Wed Sep 12 13:37:58 2012 +0000 @@ -214,6 +214,11 @@ String MIDDLE_BED_HEIGHT_SINGLE = "bedheight_middle.single"; String MIDDLE_BED_HEIGHT_EPOCH = "bedheight_middle.epoch"; String MIDDLE_BED_HEIGHT_ANNOTATION = "bedheight_middle.annotation"; + + String BED_QUALITY_POROSITY = "bed_longitudinal_section.porosity"; + String BED_QUALITY_BED_DIAMETER = "bed_longitudinal_section.bed_diameter"; + String BED_QUALITY_BEDLOAD_DIAMETER = "bed_longitudinal_section.bedload_diameter"; + String BED_QUALITY_SEDIMENT_DENSITY = "bed_longitudinal_section.sediment_density"; String SQ_OVERVIEW = "sq_overview"; diff -r 99f80469ba2b -r 3dcc4feff243 flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java --- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java Tue Sep 11 14:46:09 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/minfo/BedQualityState.java Wed Sep 12 13:37:58 2012 +0000 @@ -1,7 +1,49 @@ package de.intevation.flys.artifacts.states.minfo; +import java.util.ArrayList; +import java.util.List; + +import org.apache.log4j.Logger; + +import de.intevation.artifactdatabase.state.Facet; +import de.intevation.artifacts.CallContext; +import de.intevation.flys.artifacts.FLYSArtifact; +import de.intevation.flys.artifacts.access.BedQualityAccess; +import de.intevation.flys.artifacts.model.BedQualityCalculation; +import de.intevation.flys.artifacts.model.CalculationResult; import de.intevation.flys.artifacts.states.DefaultState; public class BedQualityState extends DefaultState { + + private static final Logger logger = Logger.getLogger(BedQualityState.class); + + @Override + public Object computeAdvance( + FLYSArtifact artifact, + String hash, + CallContext context, + List facets, + Object old + ) { + logger.debug("BedQualityState.computeAdvance"); + List newFacets = new ArrayList(); + + BedQualityAccess access = new BedQualityAccess(artifact); + + CalculationResult res = old instanceof CalculationResult + ? (CalculationResult) old + : new BedQualityCalculation().calculate(access); + + if (facets == null || res == null) { + return res; + } + + logger.debug("Created " + newFacets.size() + " new Facets."); + + facets.addAll(newFacets); + + return res; + } } +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : \ No newline at end of file