Mercurial > mxd2map
annotate src/java/de/intevation/mxd/reader/MarkerSymbolReader.java @ 70:6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
readers.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Thu, 26 May 2011 14:28:52 +0200 |
parents | |
children | 260748e3d08f |
rev | line source |
---|---|
70
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.mxd.reader; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
2 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
3 import java.lang.Exception; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
4 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
5 import org.w3c.dom.Element; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
6 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
7 import org.apache.log4j.Logger; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
8 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
9 import com.esri.arcgis.display.ISymbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
10 import com.esri.arcgis.display.ArrowMarkerSymbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
11 import com.esri.arcgis.display.CharacterMarkerSymbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
12 import com.esri.arcgis.display.PictureMarkerSymbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
13 import com.esri.arcgis.display.MultiLayerMarkerSymbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
14 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
15 /** |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
16 * Wrapper for marker symbol reader. |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
17 * |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
18 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
19 */ |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
20 public class MarkerSymbolReader |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
21 extends AbstractSymbolReader { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
22 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
23 /** |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
24 * The logger. |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
25 */ |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
26 private static final Logger logger = |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
27 Logger.getLogger(SimpleFillSymbolReader.class); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
28 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
29 private ISymbol symbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
30 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
31 public MarkerSymbolReader(ISymbol symbol) throws Exception{ |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
32 logger.debug("contructor()"); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
33 this.symbol = symbol; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
34 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
35 |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
36 public Element read() throws Exception { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
37 ISymbolReader sreader = null; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
38 if(symbol instanceof ArrowMarkerSymbol) { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
39 sreader = new ArrowMarkerSymbolReader(symbol); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
40 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
41 else if(symbol instanceof CharacterMarkerSymbol) { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
42 sreader = new CharacterMarkerSymbolReader(symbol); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
43 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
44 else if(symbol instanceof PictureMarkerSymbol) { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
45 sreader = new PictureMarkerSymbolReader(symbol); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
46 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
47 else if(symbol instanceof MultiLayerMarkerSymbol) { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
48 sreader = new MultiLayerMarkerSymbolReader(symbol); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
49 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
50 else { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
51 logger.debug("The reader for type " + symbol.getClass().toString() + |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
52 " is not implemented!"); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
53 return parent; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
54 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
55 if (sreader != null) { |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
56 sreader.setParent(parent); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
57 sreader.setUtil(util); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
58 return sreader.read(); |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
59 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
60 return parent; |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
61 } |
6d181c02efce
Added wrapper for marker symbol reader and extracted methods from symbol
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
62 } |