/**
   * Metodo que localiza uma SugestaoDePontoDeEncontro atraves do ID
   *
   * @param idSugestao - Recebe uma String Id da sugestão
   * @param idCarona - Recebe uma String Id da sugestão
   * @return - Retorna uma sugestao localizada na carona que possui o IdCarona
   * @throws CaronaException - Retorna uma exceção caso nao exista carona com o Id passado.
   */
  public SugestaoDePontoDeEncontro getSugestaoId(String idSugestao, String idCarona)
      throws CaronaException {
    Carona caronaTemp = this.getCaronaId(idCarona);
    for (SugestaoDePontoDeEncontro sugestaoTemp : caronaTemp.getListaDeSugestoes()) {
      if (sugestaoTemp.getIdSugestao().equals(idSugestao)) {
        return sugestaoTemp;
      }
    }

    return null;
  }
  public String sugerirPontoEncontro(
      String pontos, Carona carona, String idSugestao, Usuario usuarioQueSugeriu)
      throws CaronaException, NumeroMaximoException {
    SugestaoDePontoDeEncontro sugestao =
        new SugestaoDePontoDeEncontro(idSugestao, usuarioQueSugeriu);

    String[] locais = pontos.split(";"); // sugestao de locais(ponto) de
    // encontro
    for (String local : locais) {
      if (!carona.getListaPontosDeEncontroPermitidos().contains(local)) {
        sugestao.getListaDeSugestaoDePontosDeEncontro().add(local);
      } else {
        throw new IllegalArgumentException("Ponto inválido");
      }
    }

    carona.getListaDeSugestoes().add(sugestao);
    return idSugestao;
  }
 public void responderSugestaoPontoEncontro(
     SugestaoDePontoDeEncontro sugestao, String pontos, Carona carona) throws CaronaException {
   String[] locais = pontos.split(";");
   for (String local : locais) {
     if (!carona.getListaPontosDeEncontroPermitidos().contains(local)) {
       sugestao.getlistaDeRespostasDePontosDeEncontro().add(local);
       carona.addPontoEncontroPermitido(local);
     } else {
       throw new IllegalArgumentException("Ponto inválido");
     }
   }
 }