You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.8 KiB
60 lines
1.8 KiB
<?php |
|
/** |
|
* @link http://www.yiiframework.com/ |
|
* @copyright Copyright (c) 2008 Yii Software LLC |
|
* @license http://www.yiiframework.com/license/ |
|
*/ |
|
|
|
namespace yii\base; |
|
|
|
/** |
|
* BootstrapInterface is the interface that should be implemented by classes who want to participate in the application bootstrap process. |
|
* |
|
* The main method [[bootstrap()]] will be invoked by an application at the beginning of its `init()` method. |
|
* |
|
* Bootstrapping classes can be registered in two approaches. |
|
* |
|
* The first approach is mainly used by extensions and is managed by the Composer installation process. |
|
* You mainly need to list the bootstrapping class of your extension in the `composer.json` file like following, |
|
* |
|
* ```json |
|
* { |
|
* // ... |
|
* "extra": { |
|
* "bootstrap": "path\\to\\MyBootstrapClass" |
|
* } |
|
* } |
|
* ``` |
|
* |
|
* If the extension is installed, the bootstrap information will be saved in [[Application::extensions]]. |
|
* |
|
* The second approach is used by application code which needs to register some code to be run during |
|
* the bootstrap process. This is done by configuring the [[Application::bootstrap]] property: |
|
* |
|
* ```php |
|
* return [ |
|
* // ... |
|
* 'bootstrap' => [ |
|
* "path\\to\\MyBootstrapClass1", |
|
* [ |
|
* 'class' => "path\\to\\MyBootstrapClass2", |
|
* 'prop1' => 'value1', |
|
* 'prop2' => 'value2', |
|
* ], |
|
* ], |
|
* ]; |
|
* ``` |
|
* |
|
* As you can see, you can register a bootstrapping class in terms of either a class name or a configuration class. |
|
* |
|
* @author Qiang Xue <qiang.xue@gmail.com> |
|
* @since 2.0 |
|
*/ |
|
interface BootstrapInterface |
|
{ |
|
/** |
|
* Bootstrap method to be called during application bootstrap stage. |
|
* @param Application $app the application currently running |
|
*/ |
|
public function bootstrap($app); |
|
}
|
|
|