view gnv-artifacts/src/main/java/de/intevation/gnv/utils/ArtifactFactoryUtilities.java @ 522:c896282c2601

Issue 156 solved. Added width, height and points as parameter to svg and pdf output mode. Width and height have an effact on the width and height of the export, points is a boolean property which enables/disables the drawing of data points. gnv-artifacts/trunk@616 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 25 Jan 2010 09:18:31 +0000
parents 7fb9441dd8af
children 9a828e5a2390
line wrap: on
line source
/**
 *
 */
package de.intevation.gnv.utils;

import org.apache.log4j.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.Node;

import de.intevation.artifacts.ArtifactFactory;

/**
 * @author Tim Englich <tim.englich@intevation.de>
 * 
 */
public class ArtifactFactoryUtilities {
    /**
     * the logger, used to log exceptions and additonaly information
     */
    private static Logger log = Logger
            .getLogger(ArtifactFactoryUtilities.class);

    /**
     * Constructor
     */
    public ArtifactFactoryUtilities() {
    }

    public ArtifactFactory createArtitfactFactor(Document config,
                                                 Node artifactFactoryNode) {
        String className = artifactFactoryNode.getTextContent();

        ArtifactFactory factory = null;

        try {
            Class clazz = Class.forName(className);
            factory = (ArtifactFactory) clazz.newInstance();
        } catch (ClassNotFoundException cnfe) {
            log.error(cnfe.getLocalizedMessage(), cnfe);
        } catch (InstantiationException ie) {
            log.error(ie.getLocalizedMessage(), ie);
        } catch (ClassCastException cce) {
            log.error(cce.getLocalizedMessage(), cce);
        } catch (IllegalAccessException iae) {
            log.error(iae.getLocalizedMessage(), iae);
        }

        if (factory != null) {
            factory.setup(config, artifactFactoryNode);
            log.info("Registering '" + factory.getName()
                     + "' as artifact factory.");
        }
        return factory;
    }
}

http://dive4elements.wald.intevation.org