/*
 * JTSvsPG_Test.java
 * 
 * (C) 19.10.2004 Markus Schaber, Logi-Track ag, CH 8001 Zuerich
 * 
 * This file is licensed under the GNU LGPL, see at www.gnu.org or ask
 * markus.schaber@logi-track.com for details.
 * 
 * $Id: $
 */
package test.misc;

import org.postgresql.Driver;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JTSvsPG_Test {

    final static String user = "logi";
    final static String pass = "track"; // not real :-)

    public static void main(String[] args) throws SQLException {
        System.out.println("Loading: " + Driver.getVersion());

        typetest("jdbc:postgresql://127.0.0.1:5432/logigis");
        typetest("jdbc:postgresql://127.0.0.1:5432/logigis?datatype.geometry=org.postgis.PGgeometry");
        typetest("jdbc:postgresql://127.0.0.1:5432/logigis?datatype.geometry=com.logitrack.gis.util.JtsGeometry");
    }

    static void typetest(String url) throws SQLException {
        System.out.println("Testing: " + url);
        Connection conn = DriverManager.getConnection(url, user, pass);
        Statement stat = conn.createStatement();
        if (stat.execute("SELECT 'POINT(42 23)'::geometry")) {
            ResultSet rs = stat.getResultSet();
            while (rs.next()) {
                Object result = rs.getObject(1);
                System.out.println("Got: " + result.getClass().getName() + " = " + result.toString());
            }
        } else {
            System.out.println("No Resultset!");
        }
        System.out.println();
    }
}