Interface Anfitrion
- All Superinterfaces:
Comparable<Anfitrion>
,Persona
- All Known Implementing Classes:
AnfitrionImpl
Interfaz que define las características y comportamientos específicos de un anfitrión.
Un anfitrión es una entidad capaz de invitar a personas a diversos actos, y está vinculado
a una unidad de formación. Gestiona un conjunto de invitaciones extendidas para cada acto.
Esta interfaz extiende a Persona
, heredando sus propiedades y comportamientos.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
agregarActo
(Acto acto) Agrega un acto al conjunto de actos a los que el anfitrión invitará personas.void
agregarInvitacionesPorActo
(InvitacionesPorActo invitacionesPorActo) Agrega una invitación por acto al conjunto de invitaciones del anfitrión.default void
agregarInvitado
(Acto acto, Invitado invitado, boolean superarMaximo) Agrega un invitado al acto especificado.default void
agregarInvitado
(Acto acto, Invitado invitado, TipoDeZona tipoDeZona, boolean superarMaximo) Agrega un invitado al acto especificado.default <T extends Invitado>
voidagregarInvitados
(Acto acto, Collection<T> invitados, boolean permitirExcederMaximo) Agrega un conjunto de invitados al acto especificado, con la opción de superar el máximo permitido.int
compararPorCantidadDeInvitadosDeUnTipoDeZona
(Acto acto, TipoDeZona tipo, Anfitrion anfitrion1, Anfitrion anfitrion2) Compara dos anfitriones por la cantidad de invitados de un tipo de zona en un acto específico.getActos()
Obtiene los actos asociados al anfitrión.Obtiene un conjunto de coches sin asignar para un acto específico.Obtiene el empleo del anfitrión.Obtiene las invitaciones por acto que el anfitrión ha extendido.default Invitacion
getInvitacionPorTipoDeZona
(Acto acto, TipoDeZona tipoDeZona) Devuelve la invitación por tipo de zona de un acto.getInvitadosAUnActo
(Acto acto) Devuelve los invitados de un acto.getInvitadosAUnActoPorZona
(Acto acto, TipoDeZona tipoDeZona) Devuelve los invitados de un acto en una zona específica.Devuelve los invitados de un acto sin asignar.getInvitadosSinAsignarDeUnActoPorZona
(Acto acto, TipoDeZona tipoDeZona) Devuelve los invitados de un acto sin asignar en una zona específica.default long
getNumeroInvitadosDeUnActoPorZona
(Acto acto, TipoDeZona tipoDeZona) Devuelve el número de invitados de un acto en una zona específica.default long
getNumeroInvitadosSinAsignarDeUnActoPorZona
(Acto acto, TipoDeZona tipoDeZona) Devuelve el número de invitados sin asignar de un acto en una zona específica.Obtiene la unidad de formación del anfitrión.void
quitarActo
(Acto acto) Elimina un acto del conjunto de actos a los que el anfitrión invitará personas.void
quitarInvitacionesPorActo
(InvitacionesPorActo invitacionesPorActo) Elimina una invitación por acto del conjunto de invitaciones del anfitrión.default void
quitarInvitado
(Acto acto, Invitado invitado) Quita un invitado de un acto específico.<T extends Acto>
voidEstablece los actos asociados al anfitrión.void
Define el empleo del anfitrión.<T extends InvitacionesPorActo>
voidsetInvitacionesPorActo
(Set<T> invitacionesPorActo) Establece las invitaciones por acto que el anfitrión ha extendido.void
setUnidadDeFormacion
(String unidadDeFormacion) Define la unidad de formación a la que pertenece el anfitrión.default boolean
tieneInvitaciones
(Acto acto) Determina si el anfitrión tiene invitaciones asignadas para un acto específico.Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface es.mdef.gaip_libreria.invitados.Persona
getDni, getEmail, getFechaNacimiento, getNombre, getNombreCompleto, getPrimerApellido, getSegundoApellido, getSexo, getTelefono, setDni, setEmail, setFechaNacimiento, setNombre, setPrimerApellido, setSegundoApellido, setSexo, setTelefono
-
Method Details
-
getActos
Obtiene los actos asociados al anfitrión.- Returns:
- Conjunto de actos a los que el anfitrión ha invitado o planea invitar personas.
-
setActos
Establece los actos asociados al anfitrión.- Parameters:
actos
- Conjunto de actos.
-
getUnidadDeFormacion
String getUnidadDeFormacion()Obtiene la unidad de formación del anfitrión.- Returns:
- Identificador o nombre de la unidad de formación a la que pertenece el anfitrión.
-
setUnidadDeFormacion
Define la unidad de formación a la que pertenece el anfitrión.- Parameters:
unidadDeFormacion
- Identificador o nombre de la unidad de formación.
-
getEmpleo
String getEmpleo()Obtiene el empleo del anfitrión.- Returns:
- el empleo del anfitrión.
-
setEmpleo
Define el empleo del anfitrión.- Parameters:
empleo
- el empleo del anfitrión.
-
getInvitacionesPorActo
Set<InvitacionesPorActo> getInvitacionesPorActo()Obtiene las invitaciones por acto que el anfitrión ha extendido.- Returns:
- Conjunto de invitaciones por acto asociadas al anfitrión.
-
setInvitacionesPorActo
Establece las invitaciones por acto que el anfitrión ha extendido.- Parameters:
invitacionesPorActo
- Conjunto de invitaciones por acto.
-
agregarInvitacionesPorActo
Agrega una invitación por acto al conjunto de invitaciones del anfitrión.- Parameters:
invitacionesPorActo
- Invitación por acto a agregar.
-
quitarInvitacionesPorActo
Elimina una invitación por acto del conjunto de invitaciones del anfitrión.- Parameters:
invitacionesPorActo
- Invitación por acto a eliminar.
-
agregarActo
Agrega un acto al conjunto de actos a los que el anfitrión invitará personas.- Parameters:
acto
- Acto a agregar.
-
quitarActo
Elimina un acto del conjunto de actos a los que el anfitrión invitará personas.- Parameters:
acto
- Acto a eliminar.
-
agregarInvitados
default <T extends Invitado> void agregarInvitados(Acto acto, Collection<T> invitados, boolean permitirExcederMaximo) Agrega un conjunto de invitados al acto especificado, con la opción de superar el máximo permitido.- Type Parameters:
T
- Tipo genérico que extiende deInvitado
.- Parameters:
acto
- Acto al cual agregar los invitados.invitados
- Conjunto de invitados a agregar.permitirExcederMaximo
- Indica si se permite superar el número máximo de invitados.
-
agregarInvitado
Agrega un invitado al acto especificado.- Parameters:
acto
- Acto al cual agregar el invitado.invitado
- Invitado a agregar.
-
agregarInvitado
default void agregarInvitado(Acto acto, Invitado invitado, TipoDeZona tipoDeZona, boolean superarMaximo) Agrega un invitado al acto especificado.- Parameters:
acto
- Acto al cual agregar el invitado.invitado
- Invitado a agregar.tipoDeZona
- Tipo de zona al que pertenece el invitado.
-
quitarInvitado
Quita un invitado de un acto específico. La invitación se retira de la zona específica a la que estaba asignado el invitado.- Parameters:
acto
- El acto del cual quitar el invitado.invitado
- El invitado a quitar.
-
getNumeroInvitadosDeUnActoPorZona
Devuelve el número de invitados de un acto en una zona específica.- Parameters:
acto
- Acto específico.tipoDeZona
- Tipo de zona específico.- Returns:
- Número de invitados de un acto en una zona específica.
-
getNumeroInvitadosSinAsignarDeUnActoPorZona
Devuelve el número de invitados sin asignar de un acto en una zona específica.- Parameters:
acto
- Acto específico.tipoDeZona
- Tipo de zona específico.- Returns:
- Número de invitados sin asignar de un acto en una zona específica.
-
getInvitadosSinAsignarDeUnActo
Devuelve los invitados de un acto sin asignar.- Parameters:
acto
- Acto específico.- Returns:
- Conjunto de invitados sin asignar de un acto.
-
getInvitadosSinAsignarDeUnActoPorZona
Devuelve los invitados de un acto sin asignar en una zona específica.- Parameters:
acto
- Acto específico.tipoDeZona
- Tipo de zona específica.- Returns:
- Conjunto de invitados sin asignar de un acto en una zona específica.
-
getInvitadosAUnActo
Devuelve los invitados de un acto.- Parameters:
acto
- Acto específico.- Returns:
- Conjunto de invitados de un acto.
-
getInvitadosAUnActoPorZona
Devuelve los invitados de un acto en una zona específica.- Parameters:
acto
- Acto específico.tipoDeZona
- Tipo de zona específica.- Returns:
- Conjunto de invitados de un acto en una zona específica.
-
getInvitacionPorTipoDeZona
Devuelve la invitación por tipo de zona de un acto.- Parameters:
acto
- Acto específico.tipoDeZona
- Tipo de zona específica.- Returns:
- Invitación por tipo de zona de un acto.
-
compararPorCantidadDeInvitadosDeUnTipoDeZona
int compararPorCantidadDeInvitadosDeUnTipoDeZona(Acto acto, TipoDeZona tipo, Anfitrion anfitrion1, Anfitrion anfitrion2) Compara dos anfitriones por la cantidad de invitados de un tipo de zona en un acto específico.- Parameters:
acto
- Acto específico para la comparación.tipo
- Tipo de zona específico para la comparación.anfitrion1
- Primer anfitrión a comparar.anfitrion2
- Segundo anfitrión a comparar.- Returns:
- Valor negativo, cero o positivo si el primer anfitrión tiene menos, igual o más invitados que el segundo anfitrión, respectivamente.
-
getCochesSinAsignarDeUnActo
Obtiene un conjunto de coches sin asignar para un acto específico. Considera solo aquellos coches en la zona de estacionamiento (PARKING).- Parameters:
acto
- El acto para el cual obtener los coches sin asignar.- Returns:
- Conjunto de coches sin localidad asignada en la zona de estacionamiento para el acto especificado.
-
tieneInvitaciones
Determina si el anfitrión tiene invitaciones asignadas para un acto específico.- Parameters:
acto
- El acto a verificar.- Returns:
- true si hay al menos una invitación con localidad asignada para el acto, false en caso contrario.
-