Class ActoImpl

java.lang.Object
es.mdef.gaip_libreria.actos.ActoImpl
All Implemented Interfaces:
Acto

public class ActoImpl extends Object implements Acto
Clase que representa un acto específico con sus propiedades asociadas y las relaciones con otras entidades. Un acto puede tener múltiples anfitriones e invitados y está asociado a una instalación específica. Esta clase implementa la interfaz Acto.
  • Constructor Details

    • ActoImpl

      public ActoImpl()
      Constructor por defecto. Inicializa un acto con valores predeterminados.
    • ActoImpl

      public ActoImpl(String nombre, String descripcion, ZonedDateTime fecha, ZonedDateTime fechaLimiteRegistro, TipoDeActo tipoDeActo, Instalacion instalacion)
      Constructor parametrizado para inicializar un acto con nombre, descripción, fecha, fecha límite de registro y tipo del acto.
      Parameters:
      nombre - El nombre del acto.
      descripcion - Una descripción detallada del acto.
      fecha - La fecha y hora en que se llevará a cabo el acto.
      fechaLimiteRegistro - La fecha límite para el registro al acto.
      tipoDeActo - El tipo de acto. No puede ser nulo.
    • ActoImpl

      public ActoImpl(String nombre, String descripcion, ZonedDateTime fecha, ZonedDateTime fechaLimiteRegistro, EstadoActo estado, TipoDeActo tipoDeActo, Instalacion instalacion)
      Constructor parametrizado para inicializar un acto con nombre, descripción, fecha, fecha límite de registro, estado y tipo del acto.
      Parameters:
      nombre - El nombre del acto.
      descripcion - Una descripción detallada del acto.
      fecha - La fecha y hora en que se llevará a cabo el acto.
      fechaLimiteRegistro - La fecha límite para el registro al acto.
      estado - El estado actual del acto.
      tipoDeActo - El tipo de acto.
  • Method Details

    • setEstadoCreacion

      public void setEstadoCreacion(EstadoCreacion estadoCreacion)
      Establece el estado de creación del acto.
      Specified by:
      setEstadoCreacion in interface Acto
      Parameters:
      estadoCreacion - El nuevo EstadoCreacion a establecer para el acto.
    • setInstalacion

      public void setInstalacion(Instalacion instalacion)
      Asocia una instalación al acto. Si el acto ya estaba asociado a otra instalación, se elimina esa asociación previa. Establece la relación bidireccional entre el acto y la instalación.
      Specified by:
      setInstalacion in interface Acto
      Parameters:
      instalacion - La instalación a asociar con el acto. No puede ser nula.
    • setZonas

      public void setZonas(List<ZonaConfigurada> zonas)
      Establece las zonas configuradas para el acto y mantiene la coherencia bidireccional.
      Specified by:
      setZonas in interface Acto
      Parameters:
      zonas - El conjunto de zonas configuradas para el acto.
    • setAnfitriones

      public <T extends Anfitrion> void setAnfitriones(Set<T> anfitriones)
      Establece los anfitriones para el acto y mantiene la coherencia bidireccional.
      Specified by:
      setAnfitriones in interface Acto
      Parameters:
      anfitriones - El conjunto de anfitriones para el acto.
    • agregarAnfitrion

      public void agregarAnfitrion(Anfitrion anfitrion)
      Agrega un anfitrión al acto y establece la relación bidireccional entre el acto y el anfitrión.
      Specified by:
      agregarAnfitrion in interface Acto
      Parameters:
      anfitrion - El anfitrión a agregar al acto. No puede ser nulo.
      Throws:
      IllegalArgumentException - si el anfitrión es nulo.
    • quitarAnfitrion

      public void quitarAnfitrion(Anfitrion anfitrion)
      Elimina un anfitrión del acto y rompe la relación bidireccional entre el acto y el anfitrión.
      Specified by:
      quitarAnfitrion in interface Acto
      Parameters:
      anfitrion - El anfitrión a eliminar del acto. No puede ser nulo.
      Throws:
      IllegalArgumentException - si el anfitrión es nulo.
    • agregarZonaConfigurada

      public void agregarZonaConfigurada(ZonaConfigurada zona)
      Agrega una zona configurada al acto y establece la relación bidireccional entre el acto y la zona.
      Specified by:
      agregarZonaConfigurada in interface Acto
      Parameters:
      zona - La zona configurada a agregar al acto. No puede ser nula.
      Throws:
      IllegalArgumentException - si la zona es nula.
    • quitarZonaConfigurada

      public void quitarZonaConfigurada(ZonaConfigurada zona)
      Elimina una zona configurada del acto y rompe la relación bidireccional entre el acto y la zona.
      Specified by:
      quitarZonaConfigurada in interface Acto
      Parameters:
      zona - La zona configurada a eliminar del acto. No puede ser nula.
      Throws:
      IllegalArgumentException - si la zona es nula.
    • setInvitacionesPorActo

      public void setInvitacionesPorActo(Set<InvitacionesPorActo> invitacionesPorActo)
      Establece las invitaciones por acto para el anfitrión y mantiene la coherencia bidireccional.
      Specified by:
      setInvitacionesPorActo in interface Acto
      Parameters:
      invitacionesPorActo - Conjunto de invitaciones por acto.
    • agregarInvitacionesPorActo

      public void agregarInvitacionesPorActo(InvitacionesPorActo invitacionPorActo)
      Agrega una invitación por acto al anfitrión y establece la relación bidireccional.
      Specified by:
      agregarInvitacionesPorActo in interface Acto
      Parameters:
      invitacionPorActo - La invitación por acto a agregar.
    • quitarInvitacionesPorActo

      public void quitarInvitacionesPorActo(InvitacionesPorActo invitacionPorActo)
      Elimina una invitación por acto y rompe la relación bidireccional.
      Specified by:
      quitarInvitacionesPorActo in interface Acto
      Parameters:
      invitacionPorActo - La invitación por acto a eliminar.
    • agregarAnfitriones

      public <T extends Anfitrion> void agregarAnfitriones(Collection<T> anfitriones)