Mercurial > dive4elements > gnv-client
annotate geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java @ 884:12f88239fb33
Updated Javadocs to the Listed Classes.
Also done some Codecleanup and removed unused Methods from the Code.
geo-backend/trunk@842 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Fri, 26 Mar 2010 15:23:03 +0000 |
parents | 203f95af5b2c |
children | 8b442223741c |
rev | line source |
---|---|
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
1 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
2 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
3 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
4 package de.intevation.gnv.geobackend.sde.datasources; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
5 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
6 import java.util.ArrayList; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
7 import java.util.Calendar; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
8 import java.util.Date; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
9 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
10 import org.apache.log4j.Logger; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
11 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
12 import com.esri.sde.sdk.client.SDEPoint; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
13 import com.esri.sde.sdk.client.SeException; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
14 import com.esri.sde.sdk.client.SeShape; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
15 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
16 import de.intevation.gnv.geobackend.sde.datasources.exception.TechnicalException; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
17 import de.intevation.gnv.geobackend.util.DateUtils; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
18 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
19 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
20 * A Row represents a set of values. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
21 * In a technical manner (e.g. database manner) a row contains all attributes of a single "hit". |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
22 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
23 * @author blume |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
24 * @author Tim Englich <tim.englich@intevation.de> |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
25 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
26 public class Row { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
27 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
28 * Default Logging instance |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
29 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
30 private static Logger sLogger = Logger.getLogger(Row.class); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
31 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
32 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
33 * Data container. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
34 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
35 private Object[] mObjects; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
36 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
37 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
38 * Constructor. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
39 * @param pRowSize the number of attributes contained by this row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
40 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
41 public Row(int pRowSize) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
42 mObjects = new Object[pRowSize]; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
43 } |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
44 |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
45 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
46 * Constructor. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
47 * @param ArrayStr a line from CSV-File. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
48 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
49 public Row (String[] ArrayStr){ |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
50 this (ArrayStr.length); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
51 int nLength = ArrayStr.length; |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
52 for (int i=0; i < nLength; i++){ |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
53 addObject(ArrayStr[i], i); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
54 |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
55 } |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
56 |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
57 } |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
58 |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
59 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
60 * Adds an attribute value to a specific position of this row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
61 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
62 * @param pObject the object to be stored. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
63 * @param pPos the postion the value to be saved |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
64 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
65 public void addObject(Object pObject, int pPos) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
66 mObjects[pPos] = pObject; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
67 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
68 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
69 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
70 * Returns a Value out of the Row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
71 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
72 * @param pPos the position of the value to be returned. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
73 * @return an Object! (not strongly typed) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
74 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
75 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
76 public Object getValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
77 if (pPos < mObjects.length) { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
78 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
79 Object o = mObjects[pPos]; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
80 if (o instanceof SeShape){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
81 return this.getPosValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
82 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
83 return o; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
84 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
85 } else { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
86 throw new TechnicalException("Cannot access this field position. Size is: " + mObjects.length); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
87 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
88 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
89 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
90 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
91 * This is a covenient method for getting strongly typed objects out of the row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
92 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}). |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
93 * In fact, this method executes a simple cast to the desired type. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
94 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
95 * @param pPos the position of the object to be resolved. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
96 * @return a strongly typed Date |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
97 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
98 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
99 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
100 public Date getDateValue(int pPos) throws TechnicalException { |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
101 Date date = null; |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
102 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
103 Calendar lCalendar = (Calendar) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
104 date = lCalendar.getTime(); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
105 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
106 catch (ClassCastException e) { |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
107 try{ |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
108 //SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss"); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
109 date = DateUtils.getDateFromString ((String)getValue(pPos)); //(Date)formatter.parse((String)getValue(pPos)); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
110 |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
111 |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
112 } |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
113 catch (Exception ex){ |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
114 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
115 throw new TechnicalException("Could not cast this value to the Date Type. Object is of value type: " + getValue(pPos).getClass().getName()); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
116 } |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
117 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
118 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
119 return date; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
120 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
121 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
122 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
123 * This is a covenient method for getting strongly typed objects out of the row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
124 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}). |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
125 * In fact, this method executes a simple cast to the desired type. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
126 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
127 * @param pPos the position of the object to be resolved. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
128 * @return a strongly typed String |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
129 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
130 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
131 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
132 public String getStringValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
133 try { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
134 Object o = this.getValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
135 String returnValue = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
136 if (o instanceof SeShape){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
137 returnValue = this.getPosValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
138 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
139 returnValue = (String)o; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
140 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
141 return returnValue; |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
142 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
143 throw new TechnicalException("Could not cast this value to the String Type. Object is of value type: " + getValue(pPos).getClass().getName()); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
144 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
145 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
146 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
147 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
148 * This is a covenient method for getting strongly typed objects out of the row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
149 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}). |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
150 * In fact, this method executes a simple cast to the desired type. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
151 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
152 * @param pPos the position of the object to be resolved. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
153 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
154 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
155 * * @return a strongly typed int |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
156 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
157 public int getIntValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
158 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
159 return (Integer) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
160 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
161 throw new TechnicalException("Could not cast this value to the Integer Type. Object is of value type: " + getValue(pPos).getClass().getName()); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
162 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
163 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
164 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
165 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
166 * This is a covenient method for getting strongly typed objects out of the row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
167 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}). |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
168 * In fact, this method executes a simple cast to the desired type. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
169 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
170 * @param pPos the position of the object to be resolved. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
171 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
172 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
173 * * @return a strongly typed Double |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
174 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
175 public Double getDoubleValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
176 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
177 return (Double) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
178 } catch (ClassCastException e) { |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
179 try{ |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
180 return new Double ((String)getValue(pPos)); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
181 } |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
182 catch(Exception ex){ |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
183 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
184 throw new TechnicalException("Could not cast this value to the Double Type. Object is of value type: " + getValue(pPos).getClass().getName()); |
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
185 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
186 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
187 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
188 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
189 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
190 * This is a covenient method for getting strongly typed objects out of the row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
191 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}). |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
192 * In fact, this method executes a simple cast to the desired type. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
193 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
194 * @param pPos the position of the object to be resolved. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
195 * @return a strongly typed Float |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
196 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
197 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
198 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
199 public Float getFloatValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
200 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
201 return (Float) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
202 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
203 throw new TechnicalException("Could not cast this value to the Float Type. Object is of value type: " + getValue(pPos).getClass().getName()); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
204 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
205 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
206 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
207 * This is a covenient method for getting strongly typed objects out of the row. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
208 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}). |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
209 * In fact, this method executes a simple cast to the desired type. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
210 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
211 * @param pPos the position of the object to be resolved. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
212 * @return a strongly typed Float |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
213 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
214 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
215 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
216 public String getPosValue(int pPos)throws TechnicalException{ |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
217 StringBuffer returnValue = new StringBuffer(); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
218 synchronized (returnValue) { |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
219 try { |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
220 SeShape val = (SeShape) this.mObjects[pPos]; |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
221 if (val.isPoint()){ |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
222 // Cannot use val.asText() because the |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
223 // generated WKT is invalid. |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
224 ArrayList aList = val.getAllPoints(0,false); |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
225 SDEPoint[] mPoint = (SDEPoint[])aList.get(0); |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
226 returnValue.append("POINT(") |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
227 .append(mPoint[0].getX()) |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
228 .append(" ") |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
229 .append(mPoint[0].getY()); |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
230 if (mPoint[0].is3D()){ |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
231 returnValue.append(" ").append(mPoint[0].getZ()); |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
232 } |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
233 returnValue.append(")"); |
660
b4c7de93d5e8
Added Suport for the Geometrytyp SimpleLine.
Tim Englich <tim.englich@intevation.de>
parents:
546
diff
changeset
|
234 }else if (val.isLine() || val.isSimpleLine()){ |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
235 // Cannot use val.asText() because the |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
236 // generated WKT is invalid. |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
237 ArrayList aList = val.getAllPoints(0,false); |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
238 SDEPoint[] mPoint = (SDEPoint[])aList.get(0); |
878
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
239 boolean isMultiLineString = val.isMultiPart(); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
240 int length = mPoint.length; |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
241 int nextOffset = length; |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
242 int[] offsets = (int[])aList.get(1); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
243 int offsetPos = 1; |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
244 |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
245 if(isMultiLineString){ |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
246 returnValue.append("MULTILINESTRING(("); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
247 nextOffset = offsets.length-1 >= offsetPos ? offsets[offsetPos++] : length; |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
248 }else{ |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
249 returnValue.append("LINESTRING("); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
250 } |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
251 |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
252 for (int i = 0; i< length;i++){ |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
253 |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
254 if (i == nextOffset){ |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
255 returnValue.append("),("); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
256 nextOffset = offsets.length-1 >= offsetPos ? offsets[offsetPos++] : length; |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
257 } |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
258 |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
259 returnValue.append(mPoint[i].getX()) |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
260 .append(" ") |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
261 .append(mPoint[i].getY()); |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
262 if (mPoint[i].is3D()){ |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
263 returnValue.append(" ").append(mPoint[i].getZ()); |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
264 } |
878
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
265 if (i < length-1 && i < nextOffset -1){ |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
266 returnValue.append(" , "); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
267 } |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
268 } |
884
12f88239fb33
Updated Javadocs to the Listed Classes.
Tim Englich <tim.englich@intevation.de>
parents:
878
diff
changeset
|
269 |
878
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
270 if(isMultiLineString){ |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
271 returnValue.append("))"); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
272 }else{ |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
273 returnValue.append(")"); |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
274 } |
203f95af5b2c
Added support for MultiLineString-Geometries.
Tim Englich <tim.englich@intevation.de>
parents:
876
diff
changeset
|
275 |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
276 } else{ |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
277 returnValue.append(val.asText(val.getTextSize())); |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
278 } |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
279 } catch (SeException e) { |
876
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
280 throw new TechnicalException("Could not cast this value to the " + |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
281 "Float Type. Object is of value " + |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
282 "type: " + |
3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
Tim Englich <tim.englich@intevation.de>
parents:
661
diff
changeset
|
283 getValue(pPos).getClass().getName()); |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
284 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
285 } |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
286 return returnValue.toString(); |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
287 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
288 } |