view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WSPLGENCalculation.java @ 2792:fe987587ebc9

Merged revisions 4539-4540,4543,4545-4546 via svnmerge from file:///home/clients/bsh/bsh-generischer-viewer/Material/SVN/flys-artifacts/trunk ........ r4539 | teichmann | 2012-05-27 20:02:13 +0200 (So, 27 Mai 2012) | 1 line FixA: Added forgotten csv/report facets/generators to conf. ........ r4540 | teichmann | 2012-05-27 20:11:31 +0200 (So, 27 Mai 2012) | 1 line FixA: Fixed class cast bug in report facet. ........ r4543 | teichmann | 2012-05-28 20:35:01 +0200 (Mo, 28 Mai 2012) | 1 line FixA: Added facet to return delta w/t as CSV ........ r4545 | teichmann | 2012-05-28 22:59:27 +0200 (Mo, 28 Mai 2012) | 1 line FixA: Made Delta W/t calculation finally work ........ r4546 | teichmann | 2012-05-28 23:34:24 +0200 (Mo, 28 Mai 2012) | 1 line FixA: corrected fitting (Q->W instead W->Q). ........ flys-artifacts/tags/2.7@4547 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Tue, 29 May 2012 04:58:29 +0000
parents da35b8a23ffb
children
line wrap: on
line source
package de.intevation.flys.artifacts.model;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

import org.apache.log4j.Logger;

import de.intevation.artifacts.CallMeta;


public class WSPLGENCalculation extends Calculation {

    private static final Logger log = Logger.getLogger(WSPLGENCalculation.class);

    protected Map<Integer, String> errors;
    protected Map<Integer, String> warnings;


    public WSPLGENCalculation() {
        errors   = new HashMap<Integer, String>();
        warnings = new HashMap<Integer, String>();
    }


    public void addError(Integer key, String msg) {
        log.debug("New error: (" + key + ") " + msg);
        errors.put(key, msg);
    }


    public void addWarning(Integer key, String msg) {
        log.debug("New warning: (" + key + ") " + msg);
        warnings.put(key, msg);
    }


    public int numErrors() {
        return errors.size();
    }


    public int numWarnings() {
        return warnings.size();
    }


    @Override
    public void toXML(Document document, CallMeta meta) {
        Element root = document.createElement("problems");

        if (numErrors() > 0) {
            Set<Map.Entry<Integer, String>> entrySet = errors.entrySet();

            for (Map.Entry<Integer, String> entry: entrySet) {
                Element problem = document.createElement("problem");
                problem.setAttribute("error", String.valueOf(entry.getKey()));
                problem.setTextContent(entry.getValue());

                root.appendChild(problem);
            }
        }

        if (numWarnings() > 0) {
            Set<Map.Entry<Integer, String>> entrySet = warnings.entrySet();

            for (Map.Entry<Integer, String> entry: entrySet) {
                Element problem = document.createElement("problem");
                problem.setAttribute("error", String.valueOf(entry.getKey()));
                problem.setTextContent(entry.getValue());

                root.appendChild(problem);
            }
        }

        document.appendChild(root);
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org