Revision 1988

View differences:

branches/Fmap_GisPlanet/libraries/libFMap/src/com/iver/cit/gvsig/fmap/drivers/jdbc/postgis/PostGisDriver.java
51 51
import java.sql.Statement;
52 52
import java.sql.Types;
53 53

  
54
import org.apache.log4j.Logger;
54 55
import org.postgis.PGbox3d;
55 56

  
56 57
import com.hardcode.gdbms.engine.values.Value;
......
61 62
import com.iver.cit.gvsig.fmap.drivers.DriverAttributes;
62 63
import com.iver.cit.gvsig.fmap.drivers.IFeatureIterator;
63 64
import com.iver.cit.gvsig.fmap.drivers.WKBParser;
65
import com.iver.cit.gvsig.fmap.drivers.shp.DemoSHPDriver;
64 66
import com.vividsolutions.jts.io.ParseException;
65 67

  
66 68
/**
......
70 72
 * Window - Preferences - Java - Code Generation - Code and Comments
71 73
 */
72 74
public class PostGisDriver extends DefaultDBDriver {
75
    private static Logger logger = Logger.getLogger(PostGisDriver.class.getName());
73 76
    private WKBParser parser = new WKBParser();
74 77
    private int fetch_min=-1;
75 78
    private int fetch_max=-1;
......
140 143
	    try {
141 144
	        st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
142 145
	        st.setFetchSize(5000);
146
            logger.info("Cadena SQL:" + this.sqlOrig);
143 147
	        st.execute("declare wkb_cursor binary cursor for " + sqlOrig);
144 148
	        rs = st.executeQuery("fetch forward all in wkb_cursor");
145 149
	        // st.execute("begin"); 
......
337 341
	 * @see com.iver.cit.gvsig.fmap.drivers.VectorialDatabaseDriver#getGeometryField(java.lang.String)
338 342
	 */
339 343
	public String getGeometryField(String fieldName) {
340
		return "ASBINARY(" + fieldName + ", XDR)";
344
		return "ASBINARY(" + fieldName + ", 'XDR')";
341 345
	}
342 346
    /**
343 347
     * @see com.hardcode.gdbms.engine.data.driver.ObjectDriver#getPrimaryKeys()
branches/Fmap_GisPlanet/libraries/libFMap/src/com/iver/cit/gvsig/fmap/drivers/jdbc/postgis/PostGisFeatureIterator.java
96 96
     * @see com.iver.cit.gvsig.fmap.drivers.jdbc.GeometryIterator#hasNext()
97 97
     */
98 98
    public boolean hasNext() throws SQLException {
99
        try
99
        if (rs.next())
100
            return true;
101
        else
100 102
        {
101
	        if (rs.isAfterLast())
102
	        {            
103
	            rs.close();
104
	            return false;
105
	        }
106
	        else
107
	            return true;
103
            rs.close();
104
            return false;
108 105
        }
109
        catch (Exception e)
110
        {
111
            e.printStackTrace();
112
        }
113
        return false;
114 106
    }
115 107

  
116 108
    /* (non-Javadoc)
117 109
     * @see com.iver.cit.gvsig.fmap.drivers.jdbc.GeometryIterator#next()
118 110
     */
119 111
    public IFeature next() throws SQLException {
120
        rs.next();
121 112
        byte[] data = rs.getBytes(1);	        
122 113
        geom = parser.parse(data);        
123 114
        for (int fieldId=2; fieldId <= numColumns; fieldId++ )

Also available in: Unified diff