/** * @param WeLearn_DTO_IDTO $dto * @return void */ protected function _adicionar(WeLearn_DTO_IDTO &$dto) { if (!$dto->getId()) { $UUID = UUID::mint(); $dto->setId($UUID->string); } else { $UUID = CassandraUtil::import($dto->getId()); } $dto->setDataInclusao(time()); $this->_cf->insert($UUID->bytes, $dto->toCassandra()); if ($dto instanceof WeLearn_Cursos_Recursos_RecursoRestrito) { $aulaUUID = CassandraUtil::import($dto->getAula()->getId()); $this->_recursosRestritosCF->insert($aulaUUID->bytes, array($UUID->bytes => '')); } elseif ($dto instanceof WeLearn_Cursos_Recursos_RecursoGeral) { $cursoUUID = CassandraUtil::import($dto->getCurso()->getId()); $this->_recursosGeraisCF->insert($cursoUUID->bytes, array($UUID->bytes => '')); } else { throw new WeLearn_Base_Exception('A classe inserida tem que derivar de WeLearn_Cursos_Recursos_Recurso.'); } $dto->setPersistido(true); }