ingo@1022: /*
ingo@1022: * Copyright (c) 2010 by Intevation GmbH
ingo@1022: *
ingo@1022: * This program is free software under the LGPL (>=v2.1)
ingo@1022: * Read the file LGPL.txt coming with the software for details
ingo@1022: * or visit http://www.gnu.org/licenses/ if it does not exist.
ingo@1022: */
ingo@1022:
tim@558: package de.intevation.gnv.artifactdatabase.objects;
tim@558:
tim@558: import java.util.Collection;
tim@558: import java.util.HashMap;
tim@558: import java.util.Map;
tim@558:
tim@558: /**
tim@693: * This Class is an Extention of the Class ArtifactFactory.
sascha@699: * Its only job is to store optional Parameters that might be
tim@693: * used to instantiate a new Artifact.
sascha@684: * @author Tim Englich
tim@558: */
ingo@690: public class ParametrizedArtifactFactory
ingo@690: extends ArtifactFactory implements ParametrizedArtifactObject {
tim@558:
tim@558: /**
tim@558: * The UID of this Class
tim@558: */
tim@558: private static final long serialVersionUID = 4516368434861819032L;
tim@558:
tim@693: /**
tim@693: * The Parameters that belongs to the Artifactfactory and might be used
tim@693: * during the Initializationprocess of an Artifact.
tim@693: */
tim@558: private Map> parameters = null;
sascha@681:
tim@558: /**
tim@558: * Constructor
tim@693: * @param name the name of the factory
tim@693: * @param description the description of the Factory
tim@693: * @param dataBaseUrl the URL where the Factory could be reached.
tim@558: */
tim@558: public ParametrizedArtifactFactory(String name, String description,
tim@558: String dataBaseUrl) {
tim@558: super(name, description, dataBaseUrl);
tim@558: this.parameters = new HashMap>();
tim@558: }
tim@558:
tim@558: public Map> getParameters() {
tim@558: return parameters;
tim@558: }
tim@558:
tim@558: public void addParameters(String key, Collection values) {
tim@558: this.parameters.put(key, values);
tim@558: }
tim@558: }
sascha@700: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :