protected long getOsmIdentifier() { return this.relation.getOsmIdentifier(); }
@Override protected Optional<CheckFlag> flag(final AtlasObject object) { final Optional<CheckFlag> result; final Relation relation = (Relation) object; if (!TurnRestriction.from(relation).isPresent()) { final Set<AtlasObject> members = relation.members().stream() .map(RelationMember::getEntity).collect(Collectors.toSet()); result = Optional.of(createFlag(members, this.getLocalizedInstruction(0, relation.getOsmIdentifier()))); } else { result = Optional.empty(); } return result; }
@Override public LocationIterableProperties toGeoJsonBuildingBlock() { final Map<String, String> tags = getTags(); tags.put("identifier", String.valueOf(getIdentifier())); tags.put("osmIdentifier", String.valueOf(getOsmIdentifier())); tags.put("itemType", String.valueOf(getType())); tags.put("relation", this.toSimpleString()); final Optional<String> shardName = getAtlas().metaData().getShardName(); shardName.ifPresent(shard -> tags.put("shard", shard)); return new GeoJsonBuilder.LocationIterableProperties(bounds().center(), tags); }
final Rectangle mergedBounds = Rectangle.forLocated(thisReference, thatReference); final Long mergedOsmRelationIdentifier = mergedMember("osmRelationIdentifier", thisReference, thatReference, entity -> ((Relation) entity).getOsmIdentifier(), Optional.empty()); final Set<Long> mergedAllRelationsWithSameOsmIdentifierSet = mergedMember(
@Override protected Optional<CheckFlag> flag(final AtlasObject object) { final Relation relation = (Relation) object; final RelationMemberList members = relation.members(); // If the number of members in the relation is 1 if (members.size() == 1) { if (members.get(0).getEntity().getType().equals(ItemType.RELATION)) { return Optional.of(createFlag(getRelationMembers((Relation) object), this.getLocalizedInstruction(2, relation.getOsmIdentifier(), members.get(0).getEntity().getOsmIdentifier()))); } // If the relation is a multi-polygon, if (relation.isMultiPolygon()) { return Optional.of(createFlag(getRelationMembers((Relation) object), this.getLocalizedInstruction(1, relation.getOsmIdentifier()))); } return Optional.of(createFlag(getRelationMembers((Relation) object), this.getLocalizedInstruction(0, relation.getOsmIdentifier()))); } return Optional.empty(); }
relation.getOsmIdentifier(), viaNodeCount);
this.builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), changeItem.getRelationBean().get(), changeItem.getTags());
rebuilder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), bean, relation.getTags());
this.getBuilder().addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), bean, relation.getTags());
ItemType.forEntity(validMember.getEntity()))); builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), structure, relation.getTags()); ItemType.forEntity(validMember.getEntity()))); builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), structure, relation.getTags());
validMember.getEntity().getIdentifier(), validMember.getRole(), ItemType.forEntity(validMember.getEntity()))); builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), structure, relation.getTags());
validMember.getEntity().getIdentifier(), validMember.getRole(), ItemType.forEntity(validMember.getEntity()))); builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), structure, relation.getTags());
validMember.getEntity().getIdentifier(), validMember.getRole(), ItemType.forEntity(validMember.getEntity()))); builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), structure, relation.getTags());
builder.addRelation(relation.getIdentifier(), relation.getOsmIdentifier(), bean, relation.getTags());
relation.members().forEach(member -> bean.addItem(member.getEntity().getIdentifier(), member.getRole(), member.getEntity().getType())); builder.addRelation(relationIdentifier, relation.getOsmIdentifier(), bean, relation.getTags());