gernotbelger@9499: /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde gernotbelger@9499: * Software engineering by gernotbelger@9499: * Björnsen Beratende Ingenieure GmbH gernotbelger@9499: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt gernotbelger@9499: * gernotbelger@9499: * This file is Free Software under the GNU AGPL (>=v3) gernotbelger@9499: * and comes with ABSOLUTELY NO WARRANTY! Check out the gernotbelger@9499: * documentation coming with Dive4Elements River for details. gernotbelger@9499: */ gernotbelger@9499: package org.dive4elements.river.artifacts.model; gernotbelger@9499: gernotbelger@9499: import java.util.List; gernotbelger@9499: gernotbelger@9499: import org.apache.log4j.Logger; gernotbelger@9499: import org.dive4elements.artifacts.CallContext; gernotbelger@9499: import org.dive4elements.artifacts.DataProvider; gernotbelger@9499: import org.dive4elements.river.model.FastCrossSectionLine; gernotbelger@9499: gernotbelger@9499: /** gernotbelger@9499: * @author Domenico Nardi Tironi gernotbelger@9499: */ gernotbelger@9499: public final class CrossSectionFacetUtils { gernotbelger@9499: gernotbelger@9499: private static Logger log = Logger.getLogger(CrossSectionFacetUtils.class); gernotbelger@9499: gernotbelger@9499: private CrossSectionFacetUtils() { gernotbelger@9499: throw new UnsupportedOperationException(); gernotbelger@9499: } gernotbelger@9499: gernotbelger@9499: public static DataProvider getDataProvider(final CallContext context) { gernotbelger@9499: gernotbelger@9499: final List providers = context.getDataProvider(CrossSectionFacet.BLACKBOARD_CS_MASTER_DATA); gernotbelger@9499: if (providers.size() < 1) { gernotbelger@9499: log.warn("Could not find Cross-Section data provider."); gernotbelger@9499: return null; gernotbelger@9499: } gernotbelger@9499: gernotbelger@9499: return providers.get(0); gernotbelger@9499: } gernotbelger@9499: gernotbelger@9499: public static FastCrossSectionLine getCrossSection(final DataProvider provider, final CallContext context) { gernotbelger@9499: gernotbelger@9499: if (provider == null) gernotbelger@9499: return null; gernotbelger@9499: gernotbelger@9499: return (FastCrossSectionLine) provider.provideData(CrossSectionFacet.BLACKBOARD_CS_MASTER_DATA, null, context); gernotbelger@9499: } gernotbelger@9499: }