public TemporaryPartialStreetEdge(
      StreetEdge parentEdge,
      StreetVertex v1,
      TemporarySplitterVertex v2,
      LineString geometry,
      I18NString name,
      double length) {
    super(parentEdge, v1, v2, geometry, name, length);

    if (v2.isEndVertex()) {
      endEdge = true;
    } else {
      throw new IllegalStateException("A temporary edge is directed towards a start vertex");
    }
  }
  public TemporaryPartialStreetEdge(
      StreetEdge parentEdge,
      TemporarySplitterVertex v1,
      StreetVertex v2,
      LineString geometry,
      I18NString name,
      double length) {
    super(parentEdge, v1, v2, geometry, name, length);

    if (v1.isEndVertex()) {
      throw new IllegalStateException("A temporary edge is directed away from an end vertex");
    } else {
      endEdge = false;
    }
  }