当前位置: 首页>>代码示例>>PHP>>正文


PHP ResourceStorage::getDriverType方法代码示例

本文整理汇总了PHP中TYPO3\CMS\Core\Resource\ResourceStorage::getDriverType方法的典型用法代码示例。如果您正苦于以下问题:PHP ResourceStorage::getDriverType方法的具体用法?PHP ResourceStorage::getDriverType怎么用?PHP ResourceStorage::getDriverType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TYPO3\CMS\Core\Resource\ResourceStorage的用法示例。


在下文中一共展示了ResourceStorage::getDriverType方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: extractMetadata

 /**
  * @param \TYPO3\CMS\Core\Resource\File $file
  * @return $this
  */
 public function extractMetadata(File $file)
 {
     $extractionServices = $this->getExtractorRegistry()->getExtractorsWithDriverSupport($this->storage->getDriverType());
     $newMetaData = array(0 => $file->_getMetaData());
     foreach ($extractionServices as $service) {
         if ($service->canProcess($file)) {
             $newMetaData[$service->getPriority()] = $service->extractMetaData($file, $newMetaData);
         }
     }
     ksort($newMetaData);
     $metaData = array();
     foreach ($newMetaData as $data) {
         $metaData = array_merge($metaData, $data);
     }
     $file->_updateMetaDataProperties($metaData);
     $this->getMetaDataRepository()->update($file->getUid(), $metaData);
     $this->getFileIndexRepository()->updateIndexingTime($file->getUid());
     return $this;
 }
开发者ID:visol,项目名称:media,代码行数:23,代码来源:MediaIndexer.php

示例2: extractRequiredMetaData

 /**
  * Since the core desperately needs image sizes in metadata table put them there
  * This should be called after every "content" update and "record" creation
  *
  * @param File $fileObject
  */
 protected function extractRequiredMetaData(File $fileObject)
 {
     // since the core desperately needs image sizes in metadata table do this manually
     // prevent doing this for remote storages, remote storages must provide the data with extractors
     if ($fileObject->getType() == File::FILETYPE_IMAGE && $this->storage->getDriverType() === 'Local') {
         $rawFileLocation = $fileObject->getForLocalProcessing(FALSE);
         $imageInfo = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Type\\File\\ImageInfo', $rawFileLocation);
         $metaData = array('width' => $imageInfo->getWidth(), 'height' => $imageInfo->getHeight());
         $this->getMetaDataRepository()->update($fileObject->getUid(), $metaData);
         $fileObject->_updateMetaDataProperties($metaData);
     }
 }
开发者ID:khanhdeux,项目名称:typo3test,代码行数:18,代码来源:Indexer.php

示例3: extractRequiredMetaData

 /**
  * Since the core desperately needs image sizes in metadata table put them there
  * This should be called after every "content" update and "record" creation
  *
  * @param File $fileObject
  */
 protected function extractRequiredMetaData(File $fileObject)
 {
     // since the core desperately needs image sizes in metadata table do this manually
     // prevent doing this for remote storages, remote storages must provide the data with extractors
     if ($fileObject->getType() == File::FILETYPE_IMAGE && $this->storage->getDriverType() === 'Local') {
         $rawFileLocation = $fileObject->getForLocalProcessing(FALSE);
         $metaData = array();
         list($metaData['width'], $metaData['height']) = getimagesize($rawFileLocation);
         $this->getMetaDataRepository()->update($fileObject->getUid(), $metaData);
         $fileObject->_updateMetaDataProperties($metaData);
     }
 }
开发者ID:Mr-Robota,项目名称:TYPO3.CMS,代码行数:18,代码来源:Indexer.php

示例4: isEquivalentObjectStorage

 /**
  * Determines whether the passed storage object and record (sys_file_storage) can be
  * seen as equivalent during import.
  *
  * @param ResourceStorage $storageObject The storage object which should get compared
  * @param array $storageRecord The storage record which should get compared
  * @return bool Returns TRUE when both object storages can be seen as equivalent
  */
 protected function isEquivalentObjectStorage(ResourceStorage $storageObject, array $storageRecord)
 {
     // compare the properties: driver, writable and online
     if ($storageObject->getDriverType() === $storageRecord['driver'] && (bool) $storageObject->isWritable() === (bool) $storageRecord['is_writable'] && (bool) $storageObject->isOnline() === (bool) $storageRecord['is_online']) {
         $storageRecordConfiguration = ResourceFactory::getInstance()->convertFlexFormDataToConfigurationArray($storageRecord['configuration']);
         $storageObjectConfiguration = $storageObject->getConfiguration();
         // compare the properties: pathType and basePath
         if ($storageRecordConfiguration['pathType'] === $storageObjectConfiguration['pathType'] && $storageRecordConfiguration['basePath'] === $storageObjectConfiguration['basePath']) {
             return true;
         }
     }
     return false;
 }
开发者ID:amazingh,项目名称:TYPO3.CMS,代码行数:21,代码来源:Import.php


注:本文中的TYPO3\CMS\Core\Resource\ResourceStorage::getDriverType方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。