// This software is released into the Public Domain. See copying.txt for details. package org.openstreetmap.osmosis.apidb.v0_6.impl; import java.sql.ResultSet; import java.sql.SQLException; import org.openstreetmap.osmosis.core.database.RowMapperListener; import org.openstreetmap.osmosis.core.domain.v0_6.Entity; /** * Maps entity history result set rows into entity history objects. * * @param <T> * The type of entity to be processed. */ public class EntityHistoryRowMapper<T extends Entity> implements RowMapperListener<T> { private RowMapperListener<EntityHistory<T>> listener; /** * Creates a new instance. * * @param listener * The destination for result objects. */ public EntityHistoryRowMapper(RowMapperListener<EntityHistory<T>> listener) { this.listener = listener; } /** * {@inheritDoc} */ @Override public void process(T data, ResultSet resultSet) throws SQLException { boolean visible; EntityHistory<T> entityHistory; visible = resultSet.getBoolean("visible"); entityHistory = new EntityHistory<T>(data, visible); listener.process(entityHistory, resultSet); } }