package org.geotools.data.db2; import java.sql.Connection; import org.geotools.jdbc.JDBCDataStore; import org.geotools.jdbc.JDBCViewTestSetup; public class DB2ViewTestSetup extends JDBCViewTestSetup { protected DB2ViewTestSetup() { super(new DB2TestSetup()); } @Override protected void setUpDataStore(JDBCDataStore dataStore) { super.setUpDataStore(dataStore); dataStore.setDatabaseSchema( null ); } @Override protected void createLakesTable() throws Exception { Connection con = getDataSource().getConnection(); String statement = "create table "+DB2TestUtil.SCHEMA_QUOTED+".\"lakes\""+ "(\"fid\" int not null , \"id\" int, \"geom\" db2gse.st_polygon, \"name\" varchar(32), primary key (\"fid\") )"; con.prepareStatement(statement).execute(); statement = "INSERT INTO "+DB2TestUtil.SCHEMA_QUOTED+".\"lakes\" (\"fid\", \"id\",\"geom\",\"name\") VALUES ( 0, 0," + "db2gse.st_PolyFromText('POLYGON((12 6, 14 8, 16 6, 16 4, 14 4, 12 6))',"+DB2TestUtil.SRID+")," + "'muddy')"; con.prepareStatement(statement).execute(); DB2Util.executeRegister(DB2TestUtil.SCHEMA, "lakes", "geom", DB2TestUtil.SRSNAME, con); con.close(); } @Override protected void dropLakesTable() throws Exception { Connection con = getDataSource().getConnection(); DB2Util.executeUnRegister(DB2TestUtil.SCHEMA, "lakes", "geom", con); DB2TestUtil.dropTable(DB2TestUtil.SCHEMA, "lakes", con); con.close(); } @Override protected void createLakesView() throws Exception { Connection con = getDataSource().getConnection(); con.prepareStatement("create view "+DB2TestUtil.SCHEMA_QUOTED+ ".\"lakesview\" " + " as select * from "+ DB2TestUtil.SCHEMA_QUOTED+ ".\"lakes\" ").execute(); DB2Util.executeRegister(DB2TestUtil.SCHEMA, "lakesview", "geom", DB2TestUtil.SRSNAME, con); con.close(); } @Override protected void dropLakesView() throws Exception { Connection con = getDataSource().getConnection(); DB2Util.executeUnRegister(DB2TestUtil.SCHEMA, "lakesview", "geom", con); DB2TestUtil.dropView(DB2TestUtil.SCHEMA, "lakesview", con); con.close(); } @Override protected void createLakesViewPk() throws Exception { } @Override protected void dropLakesViewPk() throws Exception { } }