public static function loadProviders()
{
/*
* Get Global Providers
* -----------------------------------------
* If you want a provider can be used in every applications (for example: Web and Console),
* set it in Windwalker\Windwalker object.
*/
$providers = array_merge(parent::loadProviders(), Windwalker::loadProviders());
$providers = array_merge($providers, (array) Ioc::getConfig()->get('providers'));
/*
* Default Providers:
* -----------------------------------------
* This is some default service providers, we don't recommend to remove them,
* But you can replace with yours, Make sure all the needed container key has
* registered in your own providers.
*/
$providers['debug'] = new Provider\WhoopsProvider();
$providers['datetime'] = new Provider\DateTimeProvider();
// $providers['logger'] = new Provider\LoggerProvider;
// $providers['event'] = new Provider\EventProvider;
// $providers['database'] = new Provider\DatabaseProvider;
// $providers['router'] = new Provider\RouterProvider;
// $providers['lang'] = new Provider\LanguageProvider;
// $providers['cache'] = new Provider\CacheProvider;
// $providers['session'] = new Provider\SessionProvider;
// $providers['auth'] = new Provider\AuthenticationProvider;
// $providers['security'] = new Provider\SecurityProvider;
// $providers['profiler'] = new Provider\ProfilerProvider;
/*
* Custom Providers:
* -----------------------------------------
* You can add your own providers here. If you installed a 3rd party packages from composer,
* but this package need some init logic, create a service provider to do it and register them here.
*/
// Custom Providers here...
return $providers;
}