From 3f9ebb8abf01eedb73f3bd9094f8efb771b90c12 Mon Sep 17 00:00:00 2001 From: Graham Campbell Date: Thu, 28 May 2015 19:46:54 +0100 Subject: [PATCH] Cleanup service providers --- app/Providers/AppServiceProvider.php | 19 +---- app/Providers/BusServiceProvider.php | 12 ++-- app/Providers/ComposerServiceProvider.php | 36 ++++++++++ app/Providers/ConfigServiceProvider.php | 61 ++++++++++++++-- app/Providers/ConsoleServiceProvider.php | 10 +-- app/Providers/EventServiceProvider.php | 12 ---- app/Providers/LoadConfigServiceProvider.php | 72 ------------------- app/Providers/RepositoryServiceProvider.php | 10 +-- app/Providers/RouteServiceProvider.php | 8 ++- ...rovider.php => SegmentServiceProvider.php} | 12 +--- app/Providers/SettingsServiceProvider.php | 37 ---------- app/Providers/ViewComposerServiceProvider.php | 40 ----------- config/app.php | 6 +- 13 files changed, 116 insertions(+), 219 deletions(-) create mode 100644 app/Providers/ComposerServiceProvider.php delete mode 100644 app/Providers/LoadConfigServiceProvider.php rename app/Providers/{SegmentApiServiceProvider.php => SegmentServiceProvider.php} (84%) delete mode 100644 app/Providers/SettingsServiceProvider.php delete mode 100644 app/Providers/ViewComposerServiceProvider.php diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 0ef8e116..15bb3c81 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -16,25 +16,12 @@ use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider { /** - * Bootstrap any application services. - */ - public function boot() - { - // - } - - /** - * Register any application services. + * Register the service provider. * - * This service provider is a great spot to register your various container - * bindings with the application. As you can see, we are registering our - * "Registrar" implementation here. You can add your own bindings too! + * @return void */ public function register() { - $this->app->bind( - 'Illuminate\Contracts\Auth\Registrar', - 'CachetHQ\Cachet\Services\Registrar' - ); + $this->app->bind('Illuminate\Contracts\Auth\Registrar', 'CachetHQ\Cachet\Services\Registrar'); } } diff --git a/app/Providers/BusServiceProvider.php b/app/Providers/BusServiceProvider.php index 156be180..d8a37048 100644 --- a/app/Providers/BusServiceProvider.php +++ b/app/Providers/BusServiceProvider.php @@ -17,21 +17,23 @@ use Illuminate\Support\ServiceProvider; class BusServiceProvider extends ServiceProvider { /** - * Bootstrap any application services. + * Boot the service provider. * * @param \Illuminate\Bus\Dispatcher $dispatcher + * + * @return void */ public function boot(Dispatcher $dispatcher) { $dispatcher->mapUsing(function ($command) { - return Dispatcher::simpleMapping( - $command, 'CachetHQ\Cachet\Commands', 'CachetHQ\Cachet\Handlers\Commands' - ); + return Dispatcher::simpleMapping($command, 'CachetHQ\Cachet\Commands', 'CachetHQ\Cachet\Handlers\Commands'); }); } /** - * Register any application services. + * Register the service provider. + * + * @return void */ public function register() { diff --git a/app/Providers/ComposerServiceProvider.php b/app/Providers/ComposerServiceProvider.php new file mode 100644 index 00000000..be6ed427 --- /dev/null +++ b/app/Providers/ComposerServiceProvider.php @@ -0,0 +1,36 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace CachetHQ\Cachet\Providers; + +use CachetHQ\Cachet\Composers\DashboardComposer; +use CachetHQ\Cachet\Composers\IndexComposer; +use CachetHQ\Cachet\Composers\LoggedUserComposer; +use CachetHQ\Cachet\Composers\TimezoneLocaleComposer; +use CachetHQ\Cachet\Composers\ThemeComposer; +use Illuminate\Support\ServiceProvider; + +class ComposerServiceProvider extends ServiceProvider +{ + /** + * Register the service provider. + * + * @return void + */ + public function register() + { + $this->app->view->composer('*', LoggedUserComposer::class); + $this->app->view->composer('index', IndexComposer::class); + $this->app->view->composer('index', ThemeComposer::class); + $this->app->view->composer('dashboard.*', DashboardComposer::class); + $this->app->view->composer(['setup', 'dashboard.settings.app-setup'], TimezoneLocaleComposer::class); + } +} diff --git a/app/Providers/ConfigServiceProvider.php b/app/Providers/ConfigServiceProvider.php index e0f03820..ab4c6fc0 100644 --- a/app/Providers/ConfigServiceProvider.php +++ b/app/Providers/ConfigServiceProvider.php @@ -11,21 +11,68 @@ namespace CachetHQ\Cachet\Providers; +use CachetHQ\Cachet\Config\Repository; +use CachetHQ\Cachet\Facades\Setting; +use CachetHQ\Cachet\Models\Setting as SettingModel; +use Exception; use Illuminate\Support\ServiceProvider; class ConfigServiceProvider extends ServiceProvider { /** - * Overwrite any vendor / package configuration. + * Boot the service provider. * - * This service provider is intended to provide a convenient location for you - * to overwrite any "vendor" or package configuration that you may want to - * modify before the application handles the incoming request / command. + * @return void + */ + public function boot() + { + try { + // Get app custom configuration. + $appDomain = Setting::get('app_domain'); + $appLocale = Setting::get('app_locale'); + + // Set the Segment.com settings. + if (Setting::get('app_track')) { + $segmentRepository = $this->app->make('CachetHQ\Cachet\Segment\RepositoryInterface'); + $this->app->config->set('segment.write_key', $segmentRepository->fetch()); + } + + // Setup Cors. + $allowedOrigins = $this->app->config->get('cors.defaults.allowedOrigins'); + $allowedOrigins[] = Setting::get('app_domain'); + + // Add our allowed domains too. + if ($allowedDomains = Setting::get('allowed_domains')) { + $domains = explode(',', $allowedDomains); + foreach ($domains as $domain) { + $allowedOrigins[] = $domain; + } + } else { + $allowedOrigins[] = env('APP_URL'); + } + + $this->app->config->set('cors.paths.api/v1/*.allowedOrigins', $allowedOrigins); + } catch (Exception $e) { + // Don't throw any errors, we may not be setup yet. + } + + // Override default app values. + $this->app->config->set('app.url', $appDomain ?: $this->app->config->get('app.url')); + $this->app->config->set('app.locale', $appLocale ?: $this->app->config->get('app.locale')); + + // Set custom lang. + $this->app->translator->setLocale($appLocale); + } + + /** + * Register the service provider. + * + * @return void */ public function register() { - config([ - // - ]); + $this->app->bindShared('setting', function () { + return new Repository(new SettingModel()); + }); } } diff --git a/app/Providers/ConsoleServiceProvider.php b/app/Providers/ConsoleServiceProvider.php index 0124c373..56a48214 100644 --- a/app/Providers/ConsoleServiceProvider.php +++ b/app/Providers/ConsoleServiceProvider.php @@ -16,16 +16,10 @@ use Illuminate\Support\ServiceProvider; class ConsoleServiceProvider extends ServiceProvider { - /** - * Boot the service provider. - */ - public function boot() - { - // - } - /** * Register the service provider. + * + * @return void */ public function register() { diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index d40a62af..c692d721 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -26,16 +26,4 @@ class EventServiceProvider extends ServiceProvider 'EventListener', ], ]; - - /** - * Register any other events for your application. - * - * @param \Illuminate\Contracts\Events\Dispatcher $events - */ - public function boot(DispatcherContract $events) - { - parent::boot($events); - - // - } } diff --git a/app/Providers/LoadConfigServiceProvider.php b/app/Providers/LoadConfigServiceProvider.php deleted file mode 100644 index 3c418460..00000000 --- a/app/Providers/LoadConfigServiceProvider.php +++ /dev/null @@ -1,72 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace CachetHQ\Cachet\Providers; - -use CachetHQ\Cachet\Facades\Setting; -use Exception; -use Illuminate\Support\ServiceProvider; - -class LoadConfigServiceProvider extends ServiceProvider -{ - /** - * Boot the service provider. - */ - public function boot() - { - $appDomain = $appLocale = null; - - try { - // Get app custom configuration. - $appDomain = Setting::get('app_domain'); - $appLocale = Setting::get('app_locale'); - - // Set the Segment.com settings. - if (Setting::get('app_track')) { - $segmentRepository = $this->app->make('CachetHQ\Cachet\Segment\RepositoryInterface'); - $this->app->config->set('segment.write_key', $segmentRepository->fetch()); - } - - // Setup Cors. - $allowedOrigins = $this->app->config->get('cors.defaults.allowedOrigins'); - $allowedOrigins[] = Setting::get('app_domain'); - - // Add our allowed domains too. - if ($allowedDomains = Setting::get('allowed_domains')) { - $domains = explode(',', $allowedDomains); - foreach ($domains as $domain) { - $allowedOrigins[] = $domain; - } - } else { - $allowedOrigins[] = env('APP_URL'); - } - - $this->app->config->set('cors.paths.api/v1/*.allowedOrigins', $allowedOrigins); - } catch (Exception $e) { - // Don't throw any errors, we may not be setup yet. - } - - // Override default app values. - $this->app->config->set('app.url', $appDomain ?: $this->app->config->get('app.url')); - $this->app->config->set('app.locale', $appLocale ?: $this->app->config->get('app.locale')); - - // Set custom lang. - $this->app->translator->setLocale($appLocale); - } - - /** - * Register the service provider. - */ - public function register() - { - // - } -} diff --git a/app/Providers/RepositoryServiceProvider.php b/app/Providers/RepositoryServiceProvider.php index 635028c0..53f5d3d5 100644 --- a/app/Providers/RepositoryServiceProvider.php +++ b/app/Providers/RepositoryServiceProvider.php @@ -15,16 +15,10 @@ use Illuminate\Support\ServiceProvider; class RepositoryServiceProvider extends ServiceProvider { - /** - * Boot the service provider. - */ - public function boot() - { - // - } - /** * Register the service provider. + * + * @return void */ public function register() { diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index c4c3fdcf..4c161470 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -26,9 +26,11 @@ class RouteServiceProvider extends ServiceProvider protected $namespace = 'CachetHQ\Cachet\Http\Controllers'; /** - * Define your route model bindings, pattern filters, etc. + * Define the route model bindings, pattern filters, etc. * * @param \Illuminate\Routing\Router $router + * + * @return void */ public function boot(Router $router) { @@ -39,6 +41,8 @@ class RouteServiceProvider extends ServiceProvider /** * Register model bindings. + * + * @return void */ protected function registerBindings() { @@ -56,6 +60,8 @@ class RouteServiceProvider extends ServiceProvider * Define the routes for the application. * * @param \Illuminate\Routing\Router $router + * + * @return void */ public function map(Router $router) { diff --git a/app/Providers/SegmentApiServiceProvider.php b/app/Providers/SegmentServiceProvider.php similarity index 84% rename from app/Providers/SegmentApiServiceProvider.php rename to app/Providers/SegmentServiceProvider.php index cca90ff4..40280b28 100644 --- a/app/Providers/SegmentApiServiceProvider.php +++ b/app/Providers/SegmentServiceProvider.php @@ -16,18 +16,12 @@ use CachetHQ\Cachet\Segment\HttpRepository; use GuzzleHttp\Client; use Illuminate\Support\ServiceProvider; -class SegmentApiServiceProvider extends ServiceProvider +class SegmentServiceProvider extends ServiceProvider { - /** - * Boot the service provider. - */ - public function boot() - { - // - } - /** * Register the service provider. + * + * @return void */ public function register() { diff --git a/app/Providers/SettingsServiceProvider.php b/app/Providers/SettingsServiceProvider.php deleted file mode 100644 index e99cd40b..00000000 --- a/app/Providers/SettingsServiceProvider.php +++ /dev/null @@ -1,37 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace CachetHQ\Cachet\Providers; - -use CachetHQ\Cachet\Config\Repository; -use CachetHQ\Cachet\Models\Setting as SettingModel; -use Illuminate\Support\ServiceProvider; - -class SettingsServiceProvider extends ServiceProvider -{ - /** - * Boot the service provider. - */ - public function boot() - { - // - } - - /** - * Register the service provider. - */ - public function register() - { - $this->app->bindShared('setting', function () { - return new Repository(new SettingModel()); - }); - } -} diff --git a/app/Providers/ViewComposerServiceProvider.php b/app/Providers/ViewComposerServiceProvider.php deleted file mode 100644 index a60647bd..00000000 --- a/app/Providers/ViewComposerServiceProvider.php +++ /dev/null @@ -1,40 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace CachetHQ\Cachet\Providers; - -use Illuminate\Support\ServiceProvider; - -class ViewComposerServiceProvider extends ServiceProvider -{ - /** - * Boot the service provider. - */ - public function boot() - { - // - } - - /** - * Register the service provider. - */ - public function register() - { - $this->app->view->composer('*', 'CachetHQ\Cachet\Composers\LoggedUserComposer'); - $this->app->view->composer('index', 'CachetHQ\Cachet\Composers\IndexComposer'); - $this->app->view->composer('index', 'CachetHQ\Cachet\Composers\ThemeComposer'); - $this->app->view->composer('dashboard.*', 'CachetHQ\Cachet\Composers\DashboardComposer'); - $this->app->view->composer([ - 'setup', - 'dashboard.settings.app-setup', - ], 'CachetHQ\Cachet\Composers\TimezoneLocaleComposer'); - } -} diff --git a/config/app.php b/config/app.php index 592fbcb9..223fcbc0 100644 --- a/config/app.php +++ b/config/app.php @@ -165,15 +165,13 @@ return [ */ 'CachetHQ\Cachet\Providers\AppServiceProvider', 'CachetHQ\Cachet\Providers\BusServiceProvider', + 'CachetHQ\Cachet\Providers\ComposerServiceProvider', 'CachetHQ\Cachet\Providers\ConfigServiceProvider', 'CachetHQ\Cachet\Providers\ConsoleServiceProvider', 'CachetHQ\Cachet\Providers\EventServiceProvider', 'CachetHQ\Cachet\Providers\RepositoryServiceProvider', 'CachetHQ\Cachet\Providers\RouteServiceProvider', - 'CachetHQ\Cachet\Providers\SettingsServiceProvider', - 'CachetHQ\Cachet\Providers\SegmentApiServiceProvider', - 'CachetHQ\Cachet\Providers\ViewComposerServiceProvider', - 'CachetHQ\Cachet\Providers\LoadConfigServiceProvider', + 'CachetHQ\Cachet\Providers\SegmentServiceProvider', 'CachetHQ\Segment\SegmentServiceProvider', ],