Mercurial > dive4elements > gnv-client
annotate geo-backend/src/main/java/de/intevation/gnv/geobackend/sde/datasources/ArcSDEStatement.java @ 552:7615ee5d1345
Cleanup imports
geo-backend/trunk@550 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Fri, 15 Jan 2010 20:57:13 +0000 |
parents | 23d5cc37dd5b |
children | 825781a39c70 |
rev | line source |
---|---|
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
1 /** |
552
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
2 * |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
3 */ |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
4 package de.intevation.gnv.geobackend.sde.datasources; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
5 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
6 import com.esri.sde.sdk.client.SDEPoint; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
7 import com.esri.sde.sdk.client.SeColumnDefinition; |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
8 import com.esri.sde.sdk.client.SeConnection; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
9 import com.esri.sde.sdk.client.SeException; |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
10 import com.esri.sde.sdk.client.SeExtent; |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
11 import com.esri.sde.sdk.client.SeFilter; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
12 import com.esri.sde.sdk.client.SeLayer; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
13 import com.esri.sde.sdk.client.SeQuery; |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
14 import com.esri.sde.sdk.client.SeQueryInfo; |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
15 import com.esri.sde.sdk.client.SeRaster; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
16 import com.esri.sde.sdk.client.SeRasterAttr; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
17 import com.esri.sde.sdk.client.SeRasterBand; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
18 import com.esri.sde.sdk.client.SeRasterConstraint; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
19 import com.esri.sde.sdk.client.SeRasterTile; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
20 import com.esri.sde.sdk.client.SeRow; |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
21 import com.esri.sde.sdk.client.SeShape; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
22 import com.esri.sde.sdk.client.SeShapeFilter; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
23 import com.esri.sde.sdk.client.SeSqlConstruct; |
552
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
24 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
25 import com.vividsolutions.jts.geom.Geometry; |
383
0b813ae17173
Added Point in Polygon Query Support to ArcSDE-Statement-Processing
Tim Englich <tim.englich@intevation.de>
parents:
380
diff
changeset
|
26 import com.vividsolutions.jts.geom.Point; |
0b813ae17173
Added Point in Polygon Query Support to ArcSDE-Statement-Processing
Tim Englich <tim.englich@intevation.de>
parents:
380
diff
changeset
|
27 import com.vividsolutions.jts.geom.Polygon; |
552
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
28 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
29 import com.vividsolutions.jts.io.WKTReader; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
30 |
552
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
31 import java.sql.Connection; |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
32 import java.sql.ResultSet; |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
33 import java.sql.SQLException; |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
34 import java.sql.SQLWarning; |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
35 import java.sql.Statement; |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
36 |
7615ee5d1345
Cleanup imports
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
547
diff
changeset
|
37 import org.apache.log4j.Logger; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
38 |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
39 /** |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
40 * @author Tim Englich (tim.englich@intevation.de) |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
41 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
42 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
43 public class ArcSDEStatement implements Statement { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
44 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
45 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
46 * the logger, used to log exceptions and additonaly information |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
47 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
48 private static Logger log = Logger.getLogger(ArcSDEStatement.class); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
49 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
50 private ArcSDEConnection connection = null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
51 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
52 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
53 * Constructor |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
54 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
55 public ArcSDEStatement(ArcSDEConnection connection) { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
56 this.connection = connection; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
57 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
58 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
59 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
60 * @see java.sql.Statement#addBatch(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
61 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
62 public void addBatch(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
63 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
64 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
65 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
66 * @see java.sql.Statement#cancel() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
67 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
68 public void cancel() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
69 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
70 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
71 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
72 * @see java.sql.Statement#clearBatch() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
73 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
74 public void clearBatch() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
75 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
76 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
77 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
78 * @see java.sql.Statement#clearWarnings() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
79 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
80 public void clearWarnings() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
81 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
82 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
83 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
84 * @see java.sql.Statement#close() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
85 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
86 public void close() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
87 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
88 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
89 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
90 * @see java.sql.Statement#execute(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
91 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
92 public boolean execute(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
93 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
94 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
95 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
96 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
97 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
98 * @see java.sql.Statement#execute(java.lang.String, int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
99 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
100 public boolean execute(String arg0, int arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
101 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
102 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
103 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
104 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
105 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
106 * @see java.sql.Statement#execute(java.lang.String, int[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
107 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
108 public boolean execute(String arg0, int[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
109 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
110 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
111 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
112 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
113 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
114 * @see java.sql.Statement#execute(java.lang.String, java.lang.String[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
115 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
116 public boolean execute(String arg0, String[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
117 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
118 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
119 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
120 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
121 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
122 * @see java.sql.Statement#executeBatch() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
123 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
124 public int[] executeBatch() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
125 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
126 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
127 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
128 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
129 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
130 * @see java.sql.Statement#executeQuery(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
131 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
132 public ResultSet executeQuery(String statement) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
133 try { |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
134 SeQuery query = null; |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
135 if (statement.toLowerCase().contains("st_astext") || statement.toLowerCase().contains("intersects")){ |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
136 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
137 String[] values = statement.toLowerCase().split("where", 2); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
138 String where = values.length > 1 ? values[1].trim() : ""; |
277
f304f2f12db4
Changed the splitting of the Statements for ARCSDE-Transformation.
Tim Englich <tim.englich@intevation.de>
parents:
275
diff
changeset
|
139 String[] tableNames = values[0].substring(values[0].indexOf("from")).replaceFirst("from", "").toUpperCase().trim().split(", "); |
f304f2f12db4
Changed the splitting of the Statements for ARCSDE-Transformation.
Tim Englich <tim.englich@intevation.de>
parents:
275
diff
changeset
|
140 String columnValueString = values[0].substring(0, values[0].indexOf("from")).trim(); |
f304f2f12db4
Changed the splitting of the Statements for ARCSDE-Transformation.
Tim Englich <tim.englich@intevation.de>
parents:
275
diff
changeset
|
141 columnValueString = columnValueString.replaceFirst("select", "").trim(); |
377
6a585e87c18b
Added RegionFilter-Support to HorizontalProfile InstantaneousPoint
Tim Englich <tim.englich@intevation.de>
parents:
277
diff
changeset
|
142 String[] returnFields = columnValueString.split(", "); |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
143 String geometryColumnName = null; |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
144 String byClause = null; |
274
ff1b7967e6b9
General CodecCleanup:
Tim Englich <tim.englich@intevation.de>
parents:
267
diff
changeset
|
145 int byClausePos = where.indexOf("group by"); |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
146 if (byClausePos < 0){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
147 byClausePos = where.indexOf("order by"); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
148 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
149 if (byClausePos > 0){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
150 byClause = where.substring(byClausePos); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
151 where = where.substring(0,byClausePos); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
152 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
153 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
154 for (int i = 0; i < returnFields.length; i++){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
155 returnFields[i] = returnFields[i].trim(); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
156 if (returnFields[i].startsWith("st_astext(")){ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
157 returnFields[i] = returnFields[i].replaceAll("st_astext", ""); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
158 returnFields[i] = returnFields[i].substring(1, returnFields[i].length()-1); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
159 geometryColumnName = returnFields[i]; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
160 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
161 } |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
162 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
163 for (int i = 0; i < tableNames.length; i++){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
164 tableNames[i] = tableNames[i].trim(); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
165 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
166 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
167 Geometry g = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
168 int pos = where.indexOf("intersects"); |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
169 if (pos >= 0 ){ |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
170 String substr = where.substring(pos); |
546
210716612c30
Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
Tim Englich <tim.englich@intevation.de>
parents:
544
diff
changeset
|
171 where = where.substring(0,where.lastIndexOf("intersects")); |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
172 int andPos = where.lastIndexOf("and"); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
173 if (andPos < 0){ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
174 andPos = 0; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
175 } |
546
210716612c30
Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
Tim Englich <tim.englich@intevation.de>
parents:
544
diff
changeset
|
176 where = where.substring(0,andPos); // TODO support or also |
210716612c30
Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
Tim Englich <tim.englich@intevation.de>
parents:
544
diff
changeset
|
177 String intersectsStmt = substr.substring(0, substr.lastIndexOf(")")); // Spatial-Statment is the last one |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
178 String wkt = null; |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
179 if (intersectsStmt.contains("select")){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
180 // Anstelle eines WKT ist ein InnerSelect zum Bestimmen der Comparatorgeometrie gegeben. |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
181 String stmt = intersectsStmt.substring(intersectsStmt.indexOf("select"),intersectsStmt.lastIndexOf(")")); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
182 ResultSet resultSet = this.executeQuery(stmt); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
183 if (resultSet != null && resultSet.next()){ |
546
210716612c30
Removed Encodingerrors from listed Files. All Files are now UTF-8 compliant.
Tim Englich <tim.englich@intevation.de>
parents:
544
diff
changeset
|
184 // TODO: Support the selection of more than one Geometry |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
185 wkt = resultSet.getString("SHAPE"); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
186 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
187 }else{ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
188 wkt = intersectsStmt.substring(intersectsStmt.indexOf("\""), intersectsStmt.lastIndexOf("\"")).replace("\"", "").trim(); |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
189 } |
383
0b813ae17173
Added Point in Polygon Query Support to ArcSDE-Statement-Processing
Tim Englich <tim.englich@intevation.de>
parents:
380
diff
changeset
|
190 g = new WKTReader().read(wkt.toUpperCase()); |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
191 |
275
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
192 if (geometryColumnName == null){ |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
193 geometryColumnName = "SHAPE"; // TODO dynamisch aus Intersects auslesen. |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
194 } |
9063c5fcebf7
Added the possibility to use Innerselects in SpatialQueries
Tim Englich <tim.englich@intevation.de>
parents:
274
diff
changeset
|
195 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
196 } |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
197 |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
198 return this.executeQuery(this.connection.getSeConnection(), tableNames, geometryColumnName, where, g, returnFields,byClause); |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
199 }else{ |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
200 query = new SeQuery(this.connection.getSeConnection()); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
201 query.prepareSql(statement); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
202 query.execute(); |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
203 return this.handleResultSet(query,false,null); |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
204 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
205 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
206 } catch (Exception e) { |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
207 log.error(e,e); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
208 throw new SQLException(e.getMessage()); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
209 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
210 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
211 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
212 } |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
213 |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
214 private ResultSet executeQuery(SeConnection con, String[] pLayername, |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
215 String pSpatialColumnName, String pWhere, |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
216 Geometry g, String[] pReturnFields, String byClause) |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
217 throws SQLException { |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
218 log.debug("executeQuery()"); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
219 try { |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
220 // get the layer for querying |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
221 boolean isRaster = pSpatialColumnName.equalsIgnoreCase("raster"); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
222 |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
223 SeShapeFilter[] filters = null; |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
224 if (g != null){ |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
225 if (!isRaster){ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
226 SeLayer lLayer = new SeLayer(con, pLayername[0], pSpatialColumnName); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
227 SeShape shape = new SeShape(); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
228 shape.setCoordRef(lLayer.getCoordRef()); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
229 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
230 SDEPoint[] lPoints = new ArcSDEUtils().createPoints(g); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
231 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
232 int searchMode = SeFilter.METHOD_AI; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
233 if (g instanceof Polygon){ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
234 shape.generatePolygon(lPoints.length, 1, null, lPoints); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
235 }else if (g instanceof Point){ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
236 shape.generatePoint(1, lPoints); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
237 searchMode = SeFilter.METHOD_PC; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
238 } |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
239 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
240 SeShapeFilter filter = new SeShapeFilter(pLayername[0], |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
241 pSpatialColumnName, shape,searchMode); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
242 filters = new SeShapeFilter[1]; |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
243 filters[0] = filter; |
383
0b813ae17173
Added Point in Polygon Query Support to ArcSDE-Statement-Processing
Tim Englich <tim.englich@intevation.de>
parents:
380
diff
changeset
|
244 } |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
245 } |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
246 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
247 SeQuery spatialQuery = null; |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
248 SeSqlConstruct sqlCons = new SeSqlConstruct(pLayername, pWhere); |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
249 spatialQuery = new SeQuery(con);//, pReturnFields, sqlCons); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
250 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
251 SeQueryInfo queryInfo = new SeQueryInfo(); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
252 queryInfo.setColumns(pReturnFields); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
253 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
254 if (byClause != null){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
255 queryInfo.setByClause(byClause); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
256 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
257 |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
258 queryInfo.setConstruct(sqlCons); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
259 spatialQuery.prepareQueryInfo(queryInfo); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
260 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
261 /* |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
262 * Set spatial constraints |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
263 */ |
266
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
264 if (filters != null){ |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
265 spatialQuery.setSpatialConstraints(SeQuery.SE_OPTIMIZE, false, |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
266 filters); |
1530890b28c9
Added SFS-Support to ArcSDE-Query-Part without any Spatial restriction in the where clause
Tim Englich <tim.englich@intevation.de>
parents:
263
diff
changeset
|
267 } |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
268 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
269 if (!isRaster){ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
270 spatialQuery.execute(); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
271 } |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
272 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
273 return this.handleResultSet(spatialQuery,isRaster,g); |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
274 |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
275 } catch (Exception e) { |
267
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
276 if (e instanceof SeException){ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
277 ArcSDEUtils.printError((SeException)e); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
278 }else{ |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
279 log.error(e.getMessage(), e); |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
280 } |
000e00592ba5
Added InnerJoin, Order By and Group By Support to Spatial-Queries
Tim Englich <tim.englich@intevation.de>
parents:
266
diff
changeset
|
281 |
263
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
282 throw new SQLException(e.getMessage()); |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
283 } |
031ef9649cd1
Added SFS-Support to ArcSDE-Query-Part
Tim Englich <tim.englich@intevation.de>
parents:
143
diff
changeset
|
284 } |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
285 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
286 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
287 * @see java.sql.Statement#executeUpdate(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
288 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
289 public int executeUpdate(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
290 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
291 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
292 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
293 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
294 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
295 * @see java.sql.Statement#executeUpdate(java.lang.String, int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
296 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
297 public int executeUpdate(String arg0, int arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
298 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
299 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
300 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
301 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
302 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
303 * @see java.sql.Statement#executeUpdate(java.lang.String, int[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
304 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
305 public int executeUpdate(String arg0, int[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
306 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
307 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
308 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
309 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
310 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
311 * @see java.sql.Statement#executeUpdate(java.lang.String, java.lang.String[]) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
312 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
313 public int executeUpdate(String arg0, String[] arg1) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
314 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
315 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
316 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
317 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
318 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
319 * @see java.sql.Statement#getConnection() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
320 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
321 public Connection getConnection() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
322 return this.connection; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
323 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
324 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
325 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
326 * @see java.sql.Statement#getFetchDirection() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
327 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
328 public int getFetchDirection() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
329 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
330 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
331 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
332 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
333 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
334 * @see java.sql.Statement#getFetchSize() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
335 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
336 public int getFetchSize() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
337 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
338 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
339 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
340 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
341 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
342 * @see java.sql.Statement#getGeneratedKeys() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
343 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
344 public ResultSet getGeneratedKeys() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
345 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
346 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
347 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
348 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
349 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
350 * @see java.sql.Statement#getMaxFieldSize() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
351 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
352 public int getMaxFieldSize() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
353 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
354 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
355 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
356 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
357 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
358 * @see java.sql.Statement#getMaxRows() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
359 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
360 public int getMaxRows() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
361 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
362 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
363 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
364 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
365 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
366 * @see java.sql.Statement#getMoreResults() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
367 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
368 public boolean getMoreResults() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
369 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
370 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
371 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
372 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
373 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
374 * @see java.sql.Statement#getMoreResults(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
375 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
376 public boolean getMoreResults(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
377 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
378 return false; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
379 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
380 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
381 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
382 * @see java.sql.Statement#getQueryTimeout() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
383 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
384 public int getQueryTimeout() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
385 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
386 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
387 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
388 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
389 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
390 * @see java.sql.Statement#getResultSet() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
391 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
392 public ResultSet getResultSet() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
393 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
394 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
395 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
396 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
397 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
398 * @see java.sql.Statement#getResultSetConcurrency() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
399 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
400 public int getResultSetConcurrency() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
401 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
402 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
403 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
404 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
405 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
406 * @see java.sql.Statement#getResultSetHoldability() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
407 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
408 public int getResultSetHoldability() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
409 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
410 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
411 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
412 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
413 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
414 * @see java.sql.Statement#getResultSetType() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
415 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
416 public int getResultSetType() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
417 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
418 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
419 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
420 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
421 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
422 * @see java.sql.Statement#getUpdateCount() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
423 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
424 public int getUpdateCount() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
425 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
426 return 0; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
427 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
428 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
429 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
430 * @see java.sql.Statement#getWarnings() |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
431 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
432 public SQLWarning getWarnings() throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
433 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
434 return null; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
435 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
436 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
437 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
438 * @see java.sql.Statement#setCursorName(java.lang.String) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
439 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
440 public void setCursorName(String arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
441 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
442 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
443 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
444 * @see java.sql.Statement#setEscapeProcessing(boolean) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
445 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
446 public void setEscapeProcessing(boolean arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
447 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
448 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
449 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
450 * @see java.sql.Statement#setFetchDirection(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
451 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
452 public void setFetchDirection(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
453 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
454 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
455 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
456 * @see java.sql.Statement#setFetchSize(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
457 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
458 public void setFetchSize(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
459 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
460 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
461 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
462 * @see java.sql.Statement#setMaxFieldSize(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
463 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
464 public void setMaxFieldSize(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
465 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
466 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
467 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
468 * @see java.sql.Statement#setMaxRows(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
469 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
470 public void setMaxRows(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
471 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
472 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
473 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
474 * @see java.sql.Statement#setQueryTimeout(int) |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
475 */ |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
476 public void setQueryTimeout(int arg0) throws SQLException { |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
477 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
478 |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
479 /** |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
480 * Copied from de.intevation.gnv.geobackend.sde.datasources.SDEQuery |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
481 * @param pSeQuery |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
482 * @return |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
483 * @throws SeException |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
484 */ |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
485 private ResultSet handleResultSet(SeQuery pSeQuery, boolean isRaster, Geometry geometry) throws SeException { |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
486 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
487 boolean debug = log.isDebugEnabled(); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
488 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
489 if (debug) { |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
490 log.debug("ArcSDEStatement.handleResultSet()"); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
491 } |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
492 |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
493 SDEResultSet lSet = new SDEResultSet(); |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
494 SeRow row = null;; |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
495 int lCount; |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
496 if (!isRaster){ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
497 for (lCount = 0; (row = pSeQuery.fetch()) != null; lCount++) { |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
498 // one time execution |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
499 if (lCount == 0) { |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
500 // analyze cols of result set |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
501 SeColumnDefinition[] lCols = row.getColumns(); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
502 for (SeColumnDefinition lCol : lCols) { |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
503 lSet.addCol(new ColDefinition(lCol.getName(), lCol.getType())); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
504 // notice: esri-types have been copied into colDefinition class! |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
505 } |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
506 } |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
507 short lNumCols = row.getNumColumns(); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
508 Row lBackingRow = new Row(lNumCols); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
509 for (int i = 0; i < lNumCols; i++) { |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
510 lBackingRow.addObject(row.getObject(i), i); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
511 } |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
512 lSet.addRow(lBackingRow); |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
513 } |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
514 }else{ |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
515 try { |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
516 pSeQuery.execute(); |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
517 row = pSeQuery.fetch(); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
518 SeRasterAttr attr = row.getRaster(0); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
519 SeRaster raster = attr.getRasterInfo(); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
520 SeRasterBand [] bands = raster.getBands(); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
521 SeRasterBand rasterBand = bands[0]; |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
522 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
523 SeExtent extent = rasterBand.getExtent(); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
524 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
525 /* |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
526 if (debug) { |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
527 log.debug("Extent: " + |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
528 extent.getMinX() + " " + extent.getMinY() + " "+ |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
529 extent.getMaxX() + " " + extent.getMaxY()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
530 log.debug("Query geometry: "+geometry.toText()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
531 } |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
532 */ |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
533 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
534 double x = ((Point)geometry).getX(); |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
535 double y = ((Point)geometry).getY(); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
536 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
537 boolean isPointInRaster = |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
538 x >= extent.getMinX() && x <= extent.getMaxX() |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
539 && y >= extent.getMinY() && y <= extent.getMaxY(); |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
540 |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
541 if (isPointInRaster){ |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
542 |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
543 if (row == null){ |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
544 pSeQuery.execute(); |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
545 row = pSeQuery.fetch(); |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
546 } |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
547 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
548 double midX = 0.5d*(extent.getMinX() + extent.getMaxX()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
549 double midY = 0.5d*(extent.getMinY() + extent.getMaxY()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
550 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
551 SDEPoint origin = rasterBand.getTileOrigin(); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
552 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
553 double maxX = origin.getX() < midX |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
554 ? extent.getMaxX() |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
555 : extent.getMinX(); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
556 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
557 double maxY = origin.getY() < midY |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
558 ? extent.getMaxY() |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
559 : extent.getMinY(); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
560 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
561 /* |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
562 0 = origin.getX()*mx + bx |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
563 rasterBand.getBandWidth() = maxX + bx |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
564 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
565 rasterBand.getBandWidth() = (maxX-origin.getX())*mx |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
566 */ |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
567 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
568 double mx = rasterBand.getBandWidth()/(maxX-origin.getX()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
569 double bx = -origin.getX()*mx; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
570 double px = mx*x + bx; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
571 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
572 double my = rasterBand.getBandHeight()/(maxY-origin.getY()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
573 double by = -origin.getY()*my; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
574 double py = my*y + by; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
575 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
576 /* |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
577 if (debug) { |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
578 log.debug("p(x, y): " + px + " / " + py); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
579 } |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
580 */ |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
581 |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
582 SeRasterConstraint constraint = new SeRasterConstraint(); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
583 constraint.setLevel(0); // best resolution |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
584 constraint.setBands(rasterBand.getBandNumber()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
585 int tx = (int)Math.floor(px / rasterBand.getTileWidth()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
586 int ty = (int)Math.floor(py / rasterBand.getTileHeight()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
587 constraint.setEnvelope(tx, ty, tx, ty); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
588 |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
589 pSeQuery.queryRasterTile(constraint); |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
590 SeRasterTile tile = row.getRasterTile(); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
591 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
592 if (tile != null){ |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
593 double[] tileValues = new double[tile.getNumPixels()]; |
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
594 tileValues = tile.getPixels(tileValues); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
595 lSet.addCol(new ColDefinition("tile", ColDefinition.FLOAT64)); |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
596 Row lBackingRow = new Row(1); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
597 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
598 /* |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
599 0 = wx1*mt + bt |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
600 tileWidth-EPS = wx2*mt + bt |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
601 tileWidth-EPS = mt*(wx2 - wx1) |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
602 */ |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
603 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
604 double wx1 = (rasterBand.getTileWidth()*tx - bx)/mx; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
605 double wx2 = (rasterBand.getTileWidth()*(tx+1) - bx)/mx; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
606 double mxt = (rasterBand.getTileWidth()-1e-5d)/(wx2 - wx1); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
607 double bxt = -wx1*mxt; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
608 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
609 double wy1 = (rasterBand.getTileHeight()*ty - by)/my; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
610 double wy2 = (rasterBand.getTileHeight()*(ty+1) - by)/my; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
611 double myt = (rasterBand.getTileHeight()-1e-5d)/(wy2 - wy1); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
612 double byt = -wy1*myt; |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
613 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
614 RasterObject ro = new RasterObject( |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
615 mxt, bxt, |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
616 myt, byt, |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
617 tile.getColumnIndex(), |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
618 tile.getRowIndex(), |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
619 tileValues, |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
620 rasterBand.getTileWidth(), |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
621 rasterBand.getTileHeight()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
622 lBackingRow.addObject(ro, 0); |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
623 lSet.addRow(lBackingRow); |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
624 |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
625 /* |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
626 if (debug) { |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
627 log.debug("x / y: " + x + " / " + y); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
628 log.debug("wx1: " + wx1); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
629 log.debug("wx1 -> " + (wx1*mxt+bxt)); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
630 log.debug("wx2: " + wx2); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
631 log.debug("wx2 -> " + (wx2*mxt+bxt)); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
632 log.debug("wx2 - wx1: " + Math.abs(wx2-wx1)); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
633 log.debug("wy2 - wy1: " + Math.abs(wy2-wy1)); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
634 log.debug("pix: " + (x*mxt + bxt)+ " " + (y*myt + byt)); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
635 log.debug("requesting tile: " + tx + " / " + ty); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
636 log.debug("got tile: " + tile.getColumnIndex() + " / " + tile.getRowIndex()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
637 log.debug("tile orig: " + origin.getX() + " / " + origin.getY()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
638 log.debug("tile width: " + rasterBand.getTileWidth()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
639 log.debug("tile height: " + rasterBand.getTileHeight()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
640 log.debug("Rasterdimesion (Pixel) " + |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
641 rasterBand.getBandWidth() + " / " + rasterBand.getBandHeight()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
642 log.debug("BAND-ID "+rasterBand.getId().longValue()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
643 log.debug("Pixels: "+ tile.getNumPixels()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
644 log.debug("Column / Row "+tile.getColumnIndex()+" / "+tile.getRowIndex()); |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
645 } |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
646 */ |
544
33f93898cbbf
Added RasterObject for caching the Rastertiles to get a better performance
Tim Englich <tim.englich@intevation.de>
parents:
543
diff
changeset
|
647 } |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
648 } |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
649 else{ |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
650 log.debug("The Query doesn't deliver any Information " + |
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
651 "because the Point is located outside the Raster."); |
543
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
652 } |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
653 } catch (Exception e) { |
fac02bf1c685
Added Rasterdatasupport to the ARCSDE-Statement
Tim Englich <tim.englich@intevation.de>
parents:
383
diff
changeset
|
654 log.error(e,e); |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
655 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
656 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
657 pSeQuery.close(); |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
658 return lSet; |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
659 } |
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
660 |
380
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
661 public boolean isClosed() throws SQLException { |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
662 return false; |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
663 } |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
664 |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
665 public boolean isPoolable() throws SQLException { |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
666 return false; |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
667 } |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
668 |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
669 public void setPoolable(boolean arg0) throws SQLException { |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
670 } |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
671 |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
672 public boolean isWrapperFor(Class<?> iface) throws SQLException { |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
673 return false; |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
674 } |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
675 |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
676 public <T> T unwrap(Class<T> iface) throws SQLException { |
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
677 return null; |
547
23d5cc37dd5b
Fixed access to raster data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
546
diff
changeset
|
678 |
380
0100ebf6630f
Added missing Methodstubs for Java 1.6 compability.
Tim Englich <tim.englich@intevation.de>
parents:
377
diff
changeset
|
679 } |
130
e4eacd613356
Implementierung Datenzugriff auf die ArcSDE über java.sql. Methodiken
Tim Englich <tim.englich@intevation.de>
parents:
diff
changeset
|
680 } |