Package es.mdef.gaip_libreria.invitados
Class InvitacionImpl
java.lang.Object
es.mdef.gaip_libreria.invitados.InvitacionImpl
- All Implemented Interfaces:
Invitacion
Implementación concreta de la interfaz
Invitacion
.
Esta clase representa una invitación que tiene un tipo de zona específico, un número máximo de invitados permitidos,
y un conjunto de invitados asociados a ella. La invitación también está relacionada con un conjunto de invitaciones por acto.-
Constructor Summary
ConstructorsConstructorDescriptionInvitacionImpl
(TipoDeZona tipoDeZona, int numeroMaximoInvitados, InvitacionesPorActo invitacionesPorActo) Constructor principal de la clase InvitacionImpl. -
Method Summary
Modifier and TypeMethodDescriptionvoid
agregarCoche
(Coche coche, boolean permitirExcederMaximo) Agrega un coche a la invitación, manteniendo la coherencia bidireccional.void
agregarInvitado
(Invitado invitado, boolean permitirExcederMaximo) Agrega un invitado a la invitación, manteniendo la coherencia bidireccional.void
agregarNumeroMaximoInvitado
(int cantidad) Aumenta el número máximo de invitados.Devuelve las invitaciones por acto asociadas a la invitación.void
quitarCoche
(Coche coche) Quita un coche de la invitación, rompiendo la relación bidireccional.void
quitarInvitado
(Invitado invitado) Quita un invitado de la invitación, rompiendo la relación bidireccional.void
quitarNumeroMaximoInvitado
(int cantidad) Reduce el número máximo de invitados.void
Establece los coches para esta invitación, manteniendo la coherencia bidireccional.void
setInvitacionesPorActo
(InvitacionesPorActo invitacionesPorActo) Establece la relación con las invitaciones por acto, manteniendo la coherencia bidireccional.void
setInvitados
(Set<Invitado> nuevosInvitados, boolean permitirExcederMaximo) Establece los invitados para esta invitación, manteniendo la coherencia bidireccional.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface es.mdef.gaip_libreria.invitados.Invitacion
getCoches, getInvitados, getNumeroMaximoInvitados, getTipoDeZona
-
Constructor Details
-
InvitacionImpl
public InvitacionImpl(TipoDeZona tipoDeZona, int numeroMaximoInvitados, InvitacionesPorActo invitacionesPorActo) Constructor principal de la clase InvitacionImpl.- Parameters:
tipoDeZona
- Define el tipo de zona asociada a la invitación.numeroMaximoInvitados
- Define el límite de invitados que pueden ser asociados a esta invitación.invitacionesPorActo
- Relación con las invitaciones por acto.
-
-
Method Details
-
getInvitacionesPorActo
Description copied from interface:Invitacion
Devuelve las invitaciones por acto asociadas a la invitación.- Specified by:
getInvitacionesPorActo
in interfaceInvitacion
- Returns:
- el objeto
InvitacionesPorActo
asociado.
-
setInvitacionesPorActo
Establece la relación con las invitaciones por acto, manteniendo la coherencia bidireccional.- Specified by:
setInvitacionesPorActo
in interfaceInvitacion
- Parameters:
invitacionesPorActo
- Las invitaciones por acto a asociar.
-
setInvitados
Establece los invitados para esta invitación, manteniendo la coherencia bidireccional.- Specified by:
setInvitados
in interfaceInvitacion
- Parameters:
nuevosInvitados
- Conjunto de nuevos invitados.permitirExcederMaximo
- indica si se permite exceder el número máximo de coches permitidos.
-
setCoches
Establece los coches para esta invitación, manteniendo la coherencia bidireccional.- Specified by:
setCoches
in interfaceInvitacion
- Parameters:
nuevosCoches
- Conjunto de nuevos invitados.permitirExcederMaximo
- indica si se permite exceder el número máximo de coches permitidos.
-
agregarInvitado
Agrega un invitado a la invitación, manteniendo la coherencia bidireccional.- Specified by:
agregarInvitado
in interfaceInvitacion
- Parameters:
invitado
- Invitado a agregar.permitirExcederMaximo
- indica si se permite exceder el número máximo de coches permitidos.- Throws:
IllegalArgumentException
- Si el invitado es nulo o si se ha alcanzado el número máximo de invitados.
-
quitarInvitado
Quita un invitado de la invitación, rompiendo la relación bidireccional.- Specified by:
quitarInvitado
in interfaceInvitacion
- Parameters:
invitado
- Invitado a quitar.
-
agregarNumeroMaximoInvitado
public void agregarNumeroMaximoInvitado(int cantidad) Aumenta el número máximo de invitados.- Specified by:
agregarNumeroMaximoInvitado
in interfaceInvitacion
- Parameters:
cantidad
- Cantidad a aumentar.- Throws:
IllegalArgumentException
- Si la cantidad es negativa.
-
quitarNumeroMaximoInvitado
public void quitarNumeroMaximoInvitado(int cantidad) Reduce el número máximo de invitados.- Specified by:
quitarNumeroMaximoInvitado
in interfaceInvitacion
- Parameters:
cantidad
- Cantidad a reducir.- Throws:
IllegalArgumentException
- Si la cantidad es negativa o si la reducción excedería el límite actual.
-
agregarCoche
Agrega un coche a la invitación, manteniendo la coherencia bidireccional.- Specified by:
agregarCoche
in interfaceInvitacion
- Parameters:
coche
- Coche a agregar.permitirExcederMaximo
- indica si se permite exceder el número máximo de coches permitidos.
-
quitarCoche
Quita un coche de la invitación, rompiendo la relación bidireccional.- Specified by:
quitarCoche
in interfaceInvitacion
- Parameters:
coche
- Coche a quitar.
-