Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.db / org.gvsig.fmap.dal.db.jdbc / src / main / java / org / gvsig / fmap / dal / store / jdbc2 / spi / JDBCSQLBuilderBase.java @ 43020

History | View | Annotate | Download (1.09 KB)

1

    
2
package org.gvsig.fmap.dal.store.jdbc2.spi;
3

    
4
import java.sql.PreparedStatement;
5
import java.util.ArrayList;
6
import java.util.List;
7
import org.gvsig.fmap.dal.feature.spi.FeatureProvider;
8
import org.gvsig.fmap.dal.feature.spi.SQLBuilderBase;
9
import org.gvsig.fmap.dal.store.jdbc2.JDBCUtils;
10

    
11

    
12
public class JDBCSQLBuilderBase extends SQLBuilderBase {
13

    
14
    public JDBCSQLBuilderBase() {
15
        super();
16
    }
17

    
18
    public void setParameters(PreparedStatement st, FeatureProvider feature) {
19
        try {
20
            
21
            List<Object> values = new ArrayList<>();
22
            for (Parameter parameter : this.getParameters()) {
23
                if( parameter.is_constant() ) {
24
                    values.add(parameter.getValue());
25
                } else {
26
                    String name = parameter.getName();
27
                    values.add(feature.get(name));
28
                }
29
            }
30
            JDBCUtils.setObjects(st, values, this.geometry_support_type());
31
        } catch (Exception ex) {
32
            throw new RuntimeException("Can't set parameters to prepared statement", ex);
33
        }
34
    }
35

    
36
}
37