Mercurial > dive4elements > gnv-client
view gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionFactory.java @ 280:72f5e8bd2791 0.2
merged geo-backend/0.2
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:13:45 +0200 |
parents | 734ac082c8d1 |
children |
line wrap: on
line source
/** * */ package de.intevation.gnv.transition; import org.apache.log4j.Logger; import org.w3c.dom.Node; import de.intevation.gnv.artifacts.GNVArtifactBase; /** * @author Tim Englich <tim.englich@intevation.de> * */ public class TransitionFactory { /** * the logger, used to log exceptions and additonaly information */ private static Logger log = Logger.getLogger(GNVArtifactBase.class); private static TransitionFactory instance = null; /** * Constructor */ public TransitionFactory() { super(); } public static TransitionFactory getInstance() { if (instance == null) { instance = new TransitionFactory(); } return instance; } public Transition createTransition(Node configuration) { log.debug("TransitionFactory.createTransition"); Transition transition = null; try { String classname = ((org.w3c.dom.Element)configuration).getAttribute("transition"); transition = (Transition) (Class.forName(classname).newInstance()); transition.setup(configuration); } catch (InstantiationException e) { log.error(e, e); } catch (IllegalAccessException e) { log.error(e, e); } catch (ClassNotFoundException e) { log.error(e, e); } return transition; } }