boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: mutable_bitField0_ |= 0x00000001; dimensionSize_.add(input.readInt32()); break; int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) { dimensionSize_ = new java.util.ArrayList<>(); mutable_bitField0_ |= 0x00000001; while (input.getBytesUntilLimit() > 0) { dimensionSize_.add(input.readInt32()); input.popLimit(limit); break; mutable_bitField0_ |= 0x00000002; factorTable_.add(input.readMessage(edu.stanford.nlp.loglinear.model.proto.ConcatVectorProto.ConcatVector.PARSER, extensionRegistry)); break;
/** Read an embedded message field value from the stream. */ public <T extends MessageLite> T readMessage( final Parser<T> parser, final ExtensionRegistryLite extensionRegistry) throws IOException { int length = readRawVarint32(); if (recursionDepth >= recursionLimit) { throw InvalidProtocolBufferException.recursionLimitExceeded(); } final int oldLimit = pushLimit(length); ++recursionDepth; T result = parser.parsePartialFrom(this, extensionRegistry); checkLastTagWas(0); --recursionDepth; popLimit(oldLimit); return result; }
return; case OsmandOdb.TransportRouteSchedule.TRIPINTERVALS_FIELD_NUMBER: sizeL = codedIS.readRawVarint32(); old = codedIS.pushLimit(sizeL); while (codedIS.getBytesUntilLimit() > 0) { interval = codedIS.readRawVarint32(); schedule.tripIntervals.add(interval); codedIS.popLimit(old); break; case OsmandOdb.TransportRouteSchedule.AVGSTOPINTERVALS_FIELD_NUMBER: sizeL = codedIS.readRawVarint32(); old = codedIS.pushLimit(sizeL); while (codedIS.getBytesUntilLimit() > 0) { interval = codedIS.readRawVarint32(); schedule.avgStopIntervals.add(interval); codedIS.popLimit(old); break; case OsmandOdb.TransportRouteSchedule.AVGWAITINTERVALS_FIELD_NUMBER: sizeL = codedIS.readRawVarint32(); old = codedIS.pushLimit(sizeL); while (codedIS.getBytesUntilLimit() > 0) { interval = codedIS.readRawVarint32(); schedule.avgWaitIntervals.add(interval); codedIS.popLimit(old); break;
public List<RouteSubregion> loadInteresectedPoints(SearchRequest<RouteDataObject> req, List<RouteSubregion> list, List<RouteSubregion> toLoad) throws IOException { for (RouteSubregion rs : list) { if (req.intersects(rs.left, rs.top, rs.right, rs.bottom)) { if (rs.subregions == null) { codedIS.seek(rs.filePointer); int old = codedIS.pushLimit(rs.length); readRouteTree(rs, null, req.contains(rs.left, rs.top, rs.right, rs.bottom) ? -1 : 1, false); codedIS.popLimit(old); } searchRouteRegionTree(req, rs.subregions, toLoad); if (rs.shiftToData != 0) { toLoad.add(rs); } } } return toLoad; }
boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: mutable_bitField0_ |= 0x00000001; jobIds_.add(input.readInt64()); break; int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) { jobIds_ = new java.util.ArrayList<java.lang.Long>(); mutable_bitField0_ |= 0x00000001; while (input.getBytesUntilLimit() > 0) { jobIds_.add(input.readInt64()); input.popLimit(limit); break;
private void readPoiNameIndexData(TIntLongHashMap offsets, SearchRequest<Amenity> req) throws IOException { while (true) { int t = codedIS.readTag(); int tag = WireFormat.getTagFieldNumber(t); switch (tag) { case 0: return; case OsmAndPoiNameIndexData.ATOMS_FIELD_NUMBER: int len = codedIS.readRawVarint32(); int oldLim = codedIS.pushLimit(len); readPoiNameIndexDataAtom(offsets, req); codedIS.popLimit(oldLim); break; default: skipUnknownField(t); break; } } }
public List<RouteSubregion> searchRouteRegionTree(SearchRequest<?> req, List<RouteSubregion> list, List<RouteSubregion> toLoad) throws IOException { for (RouteSubregion rs : list) { if (req.intersects(rs.left, rs.top, rs.right, rs.bottom)) { if (rs.subregions == null) { codedIS.seek(rs.filePointer); int old = codedIS.pushLimit(rs.length); readRouteTree(rs, null, req.contains(rs.left, rs.top, rs.right, rs.bottom) ? -1 : 1, false); codedIS.popLimit(old); } searchRouteRegionTree(req, rs.subregions, toLoad); if (rs.shiftToData != 0) { toLoad.add(rs); } } } return toLoad; }
/** Read an embedded message field value from the stream. */ public void readMessage(final MessageLite.Builder builder, final ExtensionRegistryLite extensionRegistry) throws IOException { final int length = readRawVarint32(); if (recursionDepth >= recursionLimit) { throw InvalidProtocolBufferException.recursionLimitExceeded(); } final int oldLimit = pushLimit(length); ++recursionDepth; builder.mergeFrom(this, extensionRegistry); checkLastTagWas(0); --recursionDepth; popLimit(oldLimit); }
boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: mutable_bitField0_ |= 0x00000001; pinnedFileIds_.add(input.readInt64()); break; int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) { pinnedFileIds_ = new java.util.ArrayList<java.lang.Long>(); mutable_bitField0_ |= 0x00000001; while (input.getBytesUntilLimit() > 0) { pinnedFileIds_.add(input.readInt64()); input.popLimit(limit); break;
break; case OsmandOdb.OsmAndPoiIndex.BOUNDARIES_FIELD_NUMBER: length = codedIS.readRawVarint32(); oldLimit = codedIS.pushLimit(length); readPoiBoundariesIndex(region); codedIS.popLimit(oldLimit); break; case OsmandOdb.OsmAndPoiIndex.CATEGORIESTABLE_FIELD_NUMBER: if (!readCategories) { codedIS.skipRawBytes(codedIS.getBytesUntilLimit()); return; length = codedIS.readRawVarint32(); oldLimit = codedIS.pushLimit(length); readCategory(region); codedIS.popLimit(oldLimit); break; case OsmandOdb.OsmAndPoiIndex.SUBTYPESTABLE_FIELD_NUMBER: if (!readCategories) { codedIS.skipRawBytes(codedIS.getBytesUntilLimit()); return; length = codedIS.readRawVarint32(); oldLimit = codedIS.pushLimit(length); readSubtypes(region); codedIS.popLimit(oldLimit); break; case OsmandOdb.OsmAndPoiIndex.BOXES_FIELD_NUMBER: codedIS.skipRawBytes(codedIS.getBytesUntilLimit());
public List<RouteDataObject> loadRouteRegionData(RouteSubregion rs) throws IOException { TLongArrayList idMap = new TLongArrayList(); TLongObjectHashMap<RestrictionInfo> restrictionMap = new TLongObjectHashMap<RestrictionInfo>(); if (rs.dataObjects == null) { codedIS.seek(rs.filePointer + rs.shiftToData); int limit = codedIS.readRawVarint32(); int oldLimit = codedIS.pushLimit(limit); readRouteTreeData(rs, idMap, restrictionMap); codedIS.popLimit(oldLimit); } List<RouteDataObject> res = rs.dataObjects; rs.dataObjects = null; return res; }
boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: mutable_bitField0_ |= 0x00000001; tiers_.add(input.readInt64()); break; int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) { tiers_ = new java.util.ArrayList<java.lang.Long>(); mutable_bitField0_ |= 0x00000001; while (input.getBytesUntilLimit() > 0) { tiers_.add(input.readInt64()); input.popLimit(limit); break;
private void readSubtypes(PoiRegion region) throws IOException { while (true) { int outT = codedIS.readTag(); int outTag = WireFormat.getTagFieldNumber(outT); switch (outTag) { return; case OsmandOdb.OsmAndSubtypesTable.SUBTYPES_FIELD_NUMBER: int length = codedIS.readRawVarint32(); int oldLimit = codedIS.pushLimit(length); PoiSubType st = new PoiSubType(); cycle: while(true){ int inT = codedIS.readTag(); int inTag = WireFormat.getTagFieldNumber(inT); switch (inTag) { st.possibleValues = new ArrayList<String>(); st.possibleValues.add(codedIS.readString().intern()); break; case OsmandOdb.OsmAndPoiSubtype.ISTEXT_FIELD_NUMBER: region.subTypes.add(st); codedIS.popLimit(oldLimit); break; default:
public int preloadStreets(City c, SearchRequest<Street> resultMatcher) throws IOException { AddressRegion reg; try { reg = checkAddressIndex(c.getFileOffset()); } catch (IllegalArgumentException e) { throw new IOException(e.getMessage() + " while reading " + c + " (id: " + c.getId() + ")"); } codedIS.seek(c.getFileOffset()); int size = codedIS.readRawVarint32(); int old = codedIS.pushLimit(size); addressAdapter.readCityStreets(resultMatcher, c, reg.attributeTagsTable); codedIS.popLimit(old); return size; }
boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: mutable_bitField0_ |= 0x00000002; blockIds_.add(input.readInt64()); break; int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) { blockIds_ = new java.util.ArrayList<java.lang.Long>(); mutable_bitField0_ |= 0x00000002; while (input.getBytesUntilLimit() > 0) { blockIds_.add(input.readInt64()); input.popLimit(limit); break;
protected void readCities(List<City> cities, SearchRequest<City> resultMatcher, StringMatcher matcher, List<String> additionalTagsTable) throws IOException { while (true) { int t = codedIS.readTag(); int tag = WireFormat.getTagFieldNumber(t); switch (tag) { case 0: return; case CitiesIndex.CITIES_FIELD_NUMBER: int fp = codedIS.getTotalBytesRead(); int length = codedIS.readRawVarint32(); int oldLimit = codedIS.pushLimit(length); City c = readCityHeader(new DefaultCityMatcher(matcher), fp, additionalTagsTable); if (c != null) { if (resultMatcher == null || resultMatcher.publish(c)) { cities.add(c); } } codedIS.popLimit(oldLimit); if (resultMatcher != null && resultMatcher.isCancelled()) { codedIS.skipRawBytes(codedIS.getBytesUntilLimit()); } break; default: skipUnknownField(t); break; } } }
public void loadRouteRegionData(List<RouteSubregion> toLoad, ResultMatcher<RouteDataObject> matcher) throws IOException { Collections.sort(toLoad, new Comparator<RouteSubregion>() { @Override public int compare(RouteSubregion o1, RouteSubregion o2) { int p1 = o1.filePointer + o1.shiftToData; int p2 = o2.filePointer + o2.shiftToData; return p1 == p2 ? 0 : (p1 < p2 ? -1 : 1); } }); TLongArrayList idMap = new TLongArrayList(); TLongObjectHashMap<RestrictionInfo> restrictionMap = new TLongObjectHashMap<RestrictionInfo>(); for (RouteSubregion rs : toLoad) { if (rs.dataObjects == null) { codedIS.seek(rs.filePointer + rs.shiftToData); int limit = codedIS.readRawVarint32(); int oldLimit = codedIS.pushLimit(limit); readRouteTreeData(rs, idMap, restrictionMap); codedIS.popLimit(oldLimit); } for (RouteDataObject ro : rs.dataObjects) { if (ro != null) { matcher.publish(ro); } } // free objects rs.dataObjects = null; } }
boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: mutable_bitField0_ |= 0x00000001; blockIds_.add(input.readInt64()); break; int length = input.readRawVarint32(); int limit = input.pushLimit(length); if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) { blockIds_ = new java.util.ArrayList<java.lang.Long>(); mutable_bitField0_ |= 0x00000001; while (input.getBytesUntilLimit() > 0) { blockIds_.add(input.readInt64()); input.popLimit(limit); break;
private MapRoot readMapLevel(MapRoot root) throws IOException { while (true) { int t = codedIS.readTag(); int tag = WireFormat.getTagFieldNumber(t); switch (tag) { int oldLimit = codedIS.pushLimit(r.length); readMapTreeBounds(r, root.left, root.right, root.top, root.bottom); root.trees.add(r); codedIS.popLimit(oldLimit); codedIS.skipRawBytes(codedIS.getBytesUntilLimit()); break; default:
public void preloadBuildings(Street s, SearchRequest<Building> resultMatcher) throws IOException { AddressRegion reg = checkAddressIndex(s.getFileOffset()); codedIS.seek(s.getFileOffset()); int size = codedIS.readRawVarint32(); int old = codedIS.pushLimit(size); City city = s.getCity(); addressAdapter.readStreet(s, resultMatcher, true, 0, 0, city != null && city.isPostcode() ? city.getName() : null, reg.attributeTagsTable); codedIS.popLimit(old); }