annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/CrossSectionFacetUtils.java @ 9499:853f2dafc16e

VegetationZones in CrossSectionsDiagram
author gernotbelger
date Thu, 27 Sep 2018 18:06:26 +0200
parents
children
rev   line source
9499
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
2 * Software engineering by
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
5 *
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
9 */
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
10 package org.dive4elements.river.artifacts.model;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
11
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
12 import java.util.List;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
13
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
14 import org.apache.log4j.Logger;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
15 import org.dive4elements.artifacts.CallContext;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
16 import org.dive4elements.artifacts.DataProvider;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
17 import org.dive4elements.river.model.FastCrossSectionLine;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
18
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
19 /**
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
20 * @author Domenico Nardi Tironi
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
21 */
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
22 public final class CrossSectionFacetUtils {
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
23
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
24 private static Logger log = Logger.getLogger(CrossSectionFacetUtils.class);
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
25
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
26 private CrossSectionFacetUtils() {
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
27 throw new UnsupportedOperationException();
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
28 }
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
29
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
30 public static DataProvider getDataProvider(final CallContext context) {
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
31
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
32 final List<DataProvider> providers = context.getDataProvider(CrossSectionFacet.BLACKBOARD_CS_MASTER_DATA);
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
33 if (providers.size() < 1) {
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
34 log.warn("Could not find Cross-Section data provider.");
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
35 return null;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
36 }
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
37
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
38 return providers.get(0);
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
39 }
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
40
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
41 public static FastCrossSectionLine getCrossSection(final DataProvider provider, final CallContext context) {
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
42
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
43 if (provider == null)
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
44 return null;
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
45
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
46 return (FastCrossSectionLine) provider.provideData(CrossSectionFacet.BLACKBOARD_CS_MASTER_DATA, null, context);
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
47 }
853f2dafc16e VegetationZones in CrossSectionsDiagram
gernotbelger
parents:
diff changeset
48 }

http://dive4elements.wald.intevation.org