public void create(Booking booking) throws DuplicateInstanceException,
			MaxCapacityException, NotValidDateException {
		if (!existsBooking(booking)) {
			checkCapacity(booking);
			try {
				if (SchoolCalendar.isNotHoliday(booking.getDate())) {
					bookings.add(booking);
				} else {
					throw new NotValidDateException(booking, "Booking");
				}
			} catch (ParseException e) {
				e.printStackTrace();
			}
			booking.getStudent().getBookings().add(booking);

			Persistence.getInstance().save();
		} else {
			throw new DuplicateInstanceException(booking, "Booking");
		}
	}