/** * {@inheritDoc} * * @see * edu.hm.esp.internal.bean.database.IEspTimeSlotDatabaseLocal#deleteTimeSlot(edu.hm.esp.internal.object.entity.EspEntityTimeSlotPk) */ @Override public void deleteTimeSlot(EspEntityTimeSlotPk pk) { try { // Eingangsparameter validieren -> Bei Fehler wird Exception geworfen if (pk == null) { throw new EspValidationException("Ungueltiger Zeitraum: '" + pk + "'!"); } // Zeitslot anhand des Zeitraums suchen EspEntityTimeSlot timeSlot = m_em.find(EspEntityTimeSlot.class, pk, LockModeType.PESSIMISTIC_WRITE); // Zeitslot existiert nicht -> Exception werfen if (timeSlot == null) { throw new EspNotExistsException( "Zeitslot mit dem Zeitraum [" + pk.toString() + "] exisitert nicht!"); } // Loeschen m_em.remove(timeSlot); m_em.flush(); BasicLogger.logInfo(this, "Zeitslot [" + timeSlot.toString() + "] erfolgreich gel�scht!"); } catch (PersistenceException pe) { BasicLogger.logError(this, pe.getMessage()); throw new EspPersistenceException("Zeitslot konnte nicht gel�scht werden!"); } }
/** * {@inheritDoc} * * @see * edu.hm.esp.internal.bean.database.IEspTimeSlotDatabaseLocal#readTimeSlotByPK(edu.hm.esp.internal.object.entity.EspEntityTimeSlotPk, * javax.persistence.LockModeType) */ @Override public EspEntityTimeSlot readTimeSlotByPK(EspEntityTimeSlotPk pk, LockModeType lockModeType) { try { // Eingangsparameter validieren -> Bei Fehler wird Exception geworfen if (pk == null) { throw new EspValidationException("Ungueltiger Zeitraum: '" + pk + "'!"); } // Primaerschluessel validieren pk.validate(); EspEntityTimeSlot timeSlot = null; if (lockModeType != null) { // Zeitslot anhand des Zeitraums (PK) auslesen (LOCKED) timeSlot = m_em.find(EspEntityTimeSlot.class, pk, lockModeType); } else { // Zeitslot anhand des Zeitraums (PK) auslesen timeSlot = m_em.find(EspEntityTimeSlot.class, pk); } // Zeitslot nicht vorhanden -> Exception werfen if (timeSlot == null) { throw new EspNotExistsException( "Zeitslot mit dem Zeitraum [" + pk.toString() + "] existiert nicht!"); } BasicLogger.logInfo(this, "Zeitslot [" + timeSlot.toString() + "] erfolgreich gelesen!"); // Zeitslot zurueckgeben return timeSlot; } catch (PersistenceException pe) { BasicLogger.logError(this, pe.getMessage()); throw new EspPersistenceException("Zeitslot konnte nicht ausgelesen werden!"); } }