@Test public void testaGetCaronas() { Assert.assertTrue(usuario1.getCaronas().size() == 0); Assert.assertTrue(usuario2.getCaronas().size() == 0); Assert.assertTrue(usuario3.getCaronas().size() == 0); Assert.assertTrue(usuario4.getCaronas().size() == 0); }
/** * Metodo que retorna das as caronas do sistema * * @return - retorna uma List<Carona> com todas as caronas */ public List<Carona> getCaronas() { List<Carona> retorno = new LinkedList<Carona>(); for (Usuario UsuarioTemp : listaDeUsuarios) { retorno.addAll(UsuarioTemp.getCaronas()); } return retorno; }
/** * Metodo que localiza uma carona pelo seu ID * * @param idCarona - Recebe uma String idCarona * @return - retrorna uma Carona caso exista alguma com o ID passado */ public Carona localizaCaronaPorId(String idCarona) { for (Usuario usuarioTemp : listaDeUsuarios) { for (Carona caronaTemp : usuarioTemp.getCaronas()) { if (caronaTemp.getIdCarona().equals(idCarona)) { return caronaTemp; } } } return null; }
/** * Metodo que procura uma carona pelo seu ID * * @param idCarona - Recebe uma String ID * @return - Retorna uma Carona caso exista uma carona com o ID passado * @throws CaronaException - Lança exceção caso nao exista esse ID associado a uma carona */ public Carona getCaronaId(String idCarona) throws CaronaException { for (Usuario usuario : listaDeUsuarios) { for (Carona caronaTemp : usuario.getCaronas()) { if (caronaTemp.getIdCarona().equals(idCarona)) { return caronaTemp; } } } return null; }
/** * Metodo que retorna todas as Caronas cadastradas no sistema. * * @return - Retorna uma List<Carona> com todas as caronas cadastradas no sistema. */ public List<Carona> getTodasAsCaronas() { List<Carona> retorno = new LinkedList<Carona>(); for (Usuario usuario : listaDeUsuarios) { for (Carona caronaTemp : usuario.getCaronas()) { retorno.add(caronaTemp); } } return retorno; }
/** * Metodo que localiza uma carona que possua uma origem específica * * @param origem- Recebe uma String origem * @return - Retorna uma Carona que possua a origem especificada */ public List<Carona> localizaCaronaPorOrigem(String origem) { List<Carona> retorno = new LinkedList<Carona>(); for (Usuario UsuarioTemp : listaDeUsuarios) { for (Carona caronaTemp : UsuarioTemp.getCaronas()) { if (caronaTemp.getOrigem().equals(origem)) { retorno.add(caronaTemp); } } } return retorno; }
/** * Metodo que localiza uma carona que possua destino específico * * @param destino- Recebe uma String destino * @return - Retorna uma Carona que possua o destino especificado */ public List<Carona> localizaCaronaPorDestino(String destino) { List<Carona> retorno = new LinkedList<Carona>(); for (Usuario UsuarioTemp : listaDeUsuarios) { for (Carona caronaTemp : UsuarioTemp.getCaronas()) { if (caronaTemp.getDestino().equals(destino)) { retorno.add(caronaTemp); } } } return retorno; }
/** * Metodo que retorna uma lista com as Caronas Rachadas que possuem origem e destino passado como * parametro. * * @param origem - Recebe uma String origem * @param destino - Recebe uma String destino * @return - Retorna uma List<Carona> com as caronas Rachadas. */ public List<Carona> localizarCaronaRachada(String origem, String destino) { List<Carona> retorno = new LinkedList<Carona>(); for (Usuario usuarioTemp : listaDeUsuarios) { for (Carona caronaTemp : usuarioTemp.getCaronas()) { if (caronaTemp.getTipoCarona().equals(TiposCarona.RACHADACOMUM) || caronaTemp.getTipoCarona().equals(TiposCarona.RACHADAESCAPADA) || caronaTemp.getTipoCarona().equals(TiposCarona.RACHADAMUNICIPAL)) { if (caronaTemp.getOrigem().equals(origem) && caronaTemp.getDestino().equals(destino)) { retorno.add(caronaTemp); } } } } return retorno; }
/** * Metodo que localiza uma CaronaMunicipal através da CIDADE * * @param cidade - Recebe uma String cidade * @return - retorna uma List<Carona> com as carona municipais que possuem a Cidade passada * @throws CaronaException - Lança exceção caso nao exista essa cidade. */ public List<Carona> localizarCaronaMunicipal(String cidade) throws CaronaException { List<Carona> retorno = new LinkedList<Carona>(); boolean existeCidade = false; for (Usuario UsuarioTemp : listaDeUsuarios) { for (Carona caronaTemp : UsuarioTemp.getCaronas()) { if (caronaTemp.getTipoCarona().equals(TiposCarona.MUNICIPAL)) { if (((CaronaMunicipal) caronaTemp).getCidade().equals(cidade)) { existeCidade = true; retorno.add(caronaTemp); } } } } if (!existeCidade) { throw new CaronaException("Cidade inexistente"); } return retorno; }