// This software is released into the Public Domain. See copying.txt for details. package org.openstreetmap.osmosis.pgsnapshot.v0_6.impl; import java.sql.ResultSet; import java.sql.SQLException; import org.openstreetmap.osmosis.core.database.DbOrderedFeature; import org.openstreetmap.osmosis.core.domain.v0_6.RelationMember; import org.springframework.jdbc.core.RowMapper; /** * Maps database rows into relation member database objects. * * @author Brett Henderson */ public class RelationMemberRowMapper implements RowMapper<DbOrderedFeature<RelationMember>> { private MemberTypeValueMapper memberTypeValueMapper; /** * Creates a new instance. */ public RelationMemberRowMapper() { memberTypeValueMapper = new MemberTypeValueMapper(); } /** * {@inheritDoc} */ @Override public DbOrderedFeature<RelationMember> mapRow(ResultSet rs, int rowNumber) throws SQLException { return new DbOrderedFeature<RelationMember>( rs.getLong("entity_id"), new RelationMember( rs.getLong("member_id"), memberTypeValueMapper.getEntityType(rs.getString("member_type")), rs.getString("member_role") ), rs.getInt("sequence_id") ); } }