ResultGetterImpl.java
/*
* Copyright 2004-2022 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.ibatis.sqlmap.engine.type;
import com.ibatis.sqlmap.client.extensions.ResultGetter;
import java.math.BigDecimal;
import java.net.URL;
import java.sql.*;
import java.util.Calendar;
import java.util.Map;
/**
* A ResultGetter implementation.
*/
public class ResultGetterImpl implements ResultGetter {
/** The rs. */
private ResultSet rs;
/** The name. */
private String name;
/** The index. */
private int index;
/**
* Creates an instance for a PreparedStatement and column index.
*
* @param resultSet
* - the result set
* @param columnIndex
* - the column index
*/
public ResultGetterImpl(ResultSet resultSet, int columnIndex) {
this.rs = resultSet;
this.index = columnIndex;
}
/**
* Creates an instance for a PreparedStatement and column name.
*
* @param resultSet
* - the result set
* @param columnName
* - the column index
*/
public ResultGetterImpl(ResultSet resultSet, String columnName) {
this.rs = resultSet;
this.name = columnName;
}
public Array getArray() throws SQLException {
if (name != null) {
return rs.getArray(name);
} else {
return rs.getArray(index);
}
}
public BigDecimal getBigDecimal() throws SQLException {
if (name != null) {
return rs.getBigDecimal(name);
} else {
return rs.getBigDecimal(index);
}
}
public Blob getBlob() throws SQLException {
if (name != null) {
return rs.getBlob(name);
} else {
return rs.getBlob(index);
}
}
public boolean getBoolean() throws SQLException {
if (name != null) {
return rs.getBoolean(name);
} else {
return rs.getBoolean(index);
}
}
public byte getByte() throws SQLException {
if (name != null) {
return rs.getByte(name);
} else {
return rs.getByte(index);
}
}
public byte[] getBytes() throws SQLException {
if (name != null) {
return rs.getBytes(name);
} else {
return rs.getBytes(index);
}
}
public Clob getClob() throws SQLException {
if (name != null) {
return rs.getClob(name);
} else {
return rs.getClob(index);
}
}
public Date getDate() throws SQLException {
if (name != null) {
return rs.getDate(name);
} else {
return rs.getDate(index);
}
}
public Date getDate(Calendar cal) throws SQLException {
if (name != null) {
return rs.getDate(name, cal);
} else {
return rs.getDate(index, cal);
}
}
public double getDouble() throws SQLException {
if (name != null) {
return rs.getDouble(name);
} else {
return rs.getDouble(index);
}
}
public float getFloat() throws SQLException {
if (name != null) {
return rs.getFloat(name);
} else {
return rs.getFloat(index);
}
}
public int getInt() throws SQLException {
if (name != null) {
return rs.getInt(name);
} else {
return rs.getInt(index);
}
}
public long getLong() throws SQLException {
if (name != null) {
return rs.getLong(name);
} else {
return rs.getLong(index);
}
}
public Object getObject() throws SQLException {
if (name != null) {
return rs.getObject(name);
} else {
return rs.getObject(index);
}
}
public Object getObject(Map map) throws SQLException {
if (name != null) {
return rs.getObject(name, map);
} else {
return rs.getObject(index, map);
}
}
public Ref getRef() throws SQLException {
if (name != null) {
return rs.getRef(name);
} else {
return rs.getRef(index);
}
}
public short getShort() throws SQLException {
if (name != null) {
return rs.getShort(name);
} else {
return rs.getShort(index);
}
}
public String getString() throws SQLException {
if (name != null) {
return rs.getString(name);
} else {
return rs.getString(index);
}
}
public Time getTime() throws SQLException {
if (name != null) {
return rs.getTime(name);
} else {
return rs.getTime(index);
}
}
public Time getTime(Calendar cal) throws SQLException {
if (name != null) {
return rs.getTime(name);
} else {
return rs.getTime(index);
}
}
public Timestamp getTimestamp() throws SQLException {
if (name != null) {
return rs.getTimestamp(name);
} else {
return rs.getTimestamp(index);
}
}
public Timestamp getTimestamp(Calendar cal) throws SQLException {
if (name != null) {
return rs.getTimestamp(name, cal);
} else {
return rs.getTimestamp(index, cal);
}
}
public URL getURL() throws SQLException {
if (name != null) {
return rs.getURL(name);
} else {
return rs.getURL(index);
}
}
public boolean wasNull() throws SQLException {
return rs.wasNull();
}
public ResultSet getResultSet() {
return rs;
}
public int getColumnIndex() {
return index;
}
public String getColumnName() {
return name;
}
}