Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java @ 270:d01b0d81b92a
Parse the facets of a Collection and distinguish between an ordinary OutputMode and an ExportMode (new).
flys-client/trunk@1895 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 11 May 2011 09:11:40 +0000 |
parents | c8e651530f34 |
children | 8264b02091ef |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java Wed May 11 07:32:08 2011 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java Wed May 11 09:11:40 2011 +0000 @@ -1,5 +1,8 @@ package de.intevation.flys.client.shared.model; +import java.util.ArrayList; +import java.util.List; + /** * The default implementation of an Output. @@ -17,9 +20,13 @@ /** The mime-type of this mode.*/ protected String mimeType; + /** The list of available facets of this export mode.*/ + protected List<Facet> facets; + /** A convinience constructor.*/ public DefaultOutputMode() { + facets = new ArrayList<Facet>(); } @@ -37,6 +44,17 @@ } + public DefaultOutputMode( + String name, + String description, + String mimeType, + List<Facet> facets) + { + this(name, description, mimeType); + this.facets = facets; + } + + public String getName() { return name; } @@ -50,5 +68,52 @@ public String getMimeType() { return mimeType; } + + + /** + * Adds a new facet to this export. + * + * @param facet The new facet. + */ + public void addFacet(Facet facet) { + facets.add(facet); + } + + + /** + * Returns the number of facets supported by this export. + * + * @return the number of facets. + */ + public int getFacetCount() { + return facets.size(); + } + + + /** + * Returns the facet at a given position. + * + * @param idx The position of a facet. + * + * @return a facet. + */ + public Facet getFacet(int idx) { + if (idx < getFacetCount()) { + return facets.get(idx); + } + + return null; + } + + + public Facet getFacet(String name) { + for (Facet facet: facets) { + if (name.equals(facet.getName())) { + return facet; + } + } + + return null; + } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :