[ Index ] |
PHP Cross Reference of Joomla 4.2.2 documentation |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** 4 * Joomla! Content Management System 5 * 6 * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> 7 * @license GNU General Public License version 2 or later; see LICENSE 8 */ 9 10 namespace Joomla\CMS\Service\Provider; 11 12 use Joomla\CMS\Console\CheckJoomlaUpdatesCommand; 13 use Joomla\CMS\Console\ExtensionDiscoverCommand; 14 use Joomla\CMS\Console\ExtensionDiscoverInstallCommand; 15 use Joomla\CMS\Console\ExtensionDiscoverListCommand; 16 use Joomla\CMS\Console\ExtensionInstallCommand; 17 use Joomla\CMS\Console\ExtensionRemoveCommand; 18 use Joomla\CMS\Console\ExtensionsListCommand; 19 use Joomla\CMS\Console\FinderIndexCommand; 20 use Joomla\CMS\Console\GetConfigurationCommand; 21 use Joomla\CMS\Console\SessionGcCommand; 22 use Joomla\CMS\Console\SessionMetadataGcCommand; 23 use Joomla\CMS\Console\SetConfigurationCommand; 24 use Joomla\CMS\Console\SiteDownCommand; 25 use Joomla\CMS\Console\SiteUpCommand; 26 use Joomla\CMS\Console\TasksListCommand; 27 use Joomla\CMS\Console\TasksRunCommand; 28 use Joomla\CMS\Console\TasksStateCommand; 29 use Joomla\CMS\Console\UpdateCoreCommand; 30 use Joomla\CMS\Session\MetadataManager; 31 use Joomla\Database\Command\ExportCommand; 32 use Joomla\Database\Command\ImportCommand; 33 use Joomla\Database\DatabaseInterface; 34 use Joomla\DI\Container; 35 use Joomla\DI\ServiceProviderInterface; 36 37 // phpcs:disable PSR1.Files.SideEffects 38 \defined('JPATH_PLATFORM') or die; 39 // phpcs:enable PSR1.Files.SideEffects 40 41 /** 42 * Service provider for the application's console services 43 * 44 * @since 4.0.0 45 */ 46 class Console implements ServiceProviderInterface 47 { 48 /** 49 * Registers the service provider with a DI container. 50 * 51 * @param Container $container The DI container. 52 * 53 * @return void 54 * 55 * @since 4.0.0 56 */ 57 public function register(Container $container) 58 { 59 $container->share( 60 SessionGcCommand::class, 61 function (Container $container) { 62 /* 63 * The command will need the same session handler that web apps use to run correctly, 64 * since this is based on an option we need to inject the container 65 */ 66 $command = new SessionGcCommand(); 67 $command->setContainer($container); 68 69 return $command; 70 }, 71 true 72 ); 73 74 $container->share( 75 SessionMetadataGcCommand::class, 76 function (Container $container) { 77 return new SessionMetadataGcCommand($container->get('session'), $container->get(MetadataManager::class)); 78 }, 79 true 80 ); 81 82 $container->share( 83 ExportCommand::class, 84 function (Container $container) { 85 return new ExportCommand($container->get('db')); 86 }, 87 true 88 ); 89 90 $container->share( 91 ImportCommand::class, 92 function (Container $container) { 93 return new ImportCommand($container->get('db')); 94 }, 95 true 96 ); 97 98 $container->share( 99 SiteDownCommand::class, 100 function (Container $container) { 101 return new SiteDownCommand(); 102 }, 103 true 104 ); 105 106 $container->share( 107 SiteUpCommand::class, 108 function (Container $container) { 109 return new SiteUpCommand(); 110 }, 111 true 112 ); 113 114 $container->share( 115 SetConfigurationCommand::class, 116 function (Container $container) { 117 return new SetConfigurationCommand(); 118 }, 119 true 120 ); 121 122 $container->share( 123 GetConfigurationCommand::class, 124 function (Container $container) { 125 return new GetConfigurationCommand(); 126 }, 127 true 128 ); 129 130 $container->share( 131 ExtensionsListCommand::class, 132 function (Container $container) { 133 return new ExtensionsListCommand($container->get('db')); 134 }, 135 true 136 ); 137 138 $container->share( 139 CheckJoomlaUpdatesCommand::class, 140 function (Container $container) { 141 return new CheckJoomlaUpdatesCommand(); 142 }, 143 true 144 ); 145 146 $container->share( 147 ExtensionRemoveCommand::class, 148 function (Container $container) { 149 return new ExtensionRemoveCommand($container->get(DatabaseInterface::class)); 150 }, 151 true 152 ); 153 154 $container->share( 155 ExtensionInstallCommand::class, 156 function (Container $container) { 157 return new ExtensionInstallCommand(); 158 }, 159 true 160 ); 161 162 $container->share( 163 ExtensionDiscoverCommand::class, 164 function (Container $container) { 165 return new ExtensionDiscoverCommand(); 166 }, 167 true 168 ); 169 170 $container->share( 171 ExtensionDiscoverInstallCommand::class, 172 function (Container $container) { 173 return new ExtensionDiscoverInstallCommand($container->get('db')); 174 }, 175 true 176 ); 177 178 $container->share( 179 ExtensionDiscoverListCommand::class, 180 function (Container $container) { 181 return new ExtensionDiscoverListCommand($container->get('db')); 182 }, 183 true 184 ); 185 186 $container->share( 187 UpdateCoreCommand::class, 188 function (Container $container) { 189 return new UpdateCoreCommand($container->get('db')); 190 }, 191 true 192 ); 193 194 $container->share( 195 FinderIndexCommand::class, 196 function (Container $container) { 197 return new FinderIndexCommand($container->get('db')); 198 }, 199 true 200 ); 201 202 $container->share( 203 TasksListCommand::class, 204 function (Container $container) { 205 return new TasksListCommand(); 206 }, 207 true 208 ); 209 210 $container->share( 211 TasksRunCommand::class, 212 function (Container $container) { 213 return new TasksRunCommand(); 214 } 215 ); 216 217 $container->share( 218 TasksStateCommand::class, 219 function (Container $container) { 220 return new TasksStateCommand(); 221 } 222 ); 223 } 224 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Wed Sep 7 05:41:13 2022 | Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer |