All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.simpleflatmapper.jdbc.impl.getter.LongResultSetGetter Maven / Gradle / Ivy

package org.simpleflatmapper.jdbc.impl.getter;

import org.simpleflatmapper.converter.Context;
import org.simpleflatmapper.map.getter.ContextualGetter;
import org.simpleflatmapper.map.getter.LongContextualGetter;
import org.simpleflatmapper.reflect.Getter;
import org.simpleflatmapper.reflect.primitive.LongGetter;

import java.sql.ResultSet;
import java.sql.SQLException;

public final class LongResultSetGetter implements
		LongGetter,
		Getter,
		LongContextualGetter,
		ContextualGetter
{

	private final int column;

	public LongResultSetGetter(final int column) {
		this.column = column;
	}

	@Override
	public long getLong(final ResultSet target) throws SQLException {
		return target.getLong(column);
	}

	@Override
	public Long get(final ResultSet target) throws Exception {
		final long l = getLong(target);
		if (l == 0 && target.wasNull()) {
			return null;
		} else {
			return l;
		}
	}

	@Override
	public Long get(ResultSet resultSet, Context context) throws Exception {
		return get(resultSet);
	}

	@Override
	public long getLong(ResultSet resultSet, Context mappingContext) throws Exception {
		return getLong(resultSet);
	}


	@Override
    public String toString() {
        return "LongResultSetGetter{" +
                "property=" + column +
                '}';
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy