Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/shared/model/Recommendation.java @ 3497:88feb3347aa5
Implement a ProxyServlet
Implement a ProxyServlet to be able to restrict the access to the
mapserver too. All queries to the provided map services should go throught
this new ProxyServlet. Currently the ProxyServlet can only handle HTTP GET
requests.
flys-client/trunk@5221 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Bjoern Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Thu, 16 Aug 2012 14:42:36 +0000 |
parents | 0b79630e3bcb |
children |
line wrap: on
line source
package de.intevation.flys.client.shared.model; import java.util.List; import java.util.Map; import java.util.HashMap; import java.io.Serializable; /** * Information bundle to let client create/clone an artifact with facets. * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class Recommendation implements Serializable { /** Index and name of a facet. */ public static class Facet implements Serializable { /** Facet name. */ protected String name; /** Facet index. */ protected String index; public Facet() { } public Facet(String name, String index) { this.name = name; this.index = index; } public String getName() { return name; } public String getIndex() { return index; } @Override public int hashCode() { int hash = 0; if (getName() != null) { hash += getName().hashCode(); } if (getIndex() != null) { hash += getIndex().hashCode(); } return hash; } @Override public boolean equals(Object other) { if (!(other instanceof Facet) || other == null) { return false; } Facet facet = (Facet) other; return (same(facet.getIndex(), this.getIndex())) && (same(facet.getName(), this.getName())); } } // class Facet /** Mapping of outnames to Facet-Lists. */ public static class Filter implements Serializable { protected Map<String, List<Facet>> outs; public Filter() { outs = new HashMap<String, List<Facet>>(); } public void add(String out, List<Facet> facets) { outs.put(out, facets); } public Map<String, List<Facet>> getOuts() { return outs; } @Override public int hashCode() { if (getOuts() != null) { return getOuts().hashCode(); } return 0; } @Override public boolean equals(Object other) { if (!(other instanceof Filter) || other == null) { return false; } Filter filter = (Filter) other; return Recommendation.same(filter.getOuts(), this.getOuts()); } } // class Filter /** Factory to speak to when creating/cloning. */ protected String factory; /** Sometimes database ids, sometimes other freeform text. */ protected String ids; /** Artifacts uuid that should serve as master artifact. */ protected String masterArtifact; /** Optional facet filter. */ protected Filter filter; protected String displayName = null; public Recommendation() { } public Recommendation(String factory, String ids) { this(factory, ids, null, null); } public Recommendation( String factory, String ids, String masterArtifact, Filter filter ) { this.factory = factory; this.ids = ids; this.masterArtifact = masterArtifact; this.filter = filter; } public String getFactory() { return factory; } public void setFactory(String factory) { this.factory = factory; } public void setDisplayName(String displayName) { this.displayName = displayName; } public String getDisplayName() { return this.displayName; } public String getIDs() { return ids; } public String getMasterArtifact() { return masterArtifact; } public void setMasterArtifact(String masterArtifact) { this.masterArtifact = masterArtifact; } public Filter getFilter() { return filter; } public void setFilter(Filter filter) { this.filter = filter; } @Override public int hashCode() { int hash = 0; hash += (getFactory() != null) ? getFactory().hashCode() : 0; hash += (getIDs() != null) ? getIDs().hashCode() : 0; hash += (getFilter() != null) ? getFilter().hashCode() : 0; hash += (getMasterArtifact() != null) ? getMasterArtifact().hashCode() : 0; return hash; } /** * Null-pointer guarded equals. * Two null's are assumed equal (returns true); * @param a Object to compare against parameter b. * @param b Object to compare against parameter a. * @return true if either a and b are null or a.equals(b) returns true. */ protected static boolean same(Object a, Object b) { // Do null-check. if (a == null) { return b == null; } else if (b == null) { return false; } return a.equals(b); } @Override public boolean equals(Object other) { if (!(other instanceof Recommendation) || other == null) { return false; } Recommendation rec = (Recommendation) other; return (same(this.getFactory(), rec.getFactory())) && (same(this.getIDs(), rec.getIDs())) && (same(this.getFilter(), rec.getFilter())) && (same(this.getMasterArtifact(), rec.getMasterArtifact())); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :