/** * Returns a data map for a given class name * * @param string $className The class name you want to fetch the Data Map for * @return Tx_Extbase_Persistence_Mapper_DataMap The data map */ public function getDataMap($className) { if (!is_string($className) || strlen($className) === 0) { throw new Tx_Extbase_Persistence_Exception('No class name was given to retrieve the Data Map for.', 1251315965); } if (!isset($this->dataMaps[$className])) { $this->dataMaps[$className] = $this->dataMapFactory->buildDataMap($className); } return $this->dataMaps[$className]; }
/** * @param mixed $object * @return string * @api */ public function getDatabaseTable($object) { if (is_object($object)) { $className = get_class($object); } else { $className = $object; } $map = $this->dataMapFactory->buildDataMap($className); return $map->getTableName(); }
protected function createEventManager() { $metadataService = new Tx_Doctrine2_Mapping_TYPO3MetadataService(); $metadataService->injectReflectionService($this->reflectionService); $this->dataMapFactory->injectReflectionService($this->reflectionService); $metadataService->injectDataMapFactory($this->dataMapFactory); $metadataListener = new Tx_Doctrine2_Mapping_TYPO3TCAMetadataListener(); $metadataListener->injectMetadataService($metadataService); $evm = new \Doctrine\Common\EventManager(); $evm->addEventSubscriber($metadataListener); if ($this->objectManager) { $storagePidListener = $this->objectManager->get('Tx_Doctrine2_Persistence_StoragePidListener'); $evm->addEventSubscriber($storagePidListener); } $this->configureEventManager($evm); return $evm; }
/** * @return Tx_Extbase_Persistence_Mapper_DataMap */ public function getDataMap($className) { return $this->dataMapFactory->buildDataMap($className); }