l10n = $l10n; } public function getFile(Folder $folder): ?File { foreach ($this->getSupportedFilenames() as $filename) { try { $exists = $folder->getStorage()->getCache()->get($folder->getInternalPath() . '/' . $filename); if ($exists) { $file = $folder->get($filename); if ($file instanceof File) { return $file; } } } catch (NotFoundException|StorageInvalidException) { continue; } } return null; } /** @return string[] */ public function getSupportedFilenames(): array { return array_merge([ $this->l10n->t('Readme') . '.md' ], self::SUPPORTED_STATIC_FILENAMES); } }