public void compartirAV(long idAV, String nickname) { Usuario usu = usuarioDAO.buscarUsuario(nickname); AV av = avDAO.traerAV(idAV); List<Usuario> usuComp = av.getUsuariosCompartidos(); usuComp.add(usu); av.setUsuariosCompartidos(usuComp); List<AV> avsComp = usu.getAVcompartidos(); avsComp.add(av); usu.setAVcompartidos(avsComp); usuarioDAO.actualizarUsuario(usu); avDAO.actualizarAV(av); }
public long altaAV(String nombreAV, String usuarioCreador) throws NombreDeAVInvalido { if (!seguridad.Validacion.esAlfaNumerico(nombreAV)) throw new exceptions.NombreDeAVInvalido(); Usuario usu = usuarioDAO.buscarUsuario(usuarioCreador); if (usu != null) { if (!(this.existeAVusuario(nombreAV, usuarioCreador))) { AV av = new AV(nombreAV, usu, "skin-blue"); av.setUsuarioCreador(usu); // usu avDAO.altaAV(av); usu.addAV(av); usuarioDAO.actualizarUsuario(usu); return av.getIdAV(); } } return -1; }
public boolean existeAVusuario(String nombreAV, String usuarioCreador) { Usuario usu = usuarioDAO.buscarUsuario(usuarioCreador); if (usu != null) { List<AV> listaav = usu.getAVs(); for (AV i : listaav) { if (i.getNombreAV() == nombreAV) { return true; } } } return false; }
@Override public void eliminarAV(long idAV) throws Exception { AV av = avDAO.traerAV(idAV); String tenant = getTenant(idAV); if (tenant != null) { List<Usuario> usuarios = av.getUsuariosCompartidos(); for (Usuario usu : usuarios) { usu.removeAVCompartido(av); usuarioDAO.actualizarUsuario(usu); } Usuario usu = av.getUsuarioCreador(); usu.removeAV(av); usuarioDAO.actualizarUsuario(usu); avDAO.eliminarAV(tenant, av); } else { throw new Exception("No existe un AV con id: " + idAV); } }
@Override public DataAV traerAVPorNombre(String nombre, String nick) throws UsuarioNoEncontrado { Usuario usu = usuarioDAO.buscarUsuario(nick); if (usu == null) throw new exceptions.UsuarioNoEncontrado(); for (AV av : usu.getAVs()) { if (av.getNombreAV().equals(nombre)) { return av.getDataAV(); } } return null; }
@Override public void descompartirAV(long idAV, String nickUsuario) throws NoExisteElAV { AV av = avDAO.traerAV(idAV); if (av != null) { List<Usuario> compas = av.getUsuariosCompartidos(); Usuario compa = null; for (Usuario usu : compas) { if (usu.getNick().equals(nickUsuario)) { compa = usu; break; } } av.removeUsuarioCompartido(compa); compa.removeAVCompartido(av); avDAO.actualizarAV(av); usuarioDAO.actualizarUsuario(compa); } else { throw new exceptions.NoExisteElAV(); } }