annotate geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/Row.java @ 1127:ebeb56428409

Added license headers and license file. geo-backend/trunk@1261 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Tue, 02 Nov 2010 17:52:22 +0000
parents 02cd2935b5fa
children
rev   line source
1127
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
1 /*
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
2 * Copyright (c) 2010 by Intevation GmbH
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
3 *
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
4 * This program is free software under the LGPL (>=v2.1)
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
5 * Read the file LGPL.txt coming with the software for details
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
6 * or visit http://www.gnu.org/licenses/ if it does not exist.
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
7 */
ebeb56428409 Added license headers and license file.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 897
diff changeset
8
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
9 package de.intevation.gnv.geobackend.sde.datasources;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
10
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
11 import com.esri.sde.sdk.client.SDEPoint;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
12 import com.esri.sde.sdk.client.SeException;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
13 import com.esri.sde.sdk.client.SeShape;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
14
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
15 import de.intevation.gnv.geobackend.sde.datasources.exception.TechnicalException;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
16
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
17 import de.intevation.gnv.geobackend.util.DateUtils;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
18
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
19 import java.util.ArrayList;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
20 import java.util.Calendar;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
21 import java.util.Date;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
22
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
23 import org.apache.log4j.Logger;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
24
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
25 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
26 * A Row represents a set of values.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
27 * In a technical manner (e.g. database manner) a row contains all attributes of a single "hit".
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
28 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
29 * @author blume
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
30 * @author <a href="mailto:tim.englich@intevation.de">Tim Englich</a>
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
31 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
32 public class Row {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
33 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
34 * Default Logging instance
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
35 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
36 private static Logger sLogger = Logger.getLogger(Row.class);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
37
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
38 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
39 * Data container.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
40 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
41 private Object[] mObjects;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
42
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
43 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
44 * Constructor.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
45 * @param pRowSize the number of attributes contained by this row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
46 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
47 public Row(int pRowSize) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
48 mObjects = new Object[pRowSize];
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
49 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
50
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
51 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
52 * Constructor.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
53 * @param ArrayStr a line from CSV-File.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
54 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
55 public Row (String[] ArrayStr){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
56 this (ArrayStr.length);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
57 int nLength = ArrayStr.length;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
58 for (int i=0; i < nLength; i++){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
59 addObject(ArrayStr[i], i);
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
60
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
61 }
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
62
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
63 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
64
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
65 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
66 * Adds an attribute value to a specific position of this row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
67 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
68 * @param pObject the object to be stored.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
69 * @param pPos the postion the value to be saved
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
70 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
71 public void addObject(Object pObject, int pPos) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
72 mObjects[pPos] = pObject;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
73 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
74
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
75 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
76 * Returns a Value out of the Row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
77 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
78 * @param pPos the position of the value to be returned.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
79 * @return an Object! (not strongly typed)
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
80 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
81 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
82 public Object getValue(int pPos) throws TechnicalException {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
83 if (pPos < mObjects.length) {
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
84
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
85 Object o = mObjects[pPos];
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
86 if (o instanceof SeShape){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
87 return this.getPosValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
88 }else{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
89 return o;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
90 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
91 } else {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
92 throw new TechnicalException("Cannot access this field position. Size is: " + mObjects.length);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
93 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
94 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
95
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
96 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
97 * This is a covenient method for getting strongly typed objects out of the row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
98 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}).
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
99 * In fact, this method executes a simple cast to the desired type.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
100 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
101 * @param pPos the position of the object to be resolved.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
102 * @return a strongly typed Date
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
103 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
104 * @see #getValue(int)
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
105 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
106 public Date getDateValue(int pPos) throws TechnicalException {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
107 Date date = null;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
108 try {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
109 Calendar lCalendar = (Calendar) getValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
110 date = lCalendar.getTime();
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
111 }
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
112 catch (ClassCastException e) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
113 try{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
114 //SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
115 date = DateUtils.getDateFromString ((String)getValue(pPos)); //(Date)formatter.parse((String)getValue(pPos));
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
116
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
117
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
118 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
119 catch (Exception ex){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
120 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
121 throw new TechnicalException("Could not cast this value to the Date Type. Object is of value type: " + getValue(pPos).getClass().getName());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
122 }
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
123 }
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
124
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
125 return date;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
126 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
127
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
128 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
129 * This is a covenient method for getting strongly typed objects out of the row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
130 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}).
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
131 * In fact, this method executes a simple cast to the desired type.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
132 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
133 * @param pPos the position of the object to be resolved.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
134 * @return a strongly typed String
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
135 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
136 * @see #getValue(int)
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
137 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
138 public String getStringValue(int pPos) throws TechnicalException {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
139 try {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
140 Object o = this.getValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
141 String returnValue = null;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
142 if (o instanceof SeShape){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
143 returnValue = this.getPosValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
144 }else{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
145 returnValue = (String)o;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
146 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
147 return returnValue;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
148 } catch (ClassCastException e) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
149 throw new TechnicalException("Could not cast this value to the String Type. Object is of value type: " + getValue(pPos).getClass().getName());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
150 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
151 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
152
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
153 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
154 * This is a covenient method for getting strongly typed objects out of the row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
155 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}).
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
156 * In fact, this method executes a simple cast to the desired type.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
157 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
158 * @param pPos the position of the object to be resolved.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
159 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
160 * @see #getValue(int)
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
161 * * @return a strongly typed int
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
162 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
163 public int getIntValue(int pPos) throws TechnicalException {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
164 try {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
165 return (Integer) getValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
166 } catch (ClassCastException e) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
167 throw new TechnicalException("Could not cast this value to the Integer Type. Object is of value type: " + getValue(pPos).getClass().getName());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
168 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
169 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
170
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
171 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
172 * This is a covenient method for getting strongly typed objects out of the row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
173 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}).
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
174 * In fact, this method executes a simple cast to the desired type.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
175 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
176 * @param pPos the position of the object to be resolved.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
177 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
178 * @see #getValue(int)
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
179 * * @return a strongly typed Double
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
180 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
181 public Double getDoubleValue(int pPos) throws TechnicalException {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
182 try {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
183 return (Double) getValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
184 } catch (ClassCastException e) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
185 try{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
186 return new Double ((String)getValue(pPos));
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
187 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
188 catch(Exception ex){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
189 sLogger.error(getValue(pPos) + " " + ex.getMessage(), ex);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
190 throw new TechnicalException("Could not cast this value to the Double Type. Object is of value type: " + getValue(pPos).getClass().getName());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
191 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
192 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
193 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
194
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
195 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
196 * This is a covenient method for getting strongly typed objects out of the row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
197 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}).
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
198 * In fact, this method executes a simple cast to the desired type.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
199 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
200 * @param pPos the position of the object to be resolved.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
201 * @return a strongly typed Float
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
202 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
203 * @see #getValue(int)
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
204 */
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
205 public Float getFloatValue(int pPos) throws TechnicalException {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
206 try {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
207 return (Float) getValue(pPos);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
208 } catch (ClassCastException e) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
209 throw new TechnicalException("Could not cast this value to the Float Type. Object is of value type: " + getValue(pPos).getClass().getName());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
210 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
211 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
212 /**
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
213 * This is a covenient method for getting strongly typed objects out of the row.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
214 * It has to be ensured, that the type of the requested row position has been resolved out of the ColumnDefinition ({@link ResultSet#getColumnDefinitions()}).
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
215 * In fact, this method executes a simple cast to the desired type.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
216 *
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
217 * @param pPos the position of the object to be resolved.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
218 * @return a strongly typed Float
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
219 * @throws TechnicalException
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
220 * @see #getValue(int)
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
221 */
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
222 public String getPosValue(int pPos)throws TechnicalException{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
223 StringBuffer returnValue = new StringBuffer();
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
224 synchronized (returnValue) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
225 try {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
226 SeShape val = (SeShape) this.mObjects[pPos];
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
227 if (val.isPoint()){
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
228 // Cannot use val.asText() because the
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
229 // generated WKT is invalid.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
230 ArrayList aList = val.getAllPoints(0,false);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
231 SDEPoint[] mPoint = (SDEPoint[])aList.get(0);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
232 returnValue.append("POINT(")
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
233 .append(mPoint[0].getX())
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
234 .append(" ")
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
235 .append(mPoint[0].getY());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
236 if (mPoint[0].is3D()){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
237 returnValue.append(" ").append(mPoint[0].getZ());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
238 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
239 returnValue.append(")");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
240 }else if (val.isLine() || val.isSimpleLine()){
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
241 // Cannot use val.asText() because the
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
242 // generated WKT is invalid.
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
243 ArrayList aList = val.getAllPoints(0,false);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
244 SDEPoint[] mPoint = (SDEPoint[])aList.get(0);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
245 boolean isMultiLineString = val.isMultiPart();
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
246 int length = mPoint.length;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
247 int nextOffset = length;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
248 int[] offsets = (int[])aList.get(1);
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
249 int offsetPos = 1;
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
250
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
251 if(isMultiLineString){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
252 returnValue.append("MULTILINESTRING((");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
253 nextOffset = offsets.length-1 >= offsetPos ? offsets[offsetPos++] : length;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
254 }else{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
255 returnValue.append("LINESTRING(");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
256 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
257
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
258 for (int i = 0; i< length;i++){
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
259
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
260 if (i == nextOffset){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
261 returnValue.append("),(");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
262 nextOffset = offsets.length-1 >= offsetPos ? offsets[offsetPos++] : length;
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
263 }
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
264
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
265 returnValue.append(mPoint[i].getX())
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
266 .append(" ")
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
267 .append(mPoint[i].getY());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
268 if (mPoint[i].is3D()){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
269 returnValue.append(" ").append(mPoint[i].getZ());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
270 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
271 if (i < length-1 && i < nextOffset -1){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
272 returnValue.append(" , ");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
273 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
274 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
275
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
276 if(isMultiLineString){
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
277 returnValue.append("))");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
278 }else{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
279 returnValue.append(")");
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
280 }
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
281
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
282 } else{
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
283 returnValue.append(val.asText(val.getTextSize()));
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
284 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
285 } catch (SeException e) {
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
286 throw new TechnicalException("Could not cast this value to the " +
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
287 "Float Type. Object is of value " +
897
02cd2935b5fa Removed trailing whitespace.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 894
diff changeset
288 "type: " +
894
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
289 getValue(pPos).getClass().getName());
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
290 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
291 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
292 return returnValue.toString();
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
293 }
d674cef2ca0d Using unix line endings only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 887
diff changeset
294 }

http://dive4elements.wald.intevation.org