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@30: package de.intevation.gnv.artifactdatabase.objects;
tim@30:
tim@30: import java.util.Collection;
ingo@573: import java.util.Map;
tim@30:
tim@30: /**
ingo@690: * The default implementation of an OutputMode
.
sascha@699: *
sascha@684: * @author Tim Englich
tim@30: */
tim@30: public class DefaultOutputMode implements OutputMode {
tim@30:
tim@165: /**
tim@165: * The UID of this Class.
tim@165: */
tim@165: private static final long serialVersionUID = 7487880486604174521L;
tim@165:
tim@958: /**
tim@958: * The name of the OutputMode
tim@958: */
tim@30: private String name = null;
tim@36:
tim@958: /**
tim@958: * The mimetype of the OutputMode
tim@958: */
tim@30: private String mimeType = null;
tim@36:
tim@958: /**
tim@958: * The parameters that could be used for this OutputMode
tim@958: */
tim@30: private Collection outputParameter = null;
tim@30:
tim@958: /**
tim@958: * The exports that can be called using this outputMode
tim@958: */
ingo@573: private Map exports;
ingo@573:
tim@958: /**
tim@958: * Constructor
tim@958: * @param name The name of the OutputMode
tim@958: * @param mimeType The mimetype of the OutputMode
tim@958: * @param outputParameter The parameters that could be used for this OutputMode
tim@958: * @param exports The exports that can be called using this outputMode
tim@958: */
ingo@573: public DefaultOutputMode(
ingo@573: String name,
ingo@573: String mimeType,
ingo@573: Collection outputParameter,
ingo@573: Map exports)
ingo@573: {
tim@30: super();
ingo@573: this.name = name;
ingo@573: this.mimeType = mimeType;
tim@30: this.outputParameter = outputParameter;
ingo@573: this.exports = exports;
tim@30: }
tim@30:
tim@30: public String getMimeType() {
tim@30: return this.mimeType;
tim@30: }
tim@30:
tim@30: public String getName() {
tim@30: return this.name;
tim@30: }
tim@36:
tim@30: public Collection getOutputParameters() {
tim@30: return this.outputParameter;
tim@30: }
tim@30:
ingo@573: public ExportMode getExportMode(String mode) {
ingo@573: return exports.get(mode);
ingo@573: }
tim@30: }
sascha@700: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :