Mercurial > dive4elements > gnv-client
annotate geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java @ 660:b4c7de93d5e8
Added Suport for the Geometrytyp SimpleLine.
geo-backend/trunk@748 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Mon, 08 Mar 2010 14:06:50 +0000 |
parents | 210716612c30 |
children | f99d8f92a640 |
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
44 * Default Logging instance |
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 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
|
47 |
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 * Data container. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
50 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
51 private Object[] mObjects; |
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
54 * Constructor. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
55 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
56 * @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
|
57 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
58 public Row(int pRowSize) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
59 mObjects = new Object[pRowSize]; |
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
63 * Constructor. |
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 * @param ArrayStr a line from CSV-File. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
66 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
67 public Row (String[] ArrayStr){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
68 this (ArrayStr.length); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
69 int nLength = ArrayStr.length; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
70 for (int i=0; i < nLength; i++){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
71 addObject(ArrayStr[i], i); |
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
79 * 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
|
80 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
81 * @param pObject the object to be stored. |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
82 * @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
|
83 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
84 public void addObject(Object pObject, int pPos) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
85 mObjects[pPos] = pObject; |
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
89 * Returns a Value out of the Row. |
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 * @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
|
92 * @return an Object! (not strongly typed) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
93 * @throws TechnicalException |
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 public Object getValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
96 if (pPos < mObjects.length) { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
97 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
98 Object o = mObjects[pPos]; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
99 if (o instanceof SeShape){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
100 return this.getPosValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
101 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
102 return o; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
103 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
104 } else { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
105 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
|
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
111 * 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
|
112 * 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
|
113 * 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
|
114 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
115 * @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
|
116 * @return a strongly typed Date |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
117 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
118 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
119 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
120 public Date getDateValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
121 Date date = null; |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
122 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
123 Calendar lCalendar = (Calendar) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
124 date = lCalendar.getTime(); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
125 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
126 catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
127 try{ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
128 //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
|
129 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
|
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 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
133 catch (Exception ex){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
134 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
135 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
|
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 |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
139 return date; |
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
143 * 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
|
144 * 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
|
145 * 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
|
146 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
147 * @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
|
148 * @return a strongly typed String |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
149 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
150 * @see #getValue(int) |
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 public String getStringValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
153 try { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
154 Object o = this.getValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
155 String returnValue = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
156 if (o instanceof SeShape){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
157 returnValue = this.getPosValue(pPos); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
158 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
159 returnValue = (String)o; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
160 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
129
diff
changeset
|
161 return returnValue; |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
162 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
163 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
|
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
168 * 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
|
169 * 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
|
170 * 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
|
171 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
172 * @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
|
173 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
174 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
175 * * @return a strongly typed int |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
176 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
177 public int getIntValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
178 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
179 return (Integer) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
180 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
181 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
|
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
186 * 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
|
187 * 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
|
188 * 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
|
189 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
190 * @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
|
191 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
192 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
193 * * @return a strongly typed Double |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
194 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
195 public Double getDoubleValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
196 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
197 return (Double) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
198 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
199 try{ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
200 return new Double ((String)getValue(pPos)); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
201 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
202 catch(Exception ex){ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
203 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
204 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
|
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
210 * 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
|
211 * 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
|
212 * 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
|
213 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
214 * @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
|
215 * @return a strongly typed Float |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
216 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
217 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
218 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
219 public Float getFloatValue(int pPos) throws TechnicalException { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
220 try { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
221 return (Float) getValue(pPos); |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
222 } catch (ClassCastException e) { |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
223 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
|
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 /** |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
227 * 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
|
228 * 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
|
229 * 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
|
230 * |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
231 * @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
|
232 * @return a strongly typed Float |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
233 * @throws TechnicalException |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
234 * @see #getValue(int) |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
235 */ |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
236 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
|
237 SeShape val; |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
238 ArrayList aList; |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
239 SDEPoint mPoint[]; |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
240 StringBuffer returnValue = new StringBuffer(); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
241 synchronized (returnValue) { |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
242 try { |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
243 val = (SeShape) this.mObjects[pPos]; |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
244 aList = val.getAllPoints(0,false); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
245 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
|
246 if (val.isPoint()){ |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
247 returnValue.append("POINT(") |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
248 .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
|
249 .append(" ") |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
250 .append(mPoint[0].getY()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
251 if (mPoint[0].is3D()){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
252 returnValue.append(" ") |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
253 .append(mPoint[0].getZ()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
254 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
255 returnValue.append(")"); |
660
b4c7de93d5e8
Added Suport for the Geometrytyp SimpleLine.
Tim Englich <tim.englich@intevation.de>
parents:
546
diff
changeset
|
256 }else if (val.isLine() || val.isSimpleLine()){ |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
257 returnValue.append("LINESTRING("); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
258 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
|
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()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
262 if (mPoint[i].is3D()){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
263 returnValue.append(" ") |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
264 .append(mPoint[i].getZ()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
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(")"); |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
271 } else if (val.isPolygon()){ |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
272 returnValue.append("POLYGON(("); |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
273 int length = mPoint.length; |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
274 for (int i = 0; i< length ;i++){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
275 SDEPoint p = mPoint[i]; |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
276 returnValue.append(p.getX()) |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
277 .append(" ") |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
278 .append(p.getY()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
279 if (p.is3D()){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
280 returnValue.append(" ") |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
281 .append(p.getZ()); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
282 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
283 if (i < length-1){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
284 returnValue.append(" , "); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
273
diff
changeset
|
285 } |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
286 } |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
287 returnValue.append(")"); |
546
210716612c30
Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
Tim Englich <tim.englich@intevation.de>
parents:
275
diff
changeset
|
288 // TODO How are Rings supported |
273
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
289 // for (int i =1 ; i < aList.size(); i++){ |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
290 // returnValue.append("("); |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
291 // mPoint = (SDEPoint[])aList.get(i); |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
292 // for (int j = 0; j < mPoint.length;j++){ |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
293 // returnValue.append(mPoint[j].getX()) |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
294 // .append(" ") |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
295 // .append(mPoint[j].getY()) |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
296 // .append(" ") |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
297 // .append(mPoint[i].getZ()); |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
298 // if (i < mPoint.length-1){ |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
299 // returnValue.append(" , "); |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
300 // } |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
301 // } |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
302 // returnValue.append(")"); |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
303 // } |
69ddef25e822
Polygon and 3D Support was added to the WKT-Representation.
Tim Englich <tim.englich@intevation.de>
parents:
268
diff
changeset
|
304 returnValue.append(")"); |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
305 } |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
306 } catch (SeException e) { |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
307 throw new TechnicalException("Could not cast this value to the Float Type. Object is of value type: " + getValue(pPos).getClass().getName()); |
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
308 } |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
309 } |
268
71b2f263f036
Add WKT-Syntaxt to Shape ReturnValue
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
310 return returnValue.toString(); |
129
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
311 } |
110e3ac1b7d2
Library Dependencies Added to pom.xml-File
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
312 } |