Commit 7f5889c9 by Rubén Ramírez

feat: [BibliotecaPersonal]: Añadida una función en la propia clase para añadir a favoritos

parent 0c90caed
package com.ujaen.tfg.mangaffinity.entidades;
import com.ujaen.tfg.mangaffinity.excepciones.NumeroMaximoFavoritos;
import jakarta.persistence.*;
import lombok.*;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@Entity
......@@ -23,7 +27,29 @@ public class BibliotecaPersonal {
@OneToMany(mappedBy = "bibliotecaPersonal")
private Set<BibliotecaPersonalRecurso> recursos = new HashSet<>();
@ElementCollection
@CollectionTable(name = "favoritos_usuario", joinColumns = @JoinColumn(name = "biblioteca_id"))
@Column(name = "recurso_id")
private List<Long> favoritos = new ArrayList<>();
public BibliotecaPersonal(Usuario usuario) {
this.usuario = usuario;
}
public void anadirFavorito(Long recursoId) {
if (favoritos.contains(recursoId)) return;
if (favoritos.size() >= 4) {
throw new NumeroMaximoFavoritos();
}
favoritos.add(recursoId);
}
public void eliminarFavorito(Long recursoId) {
favoritos.remove(recursoId);
}
public List<Long> obtenerFavoritos() {
return List.copyOf(favoritos);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment