/**
  * Retorna una lista con todos los tipos de registros asociados
  * a la operacion listAll del DAO indicado.
  * Esta lista no es paginada
  *
  * @param \TSLIDataTransferObj $dto EL DATA TRANSFER OBJECT este es el repositorio
  * de las respuestas encontradas y/o de los mensajes necesarios ya sean de exito o error.
  *
  * @see \TSLIBasicRecordDAO
  * @see \TSLBasicRecordDAO
  *
  */
 private function fetch(\TSLIDataTransferObj $dto)
 {
     // Obtengo referencia a los constraints
     $constraints =& $dto->getConstraints();
     // Obtengo la sub operacion si existe
     $subOperation =& $dto->getSubOperation();
     $model =& $this->getEmptyModel();
     // Obtengo la referencia al mensaje de salida.
     $outMessage =& $dto->getOutMessage();
     $tmg = NULL;
     try {
         $tmg = \TSLTrxFactoryManager::instance()->getTrxManager();
         $tmg->init();
         /* @var $dao \TSLIBasicRecordDAO */
         $dao = \TSLDAOLoaderHelper::loadDAO($this->IdDAOName);
         $ret = $dao->fetch($model, $constraints, $subOperation);
         /* @var $outMessage TSLOutMessage */
         $outMessage->setSuccess(true);
         $outMessage->setResultData($ret);
     } catch (Exception $ex) {
         // Coloco la excepcion en el DTO.
         // TODO: Internacionalizar.
         $processError = new \TSLProcessErrorMessage($ex->getCode(), 'Error Interno', $ex);
         $outMessage->addProcessError($processError);
     }
     if ($tmg !== NULL) {
         $tmg->end();
     }
 }