protected ConfigImporter::processExtension($type, $op, $name)
Processes an extension change.
Parameters
string $type: The type of extension, either 'module' or 'theme'.
string $op: The change operation.
string $name: The name of the extension to process.
File
- core/lib/Drupal/Core/Config/ConfigImporter.php, line 780
Class
- ConfigImporter
- Defines a configuration importer.
Namespace
Drupal\Core\Config
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | protected function processExtension( $type , $op , $name ) { // Set the config installer to use the sync directory instead of the // extensions own default config directories. \Drupal::service( 'config.installer' ) ->setSourceStorage( $this ->storageComparer->getSourceStorage()); if ( $type == 'module' ) { $this ->moduleInstaller-> $op ( array ( $name ), FALSE); // Installing a module can cause a kernel boot therefore reinject all the // services. $this ->reInjectMe(); // During a module install or uninstall the container is rebuilt and the // module handler is called from drupal_get_complete_schema(). This causes // the container's instance of the module handler not to have loaded all // the enabled modules. $this ->moduleHandler->loadAll(); } if ( $type == 'theme' ) { // Theme uninstalls possible remove default or admin themes therefore we // need to import this before doing any. If there are no uninstalls and // the default or admin theme is changing this will be picked up whilst // processing configuration. if ( $op == 'uninstall' && $this ->processedSystemTheme === FALSE) { $this ->importConfig(StorageInterface::DEFAULT_COLLECTION, 'update' , 'system.theme' ); $this ->configManager->getConfigFactory()->reset( 'system.theme' ); $this ->processedSystemTheme = TRUE; } $this ->themeHandler-> $op ( array ( $name )); } $this ->setProcessedExtension( $type , $op , $name ); } |
Please login to continue.