public Optional apply()

in baremaps-core/src/main/java/org/apache/baremaps/openstreetmap/function/EntityToGeometryMapper.java [27:45]


  public Optional<Geometry> apply(Entity entity) {
    try {
      if (entity instanceof Node node) {
        return Optional.ofNullable(node.getGeometry());
      } else if (entity instanceof Way way) {
        return Optional.ofNullable(way.getGeometry());
      } else if (entity instanceof Relation relation) {
        return Optional.ofNullable(relation.getGeometry());
      } else if (entity instanceof Header header) {
        return Optional.empty();
      } else if (entity instanceof Bound bound) {
        return Optional.empty();
      } else {
        throw new StreamException("Unknown entity type.");
      }
    } catch (Exception e) {
      throw new StreamException(e);
    }
  }