@Override public void writeBegin() throws IOException { LOG.info("Writing PBF format..."); // Write out a header block Osmformat.HeaderBlock.Builder builder = Osmformat.HeaderBlock.newBuilder(); builder.addRequiredFeatures("DenseNodes").setWritingprogram("Vanilla Extract").build(); if (timestamp > 0) { builder.setOsmosisReplicationTimestamp(timestamp); } writeOneBlob(builder.build()); // Start another thread that will handle compression and writing in parallel. writerThread = new Thread(this); writerThread.start(); }
BuildTestFile(String name, String compress) throws IOException { output = new BlockOutputStream(new FileOutputStream(name)); output.setCompress(compress); HeaderBlock.Builder b = HeaderBlock.newBuilder(); b.addRequiredFeatures("OsmSchema-V0.6").addRequiredFeatures("DenseNodes").setSource("QuickBrownFox"); output.write(FileBlock.newInstance("OSMHeader",b.build().toByteString(),null)); }
return new Builder();
/** Write the header fields that are always needed. * * @param headerblock Incomplete builder to complete and write. * */ public void finishHeader(Osmformat.HeaderBlock.Builder headerblock) { headerblock.setWritingprogram(OsmosisConstants.VERSION); headerblock.addRequiredFeatures("OsmSchema-V0.6"); if (useDense) { headerblock.addRequiredFeatures("DenseNodes"); } Osmformat.HeaderBlock message = headerblock.build(); try { output.write(FileBlock.newInstance("OSMHeader", message .toByteString(), null)); } catch (IOException e) { throw new OsmosisRuntimeException("Unable to write OSM header.", e); } headerWritten = true; }
/** * <pre> * From the bbox field. * </pre> * * <code>optional string source = 17;</code> */ public Builder setSource( java.lang.String value) { copyOnWrite(); instance.setSource(value); return this; } /**
/** * <pre> * Additional tags to aid in parsing this dataset * </pre> * * <code>repeated string required_features = 4;</code> */ public Builder setRequiredFeatures( int index, java.lang.String value) { copyOnWrite(); instance.setRequiredFeatures(index, value); return this; } /**
/** * <pre> * replication base URL (from Osmosis' configuration.txt file) * </pre> * * <code>optional string osmosis_replication_base_url = 34;</code> */ public Builder setOsmosisReplicationBaseUrl( java.lang.String value) { copyOnWrite(); instance.setOsmosisReplicationBaseUrl(value); return this; } /**
/** * <pre> * replication timestamp, expressed in seconds since the epoch, * otherwise the same value as in the "timestamp=..." field * in the state.txt file used by Osmosis * </pre> * * <code>optional int64 osmosis_replication_timestamp = 32;</code> */ public Builder clearOsmosisReplicationTimestamp() { copyOnWrite(); instance.clearOsmosisReplicationTimestamp(); return this; }
/** * <pre> * Additional tags to aid in parsing this dataset * </pre> * * <code>repeated string required_features = 4;</code> */ public Builder addAllRequiredFeatures( java.lang.Iterable<java.lang.String> values) { copyOnWrite(); instance.addAllRequiredFeatures(values); return this; } /**
/** * <pre> * replication sequence number (sequenceNumber in state.txt) * </pre> * * <code>optional int64 osmosis_replication_sequence_number = 33;</code> */ public Builder setOsmosisReplicationSequenceNumber(long value) { copyOnWrite(); instance.setOsmosisReplicationSequenceNumber(value); return this; } /**
/** * <pre> * From the bbox field. * </pre> * * <code>optional string source = 17;</code> */ public Builder setSourceBytes( com.google.protobuf.ByteString value) { copyOnWrite(); instance.setSourceBytes(value); return this; }
/** * <pre> * From the bbox field. * </pre> * * <code>optional string source = 17;</code> */ public Builder clearSource() { copyOnWrite(); instance.clearSource(); return this; } /**
/** * <pre> * Additional tags to aid in parsing this dataset * </pre> * * <code>repeated string required_features = 4;</code> */ public Builder addRequiredFeatures( java.lang.String value) { copyOnWrite(); instance.addRequiredFeatures(value); return this; } /**
private void processBounds(Bound entity) { Osmformat.HeaderBlock.Builder headerblock = Osmformat.HeaderBlock .newBuilder(); Osmformat.HeaderBBox.Builder bbox = Osmformat.HeaderBBox.newBuilder(); bbox.setLeft(mapRawDegrees(entity.getLeft())); bbox.setBottom(mapRawDegrees(entity.getBottom())); bbox.setRight(mapRawDegrees(entity.getRight())); bbox.setTop(mapRawDegrees(entity.getTop())); headerblock.setBbox(bbox); if (entity.getOrigin() != null) { headerblock.setSource(entity.getOrigin()); } finishHeader(headerblock); }
/** * <pre> * replication timestamp, expressed in seconds since the epoch, * otherwise the same value as in the "timestamp=..." field * in the state.txt file used by Osmosis * </pre> * * <code>optional int64 osmosis_replication_timestamp = 32;</code> */ public Builder setOsmosisReplicationTimestamp(long value) { copyOnWrite(); instance.setOsmosisReplicationTimestamp(value); return this; } /**
/** * <pre> * replication base URL (from Osmosis' configuration.txt file) * </pre> * * <code>optional string osmosis_replication_base_url = 34;</code> */ public Builder setOsmosisReplicationBaseUrlBytes( com.google.protobuf.ByteString value) { copyOnWrite(); instance.setOsmosisReplicationBaseUrlBytes(value); return this; }
/** * <pre> * replication base URL (from Osmosis' configuration.txt file) * </pre> * * <code>optional string osmosis_replication_base_url = 34;</code> */ public Builder clearOsmosisReplicationBaseUrl() { copyOnWrite(); instance.clearOsmosisReplicationBaseUrl(); return this; } /**
/** * <pre> * Additional tags to aid in parsing this dataset * </pre> * * <code>repeated string required_features = 4;</code> */ public Builder clearRequiredFeatures() { copyOnWrite(); instance.clearRequiredFeatures(); return this; } /**
/** * <code>optional string writingprogram = 16;</code> */ public Builder clearWritingprogram() { copyOnWrite(); instance.clearWritingprogram(); return this; } /**
/** * <code>optional string writingprogram = 16;</code> */ public Builder setWritingprogram( java.lang.String value) { copyOnWrite(); instance.setWritingprogram(value); return this; } /**