view gwt-client/src/main/java/org/dive4elements/river/client/client/ui/sinfo/MultiBehaviour.java @ 9256:6c24c857ccf9

fixation refactoring and inputItem behaviour to interfaces
author gernotbelger
date Fri, 13 Jul 2018 12:04:21 +0200
parents
children 7337034eb5d5
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.sinfo;

import java.util.List;

import org.dive4elements.river.client.client.FLYSConstants;
import org.dive4elements.river.client.client.ui.uinfo.ValidationBehaviourSingleMultiInputItem;

import com.smartgwt.client.widgets.form.fields.TextItem;

/**
 * @author Domenico Nardi Tironi
 *
 */
public class MultiBehaviour extends ValidationBehaviourSingleMultiInputItem {

    public MultiBehaviour(final List<String> validInputs, final String errorForItemMsg, final FLYSConstants MSG) {
        super(validInputs, errorForItemMsg, MSG);
    }

    public MultiBehaviour() {
        super();
    }

    @Override
    public void appendValue(final TextItem inputItem, final String value) {
        // APPEND = ADD to existing -> MULTI YEAR
        final String oldYears = inputItem.getValueAsString();
        if (oldYears != null && !oldYears.isEmpty())
            inputItem.setValue(oldYears.trim() + " " + value);
        else
            inputItem.setValue(value);

    }

    @Override
    public List<String> validate(final List<String> errors, final String inputValueString) {
        if (inputValueString != null) {
            final String[] sValues = inputValueString.trim().split(" ");
            for (final String value : sValues) {
                errors.addAll(this.validateSingleInput(value));
            }
        }
        return errors;
    }

}

http://dive4elements.wald.intevation.org