Вход Регистрация
Файл: gapps/vendor/laravel/framework/src/Illuminate/Foundation/Providers/ArtisanServiceProvider.php
Строк: 796
<?php

namespace IlluminateFoundationProviders;

use 
IlluminateSupportServiceProvider;
use 
IlluminateQueueConsoleTableCommand;
use 
IlluminateAuthConsoleMakeAuthCommand;
use 
IlluminateFoundationConsoleUpCommand;
use 
IlluminateFoundationConsoleDownCommand;
use 
IlluminateAuthConsoleClearResetsCommand;
use 
IlluminateFoundationConsoleServeCommand;
use 
IlluminateCacheConsoleCacheTableCommand;
use 
IlluminateQueueConsoleFailedTableCommand;
use 
IlluminateFoundationConsoleTinkerCommand;
use 
IlluminateFoundationConsoleJobMakeCommand;
use 
IlluminateFoundationConsoleAppNameCommand;
use 
IlluminateFoundationConsoleOptimizeCommand;
use 
IlluminateFoundationConsoleTestMakeCommand;
use 
IlluminateFoundationConsoleRouteListCommand;
use 
IlluminateFoundationConsoleEventMakeCommand;
use 
IlluminateFoundationConsoleModelMakeCommand;
use 
IlluminateFoundationConsoleViewClearCommand;
use 
IlluminateSessionConsoleSessionTableCommand;
use 
IlluminateFoundationConsolePolicyMakeCommand;
use 
IlluminateFoundationConsoleRouteCacheCommand;
use 
IlluminateFoundationConsoleRouteClearCommand;
use 
IlluminateRoutingConsoleControllerMakeCommand;
use 
IlluminateRoutingConsoleMiddlewareMakeCommand;
use 
IlluminateFoundationConsoleConfigCacheCommand;
use 
IlluminateFoundationConsoleConfigClearCommand;
use 
IlluminateFoundationConsoleConsoleMakeCommand;
use 
IlluminateFoundationConsoleEnvironmentCommand;
use 
IlluminateFoundationConsoleKeyGenerateCommand;
use 
IlluminateFoundationConsoleRequestMakeCommand;
use 
IlluminateFoundationConsoleListenerMakeCommand;
use 
IlluminateFoundationConsoleProviderMakeCommand;
use 
IlluminateFoundationConsoleClearCompiledCommand;
use 
IlluminateFoundationConsoleEventGenerateCommand;
use 
IlluminateFoundationConsoleVendorPublishCommand;
use 
IlluminateDatabaseConsoleSeedsSeederMakeCommand;

class 
ArtisanServiceProvider extends ServiceProvider
{
    
/**
     * Indicates if loading of the provider is deferred.
     *
     * @var bool
     */
    
protected $defer true;

    
/**
     * The commands to be registered.
     *
     * @var array
     */
    
protected $commands = [
        
'ClearCompiled' => 'command.clear-compiled',
        
'ClearResets' => 'command.auth.resets.clear',
        
'ConfigCache' => 'command.config.cache',
        
'ConfigClear' => 'command.config.clear',
        
'Down' => 'command.down',
        
'Environment' => 'command.environment',
        
'KeyGenerate' => 'command.key.generate',
        
'Optimize' => 'command.optimize',
        
'RouteCache' => 'command.route.cache',
        
'RouteClear' => 'command.route.clear',
        
'RouteList' => 'command.route.list',
        
'Tinker' => 'command.tinker',
        
'Up' => 'command.up',
        
'ViewClear' => 'command.view.clear',
    ];

    
/**
     * The commands to be registered.
     *
     * @var array
     */
    
protected $devCommands = [
        
'AppName' => 'command.app.name',
        
'AuthMake' => 'command.auth.make',
        
'CacheTable' => 'command.cache.table',
        
'ConsoleMake' => 'command.console.make',
        
'ControllerMake' => 'command.controller.make',
        
'EventGenerate' => 'command.event.generate',
        
'EventMake' => 'command.event.make',
        
'JobMake' => 'command.job.make',
        
'ListenerMake' => 'command.listener.make',
        
'MiddlewareMake' => 'command.middleware.make',
        
'ModelMake' => 'command.model.make',
        
'PolicyMake' => 'command.policy.make',
        
'ProviderMake' => 'command.provider.make',
        
'QueueFailedTable' => 'command.queue.failed-table',
        
'QueueTable' => 'command.queue.table',
        
'RequestMake' => 'command.request.make',
        
'SeederMake' => 'command.seeder.make',
        
'SessionTable' => 'command.session.table',
        
'Serve' => 'command.serve',
        
'TestMake' => 'command.test.make',
        
'VendorPublish' => 'command.vendor.publish',
    ];

    
/**
     * Register the service provider.
     *
     * @return void
     */
    
public function register()
    {
        
$this->registerCommands($this->commands);

        
$this->registerCommands($this->devCommands);
    }

    
/**
     * Register the given commands.
     *
     * @param  array  $commands
     * @return void
     */
    
protected function registerCommands(array $commands)
    {
        foreach (
array_keys($commands) as $command) {
            
$method "register{$command}Command";

            
call_user_func_array([$this$method], []);
        }

        
$this->commands(array_values($commands));
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerAppNameCommand()
    {
        
$this->app->singleton('command.app.name', function ($app) {
            return new 
AppNameCommand($app['composer'], $app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerAuthMakeCommand()
    {
        
$this->app->singleton('command.auth.make', function ($app) {
            return new 
MakeAuthCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerCacheTableCommand()
    {
        
$this->app->singleton('command.cache.table', function ($app) {
            return new 
CacheTableCommand($app['files'], $app['composer']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerClearCompiledCommand()
    {
        
$this->app->singleton('command.clear-compiled', function () {
            return new 
ClearCompiledCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerClearResetsCommand()
    {
        
$this->app->singleton('command.auth.resets.clear', function () {
            return new 
ClearResetsCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerConfigCacheCommand()
    {
        
$this->app->singleton('command.config.cache', function ($app) {
            return new 
ConfigCacheCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerConfigClearCommand()
    {
        
$this->app->singleton('command.config.clear', function ($app) {
            return new 
ConfigClearCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerConsoleMakeCommand()
    {
        
$this->app->singleton('command.console.make', function ($app) {
            return new 
ConsoleMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerControllerMakeCommand()
    {
        
$this->app->singleton('command.controller.make', function ($app) {
            return new 
ControllerMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerEventGenerateCommand()
    {
        
$this->app->singleton('command.event.generate', function () {
            return new 
EventGenerateCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerEventMakeCommand()
    {
        
$this->app->singleton('command.event.make', function ($app) {
            return new 
EventMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerDownCommand()
    {
        
$this->app->singleton('command.down', function () {
            return new 
DownCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerEnvironmentCommand()
    {
        
$this->app->singleton('command.environment', function () {
            return new 
EnvironmentCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerJobMakeCommand()
    {
        
$this->app->singleton('command.job.make', function ($app) {
            return new 
JobMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerKeyGenerateCommand()
    {
        
$this->app->singleton('command.key.generate', function () {
            return new 
KeyGenerateCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerListenerMakeCommand()
    {
        
$this->app->singleton('command.listener.make', function ($app) {
            return new 
ListenerMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerMiddlewareMakeCommand()
    {
        
$this->app->singleton('command.middleware.make', function ($app) {
            return new 
MiddlewareMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerModelMakeCommand()
    {
        
$this->app->singleton('command.model.make', function ($app) {
            return new 
ModelMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerOptimizeCommand()
    {
        
$this->app->singleton('command.optimize', function ($app) {
            return new 
OptimizeCommand($app['composer']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerProviderMakeCommand()
    {
        
$this->app->singleton('command.provider.make', function ($app) {
            return new 
ProviderMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerQueueFailedTableCommand()
    {
        
$this->app->singleton('command.queue.failed-table', function ($app) {
            return new 
FailedTableCommand($app['files'], $app['composer']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerQueueTableCommand()
    {
        
$this->app->singleton('command.queue.table', function ($app) {
            return new 
TableCommand($app['files'], $app['composer']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerRequestMakeCommand()
    {
        
$this->app->singleton('command.request.make', function ($app) {
            return new 
RequestMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerSeederMakeCommand()
    {
        
$this->app->singleton('command.seeder.make', function ($app) {
            return new 
SeederMakeCommand($app['files'], $app['composer']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerSessionTableCommand()
    {
        
$this->app->singleton('command.session.table', function ($app) {
            return new 
SessionTableCommand($app['files'], $app['composer']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerRouteCacheCommand()
    {
        
$this->app->singleton('command.route.cache', function ($app) {
            return new 
RouteCacheCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerRouteClearCommand()
    {
        
$this->app->singleton('command.route.clear', function ($app) {
            return new 
RouteClearCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerRouteListCommand()
    {
        
$this->app->singleton('command.route.list', function ($app) {
            return new 
RouteListCommand($app['router']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerServeCommand()
    {
        
$this->app->singleton('command.serve', function () {
            return new 
ServeCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerTestMakeCommand()
    {
        
$this->app->singleton('command.test.make', function ($app) {
            return new 
TestMakeCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerTinkerCommand()
    {
        
$this->app->singleton('command.tinker', function () {
            return new 
TinkerCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerUpCommand()
    {
        
$this->app->singleton('command.up', function () {
            return new 
UpCommand;
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerVendorPublishCommand()
    {
        
$this->app->singleton('command.vendor.publish', function ($app) {
            return new 
VendorPublishCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerViewClearCommand()
    {
        
$this->app->singleton('command.view.clear', function ($app) {
            return new 
ViewClearCommand($app['files']);
        });
    }

    
/**
     * Register the command.
     *
     * @return void
     */
    
protected function registerPolicyMakeCommand()
    {
        
$this->app->singleton('command.policy.make', function ($app) {
            return new 
PolicyMakeCommand($app['files']);
        });
    }

    
/**
     * Get the services provided by the provider.
     *
     * @return array
     */
    
public function provides()
    {
        if (
$this->app->environment('production')) {
            return 
array_values($this->commands);
        } else {
            return 
array_merge(array_values($this->commands), array_values($this->devCommands));
        }
    }
}
Онлайн: 1
Реклама