Interface EventReservationPropagationService

All Known Implementing Classes:
DefaultEventReservationPropagationService

public interface EventReservationPropagationService
Creates `Reservation_registration` and `Reservation_lecturer_booking` entities in an efficient manner.
  • Method Details Link icon

    • getRegistrationCreateStatus Link icon

      Set<String> getRegistrationCreateStatus()
    • getRegistrationRemoveStatus Link icon

      Set<String> getRegistrationRemoveStatus()
    • getLecturerBookingCreateStatus Link icon

      Set<String> getLecturerBookingCreateStatus()
    • getRegistrationCreateType Link icon

      @Nullable @Nullable Set<String> getRegistrationCreateType()
      Returns:
      The Registration_types (unique_id) required to create a Reservation_registration. If null or empty then no specific Registration_type is required.
    • getRegistrationRemoveType Link icon

      @Nullable @Nullable Set<String> getRegistrationRemoveType()
      Returns:
      The Registration_types (unique_id) that remove the Reservation_registrations if set. If null or empty then no Registration_type deleted Reservation_registrations.
    • createReservationRegistrations Link icon

      List<Entity> createReservationRegistrations(List<Entity> reservations, Entity registration)
      Makes sure that there exists a `Reservation_registration` entity for each given `Reservation` entity and the given `Registration` entity.
      Parameters:
      reservations - All the `Reservation` entities that should have a `Reservation_registration` entity
      registration - The `Registration` entity the `Reservation_registration` should be linked to
      Returns:
      the created `Reservation_registration` entities.
    • createReservationLecturerBookings Link icon

      List<Entity> createReservationLecturerBookings(List<Entity> reservations, Entity lecturerBooking)
      Makes sure that there exists a `Reservation_lecturer_booking` entity for each given `Reservation` entity and the given `Lecturer_booking` entity.
      Parameters:
      reservations - All the `Reservation` entities that should have a `Reservation_lecturer_booking` entity
      lecturerBooking - The `Lecturer_booking` entity the `Reservation_lecturer_booking` should be linked to
      Returns:
      the created `Reservation_lecturer_booking` entities.