# HG changeset patch # User Raimund Renkert # Date 1306423749 -7200 # Node ID acbe36fb45e073cc291575617c6b814c31f4ad73 # Parent 2cbe423b1fdae34755df5534babf8ddea10f1132 Use the wrapper in the renderer reader to read symbols. diff -r 2cbe423b1fda -r acbe36fb45e0 ChangeLog --- a/ChangeLog Thu May 26 16:49:03 2011 +0200 +++ b/ChangeLog Thu May 26 17:29:09 2011 +0200 @@ -1,3 +1,9 @@ +2011-05-26 Raimund Renkert + + * src/java/de/intevation/mxd/reader/ClassBreakRendererReader.java, + src/java/de/intevation/mxd/reader/UniqueValueRendererReader.java: + Use the wrapper to read symbols. + 2011-05-26 Raimund Renkert Added wrapper for fill symbol reader. diff -r 2cbe423b1fda -r acbe36fb45e0 src/java/de/intevation/mxd/reader/ClassBreakRendererReader.java --- a/src/java/de/intevation/mxd/reader/ClassBreakRendererReader.java Thu May 26 16:49:03 2011 +0200 +++ b/src/java/de/intevation/mxd/reader/ClassBreakRendererReader.java Thu May 26 17:29:09 2011 +0200 @@ -91,19 +91,28 @@ "min_value", String.valueOf(renderer.getMinimumBreak())); rendererElement.setAttribute("expression_operator", "<="); + ISymbol sym = renderer.getSymbol(i); - ISymbolReader symReader; - if(sym instanceof SimpleFillSymbol) { - symReader = new SimpleFillSymbolReader(renderer.getSymbol(i)); - symReader.setUtil(util); - symReader.setParent(rendererElement); - symReader.read(); + MarkerSymbolReader markerReader = new MarkerSymbolReader(); + LineSymbolReader lineReader = new LineSymbolReader(); + FillSymbolReader fillReader = new FillSymbolReader(); + if(markerReader.canRead(sym)) { + markerReader.setSymbol(sym); + markerReader.setUtil(util); + markerReader.setParent(rendererElement); + markerReader.read(); } - else if(sym instanceof SimpleMarkerSymbol) { - symReader = new SimpleMarkerSymbolReader(renderer.getSymbol(i)); - symReader.setUtil(util); - symReader.setParent(rendererElement); - symReader.read(); + else if(lineReader.canRead(sym)) { + lineReader.setSymbol(sym); + lineReader.setUtil(util); + lineReader.setParent(rendererElement); + lineReader.read(); + } + else if(fillReader.canRead(sym)) { + fillReader.setSymbol(sym); + fillReader.setUtil(util); + fillReader.setParent(rendererElement); + fillReader.read(); } else { logger.debug("Not a known symbol type: " + diff -r 2cbe423b1fda -r acbe36fb45e0 src/java/de/intevation/mxd/reader/UniqueValueRendererReader.java --- a/src/java/de/intevation/mxd/reader/UniqueValueRendererReader.java Thu May 26 16:49:03 2011 +0200 +++ b/src/java/de/intevation/mxd/reader/UniqueValueRendererReader.java Thu May 26 17:29:09 2011 +0200 @@ -91,11 +91,33 @@ renderer.getField(j)); } rendererElement.setAttribute("expression_operator", "="); - ISymbol symbol = renderer.getSymbol(value); - ISymbolReader symbolReader = new MarkerSymbolReader(symbol); - symbolReader.setUtil(util); - symbolReader.setParent(rendererElement); - symbolReader.read (); + + ISymbol sym = renderer.getSymbol(value); + MarkerSymbolReader markerReader = new MarkerSymbolReader(); + LineSymbolReader lineReader = new LineSymbolReader(); + FillSymbolReader fillReader = new FillSymbolReader(); + if(markerReader.canRead(sym)) { + markerReader.setSymbol(sym); + markerReader.setUtil(util); + markerReader.setParent(rendererElement); + markerReader.read(); + } + else if(lineReader.canRead(sym)) { + lineReader.setSymbol(sym); + lineReader.setUtil(util); + lineReader.setParent(rendererElement); + lineReader.read(); + } + else if(fillReader.canRead(sym)) { + fillReader.setSymbol(sym); + fillReader.setUtil(util); + fillReader.setParent(rendererElement); + fillReader.read(); + } + else { + logger.debug("Not a known symbol type: " + + sym.getClass().toString()); + } } catch(Exception e) { e.printStackTrace();