Mercurial > dive4elements > river
view gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/Limit5SalixBehaviour.java @ 9661:9b8ba3b83a15
Importer (s/u-info) vegetation zones: new database column in vegetation_type table for german type name,
localized vegetation type names by querying the database instead of translating by resource property,
detecting and cancelling the import of a second vegetation zone file for a river,
detecting, logging, cancelling in case of wrong column titles,
detecting, logging and ignoring lines with missing (color) values,
comparing vegetation zone name and class with the database and logging+ignoring in case of inconsistencies,
starting the most elevated zone with 0 instead of -1 overflow days
author | mschaefer |
---|---|
date | Mon, 23 Mar 2020 16:38:12 +0100 |
parents | ba0561906f81 |
children |
line wrap: on
line source
/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde * Software engineering by * Björnsen Beratende Ingenieure GmbH * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt * * This file is Free Software under the GNU AGPL (>=v3) * and comes with ABSOLUTELY NO WARRANTY! Check out the * documentation coming with Dive4Elements River for details. */ package org.dive4elements.river.client.client.ui.uinfo; import java.util.List; import org.dive4elements.river.client.client.FLYSConstants; import org.dive4elements.river.client.client.ui.StringArrayParseHelper; import com.smartgwt.client.util.SC; import com.smartgwt.client.widgets.form.fields.TextItem; /** * @author Domenico Nardi Tironi * */ public class Limit5SalixBehaviour extends ValidationBehaviourSingleMultiInputItem { public Limit5SalixBehaviour(final List<String> validInputs, final String errorForItemMsg, final FLYSConstants MSG) { super(validInputs, errorForItemMsg, MSG); } public Limit5SalixBehaviour(final FLYSConstants msg) { super("", msg); } @Override public void appendValue(final TextItem inputItem, final String value) { // APPEND = ADD to existing -> MULTI YEAR final String oldValues = inputItem.getValueAsString(); if (oldValues != null && !oldValues.isEmpty()) { final String[] oldVals = StringArrayParseHelper.getArrayFromRawString(oldValues); if (oldVals.length < 5) inputItem.setValue(oldValues.trim() + " " + value); else { SC.warn(this.MSG.error_limit_exceeded_salix()); } } else inputItem.setValue(value); } @Override public List<String> validate(final List<String> errors, final String inputValueString) { if (inputValueString != null) { final String[] values = StringArrayParseHelper.getArrayFromRawString(inputValueString); if (values.length > 5) { errors.add(this.MSG.error_limit_exceeded_salix()); } for (int i = 0; i < values.length; i++) { if (i < 5) errors.addAll(this.validateNumber(values[i])); } } return errors; } @Override public boolean isMultipleInputsAllowed() { return true; } @Override public String titleForCreateOld() { return null; } }