function Updater::getUpdaterFromDirectory
Determines which Updater class can operate on the given directory.
Parameters
string $directory: Extracted Drupal project.
Return value
string The class name which can work with this project type.
Throws
\Drupal\Core\Updater\UpdaterException
2 calls to Updater::getUpdaterFromDirectory()
- Updater::factory in core/
lib/ Drupal/ Core/ Updater/ Updater.php  - Returns an Updater of the appropriate type depending on the source.
 - UpdateUploadTest::testUpdateDirectory in core/
modules/ update/ tests/ src/ Functional/ UpdateUploadTest.php  - Tests only an *.info.yml file are detected without supporting files.
 
File
- 
              core/
lib/ Drupal/ Core/ Updater/ Updater.php, line 93  
Class
- Updater
 - Defines the base class for Updaters used in Drupal.
 
Namespace
Drupal\Core\UpdaterCode
public static function getUpdaterFromDirectory($directory) {
  // Gets a list of possible implementing classes.
  $updaters = drupal_get_updaters();
  foreach ($updaters as $updater) {
    $class = $updater['class'];
    if (call_user_func([
      $class,
      'canUpdateDirectory',
    ], $directory)) {
      return $class;
    }
  }
  throw new UpdaterException('Cannot determine the type of project.');
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.