/** * Añade a la base de datos una nueva referencia Si se necesita crea la entrada de la tabla de * vinos necesarea * * @param referencia */ @Override public void addReferencia(Referencia referencia) { List<Vino> vinos = vinoFacade.findAll(); boolean hayVino = false; for (Vino item : vinos) { if (item.getId() == (referencia.getVinoid().getId())) hayVino = true; } if (hayVino == false) vinoFacade.create(referencia.getVinoid()); referenciaFacade.create(referencia); // crear vino, puede hacerse en cascada }
/** * Devuelve un vino por el identificador dado * * @param id * @return el vino correspondiente */ @Override public Vino retrieveVino(String id) { List<Vino> vinos = vinoFacade.findAll(); for (Vino item : vinos) { if (item.getId().equals(id)) return item; } return null; }
/** * Devuelve la lista de vinos que tengan la categoría y el origen dados * * @param origen * @param categoria * @return lista de vinos */ @Override public List<Vino> getVinos(String origen, String categoria) { List<Vino> vinos = vinoFacade.findAll(); List<Vino> vinosBuscados = null; for (Vino item : vinos) { if (item.getIddenominacion() == Integer.parseInt(origen) & item.getCategoria().equals(categoria)) { vinosBuscados.add(item); } } return vinosBuscados; }
/** * Crea una nueva entrada en la tabla de vinos * * @param parameter vino a añadir a la tabla de Vinos */ @Override public void create(Vino parameter) { vinoFacade.create(parameter); }