Mercurial > dive4elements > gnv-client
annotate geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java @ 876:3d0c06f99686
Switched to using asText(...)-Function of SeShapes-Objects for generating an WKT-String for Polygons.
geo-backend/trunk@752 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Tue, 09 Mar 2010 11:02:53 +0000 |
parents | f99d8f92a640 |
children | 203f95af5b2c |
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 * Title: Row, $Header: /share/gdi/SDI-Suite/Repository/projekte/BSH-GDI/genericViewer/src/main/java/de/conterra/bsh/gdi/gnviewer/datasources/Row.java,v 1.4 2008/01/30 12:38:34 blume Exp $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
3 * Source: $Source: /share/gdi/SDI-Suite/Repository/projekte/BSH-GDI/genericViewer/src/main/java/de/conterra/bsh/gdi/gnviewer/datasources/Row.java,v $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
4 * created by: Stefan Blume (blume) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
5 * erstellt am: 21.11.2007 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
6 * Copyright: con terra GmbH, 2005 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
7 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
8 * modified by: $Author: blume $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
9 * modified on: $Date: 2008/01/30 12:38:34 $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
10 * Version: $Revision: 1.4 $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
11 * TAG: $Name: $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
12 * locked from: $Locker: $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
13 * CVS State: $State: Exp $ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
14 * Project: $ProjectName$ |
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 package de.intevation.gnv.geobackend.sde.datasources; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
17 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
18 import java.util.ArrayList; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
19 import java.util.Calendar; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
20 import java.util.Date; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
21 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
22 import org.apache.log4j.Logger; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
23 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
24 import com.esri.sde.sdk.client.SDEPoint; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
25 import com.esri.sde.sdk.client.SeException; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
26 import com.esri.sde.sdk.client.SeShape; |
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 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
|
29 import de.intevation.gnv.geobackend.util.DateUtils; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
30 |
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 * A Row represents a set of values. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
33 * 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
|
34 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
35 * @author blume |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
36 * @version 1.0 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
37 * @serial 1.0 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
38 * @see |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
39 * @since 21.11.2007 11:00:54 |
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 class Row { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
42 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
43 * Default Logging instance |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
44 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
45 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
|
46 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
47 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
48 * Data container. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
49 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
50 private Object[] mObjects; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
51 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
52 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
53 * Constructor. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
54 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
55 * @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
|
56 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
57 public Row(int pRowSize) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
58 mObjects = new Object[pRowSize]; |
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 |
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 * Constructor. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
63 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
64 * @param ArrayStr a line from CSV-File. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
65 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
66 public Row (String[] ArrayStr){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
67 this (ArrayStr.length); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
68 int nLength = ArrayStr.length; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
69 for (int i=0; i < nLength; i++){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
70 addObject(ArrayStr[i], i); |
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 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
73 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
74 } |
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 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
77 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
78 * 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
|
79 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
80 * @param pObject the object to be stored. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
81 * @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
|
82 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
83 public void addObject(Object pObject, int pPos) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
84 mObjects[pPos] = pObject; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
85 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
86 |
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 * Returns a Value out of the Row. |
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 * @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
|
91 * @return an Object! (not strongly typed) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
92 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
93 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
94 public Object getValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
95 if (pPos < mObjects.length) { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
96 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
97 Object o = mObjects[pPos]; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
98 if (o instanceof SeShape){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
99 return this.getPosValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
100 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
101 return o; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
102 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
103 } else { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
104 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
|
105 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
106 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
107 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
108 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
109 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
110 * 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
|
111 * 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
|
112 * 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
|
113 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
114 * @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
|
115 * @return a strongly typed Date |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
116 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
117 * @see #getValue(int) |
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 public Date getDateValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
120 Date date = null; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
121 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
122 Calendar lCalendar = (Calendar) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
123 date = lCalendar.getTime(); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
124 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
125 catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
126 try{ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
127 //SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss"); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
128 date = DateUtils.getDateFromString ((String)getValue(pPos)); //(Date)formatter.parse((String)getValue(pPos)); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
129 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
130 |
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 catch (Exception ex){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
133 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
134 throw new TechnicalException("Could not cast this value to the Date 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
|
135 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
136 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
137 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
138 return date; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
139 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
140 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
141 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
142 * 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
|
143 * 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
|
144 * 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
|
145 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
146 * @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
|
147 * @return a strongly typed String |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
148 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
149 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
150 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
151 public String getStringValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
152 try { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
153 Object o = this.getValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
154 String returnValue = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
155 if (o instanceof SeShape){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
156 returnValue = this.getPosValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
157 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
158 returnValue = (String)o; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
159 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
160 return returnValue; |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
161 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
162 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
|
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
167 * 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
|
168 * 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
|
169 * 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
|
170 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
171 * @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
|
172 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
173 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
174 * * @return a strongly typed int |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
175 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
176 public int getIntValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
177 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
178 return (Integer) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
179 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
180 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
|
181 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
182 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
183 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
184 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
185 * 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
|
186 * 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
|
187 * 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
|
188 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
189 * @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
|
190 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
191 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
192 * * @return a strongly typed Double |
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 public Double getDoubleValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
195 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
196 return (Double) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
197 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
198 try{ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
199 return new Double ((String)getValue(pPos)); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
200 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
201 catch(Exception ex){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
202 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex); |
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 Double 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 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
208 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
209 * 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
|
210 * 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
|
211 * 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
|
212 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
213 * @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
|
214 * @return a strongly typed Float |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
215 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
216 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
217 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
218 public Float getFloatValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
219 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
220 return (Float) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
221 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
222 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
|
223 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
224 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
225 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
226 * 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
|
227 * 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
|
228 * 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
|
229 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
230 * @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
|
231 * @return a strongly typed Float |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
232 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
233 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
234 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
235 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
|
236 StringBuffer returnValue = new StringBuffer(); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
237 synchronized (returnValue) { |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
238 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
|
239 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
|
240 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
|
241 // 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
|
242 // 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
|
243 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
|
244 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
|
245 returnValue.append("POINT(") |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
246 .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
|
247 .append(" ") |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
248 .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
|
249 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
|
250 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
|
251 } |
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
|
252 returnValue.append(")"); |
660
b4c7de93d5e8
Added Suport for the Geometrytyp SimpleLine.
Tim Englich <tim.englich@intevation.de>
parents:
546
diff
changeset
|
253 }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
|
254 // 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
|
255 // 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
|
256 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
|
257 SDEPoint[] mPoint = (SDEPoint[])aList.get(0); |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
258 returnValue.append("LINESTRING("); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
259 for (int i = 0; i< mPoint.length;i++){ |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
260 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
|
261 .append(" ") |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
262 .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
|
263 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
|
264 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
|
265 } |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
266 if (i < mPoint.length-1){ |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
267 returnValue.append(" , "); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
268 } |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
269 } |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
270 returnValue.append(")"); |
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
|
271 } 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
|
272 returnValue.append(val.asText(val.getTextSize())); |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
273 } |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
274 } 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
|
275 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
|
276 "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
|
277 "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
|
278 getValue(pPos).getClass().getName()); |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
279 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
280 } |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
281 return returnValue.toString(); |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
282 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
283 } |