sascha@822: package de.intevation.flys.client.shared.model; sascha@822: sascha@826: import java.util.Map; sascha@826: import java.util.HashMap; sascha@826: sascha@822: import java.io.Serializable; sascha@822: sascha@822: public class ToLoad implements Serializable sascha@822: { sascha@831: protected Map> artifacts; sascha@826: sascha@831: public ToLoad() { sascha@831: artifacts = new HashMap>(); sascha@822: } sascha@822: sascha@834: public static final String uniqueKey(Map map) { sascha@834: int idx = map.size(); sascha@834: sascha@834: String key = "key-" + idx; sascha@834: while (map.containsKey(key)) { sascha@834: key = "key-" + ++idx; sascha@834: } sascha@834: return key; sascha@834: } sascha@834: sascha@831: public void add( sascha@831: String artifactName, sascha@831: String factory, sascha@831: String out, sascha@831: String name, sascha@831: String num sascha@831: ) { sascha@834: if (artifactName == null) { sascha@834: artifactName = uniqueKey(artifacts); sascha@834: } sascha@826: sascha@831: Map artifact = artifacts.get(artifactName); sascha@826: sascha@831: if (artifact == null) { sascha@831: artifact = new HashMap(); sascha@831: artifacts.put(artifactName, artifact); sascha@826: } sascha@826: sascha@831: ArtifactFilter filter = artifact.get(factory); sascha@831: if (filter == null) { sascha@831: filter = new ArtifactFilter(factory); sascha@831: artifact.put(factory, filter); sascha@826: } sascha@822: sascha@831: filter.add(out, name, num); sascha@822: } sascha@822: sascha@826: public boolean isEmpty() { sascha@831: return artifacts.isEmpty(); sascha@822: } sascha@822: } sascha@822: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :