/**
  * Listar algunos Reserva dado el $reservaResponsableId
  * 
  * @param $reservaResponsableId
  * @param $performSize
  * @param $firstResultNumber
  * @param $numResults
  */
 public function listReservasByReservaResponsableId($reservaResponsableId, $performSize = false, $firstResultNumber = null, $numResults = null, $orderBy = null, $orderPriority = SQL_ASCENDING_ORDER)
 {
     $objBean = new ResponsableBean($this->persistenceManager);
     $obj = new Responsable();
     $obj->setId($reservaResponsableId);
     # Validamos los campos
     if ($firstResultNumber !== null && !EntityValidator::validatePositiveNumber($firstResultNumber)) {
         throw new Exception(SALAS_COMP_ALERT_E_VALIDATION_FAIL, $this->ID + 103);
     }
     if (!EntityValidator::validateGlobalOrderPriority($orderPriority)) {
         throw new Exception(SALAS_COMP_ALERT_E_VALIDATION_FAIL, $this->ID + 105);
     }
     if (!EntityValidator::validateId($reservaResponsableId)) {
         throw new Exception(SALAS_COMP_ALERT_E_VALIDATION_FAIL, $this->ID + 107);
     }
     # Verificamos que la entidad exista
     if (!$objBean->getResponsable($obj)) {
         throw new Exception(SALAS_COMP_ALERT_E_ENTITY_NOT_FOUND_FAIL, $this->ID + 109);
     }
     # Listamos las entidades
     if ($performSize) {
         $this->lastRequestSize = $this->reservaBean->countGetReservasByReservaResponsable($obj);
     }
     return ReservaDTO::loadFromEntities($this->reservaBean->listReservasByReservaResponsable($obj, $firstResultNumber, $numResults, $orderBy, $orderPriority));
 }
 /**
  * Eliminar un Persona Dado el $personaId
  * 
  * @param $personaId
  */
 public function removePersona($personaId)
 {
     $responsableBean = new ResponsableBean($this->persistenceManager);
     $estudianteBean = new EstudianteBean($this->persistenceManager);
     $persona = new Persona();
     $persona->setId($personaId);
     # Validamos los campos
     if (!EntityValidator::validateId($personaId)) {
         throw new Exception(SALAS_COMP_ALERT_E_VALIDATION_FAIL, $this->ID + 136);
     }
     # Verificamos que la entidad exista.
     if (!$this->personaBean->getPersona($persona)) {
         throw new Exception(SALAS_COMP_ALERT_E_ENTITY_NOT_FOUND_FAIL, $this->ID + 137);
     }
     # Verificamos que la entidad no esté siendo utilziada en alguna otra.
     # Verificamos que la entidad no esté siendo utilziada en Responsable->responsablePersona
     $responsables = $responsableBean->getResponsablesByResponsablePersona($persona);
     if (count($responsables) > 0) {
         throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_LINKED_FAIL, $this->ID + 134);
     }
     # Verificamos que la entidad no esté siendo utilziada en Estudiante->estudiantePersona
     $estudiantes = $estudianteBean->getEstudiantesByEstudiantePersona($persona);
     if (count($estudiantes) > 0) {
         throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_LINKED_FAIL, $this->ID + 135);
     }
     # Eliminamos la entidad
     if (!$this->personaBean->removePersona($persona)) {
         throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_FAIL, $this->ID + 138);
     }
 }