java/sql-dk/src/main/java/info/globalcode/sql/dk/SQLCommandNumbered.java
author František Kučera <franta-hg@frantovo.cz>
Thu, 24 Oct 2019 21:43:08 +0200
branchv_0
changeset 250 aae5009bd0af
parent 238 4a1864c3e867
permissions -rw-r--r--
fix license version: GNU GPLv3
     1 /**
     2  * SQL-DK
     3  * Copyright © 2013 František Kučera (frantovo.cz)
     4  *
     5  * This program is free software: you can redistribute it and/or modify
     6  * it under the terms of the GNU General Public License as published by
     7  * the Free Software Foundation, version 3 of the License.
     8  *
     9  * This program is distributed in the hope that it will be useful,
    10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    12  * GNU General Public License for more details.
    13  *
    14  * You should have received a copy of the GNU General Public License
    15  * along with this program. If not, see <http://www.gnu.org/licenses/>.
    16  */
    17 package info.globalcode.sql.dk;
    18 
    19 import static info.globalcode.sql.dk.Functions.notNull;
    20 import java.sql.PreparedStatement;
    21 import java.sql.SQLException;
    22 import java.util.List;
    23 
    24 /**
    25  * Has ordinal/numbered parameters.
    26  *
    27  * @author Ing. František Kučera (frantovo.cz)
    28  */
    29 public class SQLCommandNumbered extends SQLCommand {
    30 
    31 	private List<? extends Parameter> parameters;
    32 
    33 	public SQLCommandNumbered(String query, List<? extends Parameter> parameters) {
    34 		super(query);
    35 		this.parameters = parameters;
    36 	}
    37 
    38 	@Override
    39 	public void parametrize(PreparedStatement ps) throws SQLException {
    40 		int i = 1;
    41 		for (Parameter p : notNull(parameters)) {
    42 			ps.setObject(i++, p.getValue(), p.getType().getCode());
    43 		}
    44 	}
    45 
    46 	@Override
    47 	public List<? extends Parameter> getParameters() {
    48 		return parameters;
    49 	}
    50 }