teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5861: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5861: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.shared.model; sascha@830: sascha@830: import java.io.Serializable; sascha@830: sascha@830: public class FacetFilter sascha@830: implements Serializable sascha@830: { sascha@830: protected String name; sascha@837: protected String ids; sascha@830: sascha@830: public FacetFilter() { sascha@830: } sascha@830: sascha@837: public FacetFilter(String name, String ids) { sascha@830: this.name = name; sascha@837: this.ids = ids; sascha@830: } sascha@830: sascha@830: public String getName() { sascha@830: return name; sascha@830: } sascha@830: sascha@830: public void setName(String name) { sascha@830: this.name = name; sascha@830: } sascha@830: sascha@837: public String getIds() { sascha@837: return ids; sascha@830: } sascha@830: sascha@837: public void setIds(String ids) { sascha@837: this.ids = ids; sascha@830: } sascha@830: sascha@831: protected static boolean equals(String a, String b) { sascha@831: if (a == null && b == null) return true; sascha@831: if (a == null && b != null) return false; sascha@831: if (a != null && b == null) return false; sascha@831: return a.equals(b); sascha@831: } sascha@831: sascha@830: public boolean equals(Object other) { sascha@830: if (!(other instanceof FacetFilter)) { sascha@830: return false; sascha@830: } sascha@830: FacetFilter o = (FacetFilter)other; sascha@837: return equals(o.name, name) && equals(o.ids, ids); sascha@830: } sascha@846: sascha@846: public void collectIds(StringBuilder sb) { sascha@846: if (ids != null) { sascha@846: if (sb.length() > 0) { sascha@846: sb.append(' '); sascha@846: } sascha@846: sb.append(ids); sascha@846: } sascha@846: } sascha@846: sascha@846: public Recommendation.Facet toFacet() { sascha@846: return new Recommendation.Facet(name, ids); sascha@846: } sascha@830: } sascha@830: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :