Revision 8207 trunk/extensions/extGraph_predes/src/com/iver/cit/gvsig/graphtests/TestWriter.java
TestWriter.java | ||
---|---|---|
41 | 41 |
package com.iver.cit.gvsig.graphtests; |
42 | 42 |
|
43 | 43 |
import java.io.File; |
44 |
import java.sql.Connection; |
|
45 |
import java.sql.ResultSet; |
|
46 |
import java.sql.SQLException; |
|
47 |
import java.sql.Statement; |
|
44 | 48 |
|
45 | 49 |
import junit.framework.TestCase; |
46 | 50 |
|
47 | 51 |
import org.cresques.cts.IProjection; |
48 | 52 |
|
53 |
import com.hardcode.gdbms.driver.postgresql.PostgreSQLDriver; |
|
49 | 54 |
import com.iver.cit.gvsig.fmap.DriverException; |
50 | 55 |
import com.iver.cit.gvsig.fmap.crs.CRSFactory; |
51 | 56 |
import com.iver.cit.gvsig.fmap.edition.EditionException; |
57 |
import com.iver.cit.gvsig.fmap.edition.writers.JdbcWriter; |
|
52 | 58 |
import com.iver.cit.gvsig.fmap.edition.writers.dbf.DbfWriter; |
53 | 59 |
import com.iver.cit.gvsig.fmap.layers.FLyrVect; |
54 | 60 |
import com.iver.cit.gvsig.fmap.layers.LayerFactory; |
... | ... | |
119 | 125 |
File edgeFile = new File("c:/edges.dbf"); |
120 | 126 |
DbfWriter edgeWriter = new DbfWriter(); |
121 | 127 |
edgeWriter.setFile(edgeFile); |
128 |
|
|
129 |
// Para postgres: |
|
130 |
// primero creamos 2 tablas y luego usamos JdbcWriter para a?adir los campos |
|
131 |
// y rellenar las tablas |
|
132 |
/* JdbcWriter pgEdgeWriter = new JdbcWriter(); |
|
133 |
pgEdgeWriter.setCreateTable(true); |
|
134 |
pgEdgeWriter.setWriteAll(true); |
|
135 |
|
|
136 |
JdbcWriter pgNodeWriter = new JdbcWriter(); |
|
137 |
pgNodeWriter.setCreateTable(true); |
|
138 |
pgNodeWriter.setWriteAll(true); |
|
139 |
|
|
140 |
PostgreSQLDriver pgDriver = new PostgreSQLDriver(); |
|
141 |
|
|
142 |
Connection conn = pgDriver.getConnection("localhost", 5432, "latin1", "postgres", "aquilina"); |
|
143 |
Statement stCreate = conn.createStatement(); |
|
144 |
try { |
|
145 |
stCreate.execute("DROP TABLE nodes;"); |
|
146 |
} catch (SQLException e1) { |
|
147 |
// Si no existe la tabla, no hay que borrarla. |
|
148 |
} |
|
149 |
try { |
|
150 |
stCreate.execute("DROP TABLE edges;"); |
|
151 |
} catch (SQLException e1) { |
|
152 |
// Si no existe la tabla, no hay que borrarla. |
|
153 |
} |
|
122 | 154 |
|
155 |
stCreate.execute("CREATE TABLE nodes (id int4, x float8, y float8);"); |
|
156 |
stCreate.execute("CREATE TABLE edges ();"); |
|
157 |
conn.commit(); |
|
158 |
conn.setAutoCommit(false); |
|
159 |
|
|
160 |
|
|
161 |
Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, |
|
162 |
ResultSet.CONCUR_UPDATABLE); |
|
163 |
ResultSet res = st.executeQuery("SELECT nodes.oid, nodes.* FROM nodes;"); |
|
164 |
if (res.getConcurrency() != ResultSet.CONCUR_UPDATABLE) { |
|
165 |
System.err.println("Error: No se puede editar la tabla nodes"); |
|
166 |
return; |
|
167 |
} |
|
168 |
// res.moveToInsertRow(); |
|
169 |
|
|
170 |
ResultSet resEdges = st.executeQuery("SELECT edges.oid, edges.* FROM edges;"); |
|
171 |
pgEdgeWriter.initialize(conn, res); |
|
172 |
pgNodeWriter.initialize(conn, resEdges); |
|
173 |
|
|
174 |
netBuilder.setEdgeWriter(pgEdgeWriter); |
|
175 |
netBuilder.setNodeWriter(pgNodeWriter); */ |
|
176 |
|
|
177 |
|
|
123 | 178 |
netBuilder.setEdgeWriter(edgeWriter); |
124 | 179 |
netBuilder.setNodeWriter(nodeWriter); |
125 | 180 |
|
181 |
|
|
182 |
|
|
126 | 183 |
} |
127 | 184 |
|
128 | 185 |
} |
Also available in: Unified diff