/** * Creates a new instance. */ public NodeMapper() { pointBuilder = new PointBuilder(); }
/** * {@inheritDoc} */ @Override public int populateEntityParameters(PreparedStatement statement, int initialIndex, Node node) { int prmIndex; // Populate the entity level parameters. prmIndex = populateCommonEntityParameters(statement, initialIndex, node); try { // Set the node level parameters. statement.setObject( prmIndex++, new PGgeometry(pointBuilder.createPoint(node.getLatitude(), node.getLongitude()))); } catch (SQLException e) { throw new OsmosisRuntimeException( "Unable to set a prepared statement parameter for node " + node.getId() + ".", e); } return prmIndex; } }
/** * {@inheritDoc} */ public void process(NodeContainer nodeContainer) { Node node; node = nodeContainer.getEntity(); nodeWriter.writeField(node.getId()); nodeWriter.writeField(node.getVersion()); nodeWriter.writeField(node.getUser().getId()); nodeWriter.writeField(node.getTimestamp()); nodeWriter.writeField(node.getChangesetId()); nodeWriter.writeField(pointBuilder.createPoint(node.getLatitude(), node.getLongitude())); nodeWriter.endRecord(); for (Tag tag : node.getTags()) { nodeTagWriter.writeField(node.getId()); nodeTagWriter.writeField(tag.getKey()); nodeTagWriter.writeField(tag.getValue()); nodeTagWriter.endRecord(); } if (enableBboxBuilder || enableLinestringBuilder) { wayGeometryBuilder.addNodeLocation(node); } }
relationMemberWriter = writerContainer.add(new CopyFileWriter(copyFileset.getRelationMemberFile())); pointBuilder = new PointBuilder(); wayGeometryBuilder = new WayGeometryBuilder(storeType); memberTypeValueMapper = new MemberTypeValueMapper();