sascha@484: package de.intevation.gnv.raster; sascha@484: sascha@484: import org.apache.log4j.Logger; sascha@484: sascha@484: /** sascha@484: * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) sascha@484: */ sascha@484: public class ExternalIndexConverter sascha@484: implements JTSMultiPolygonProducer.ValueConverter sascha@484: { sascha@484: private static Logger log = Logger.getLogger( sascha@484: ExternalIndexConverter.class); sascha@484: sascha@484: protected Palette palette; sascha@484: sascha@484: public ExternalIndexConverter() { sascha@484: } sascha@484: sascha@484: public ExternalIndexConverter(Palette palette) { sascha@484: this.palette = palette; sascha@484: } sascha@484: sascha@484: public Integer convert(Integer value) { sascha@484: if (value == null) { sascha@484: return value; sascha@484: } sascha@484: sascha@484: int v = value.intValue(); sascha@484: sascha@484: if (v == -1) { sascha@484: return value; sascha@484: } sascha@484: sascha@484: Palette.Entry entry = palette.getEntryByIndex(v); sascha@484: sascha@484: if (entry == null) { sascha@484: log.warn("cannot find palette entry for index: " + v); sascha@484: return value; sascha@484: } sascha@484: sascha@484: return Integer.valueOf(entry.getExternalIndex()); sascha@484: } sascha@484: } sascha@484: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :