Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php
2
 
3
namespace Illuminate\Foundation\Providers;
4
 
5
use Illuminate\Auth\Console\ClearResetsCommand;
6
use Illuminate\Cache\Console\CacheTableCommand;
7
use Illuminate\Cache\Console\ClearCommand as CacheClearCommand;
8
use Illuminate\Cache\Console\ForgetCommand as CacheForgetCommand;
9
use Illuminate\Console\Scheduling\ScheduleClearCacheCommand;
10
use Illuminate\Console\Scheduling\ScheduleFinishCommand;
11
use Illuminate\Console\Scheduling\ScheduleListCommand;
12
use Illuminate\Console\Scheduling\ScheduleRunCommand;
13
use Illuminate\Console\Scheduling\ScheduleTestCommand;
14
use Illuminate\Console\Scheduling\ScheduleWorkCommand;
15
use Illuminate\Console\Signals;
16
use Illuminate\Contracts\Support\DeferrableProvider;
17
use Illuminate\Database\Console\DbCommand;
18
use Illuminate\Database\Console\DumpCommand;
19
use Illuminate\Database\Console\Factories\FactoryMakeCommand;
20
use Illuminate\Database\Console\MonitorCommand as DatabaseMonitorCommand;
21
use Illuminate\Database\Console\PruneCommand;
22
use Illuminate\Database\Console\Seeds\SeedCommand;
23
use Illuminate\Database\Console\Seeds\SeederMakeCommand;
24
use Illuminate\Database\Console\ShowCommand;
25
use Illuminate\Database\Console\TableCommand as DatabaseTableCommand;
26
use Illuminate\Database\Console\WipeCommand;
27
use Illuminate\Foundation\Console\AboutCommand;
28
use Illuminate\Foundation\Console\CastMakeCommand;
29
use Illuminate\Foundation\Console\ChannelMakeCommand;
30
use Illuminate\Foundation\Console\ClearCompiledCommand;
31
use Illuminate\Foundation\Console\ComponentMakeCommand;
32
use Illuminate\Foundation\Console\ConfigCacheCommand;
33
use Illuminate\Foundation\Console\ConfigClearCommand;
34
use Illuminate\Foundation\Console\ConsoleMakeCommand;
35
use Illuminate\Foundation\Console\DocsCommand;
36
use Illuminate\Foundation\Console\DownCommand;
37
use Illuminate\Foundation\Console\EnvironmentCommand;
38
use Illuminate\Foundation\Console\EnvironmentDecryptCommand;
39
use Illuminate\Foundation\Console\EnvironmentEncryptCommand;
40
use Illuminate\Foundation\Console\EventCacheCommand;
41
use Illuminate\Foundation\Console\EventClearCommand;
42
use Illuminate\Foundation\Console\EventGenerateCommand;
43
use Illuminate\Foundation\Console\EventListCommand;
44
use Illuminate\Foundation\Console\EventMakeCommand;
45
use Illuminate\Foundation\Console\ExceptionMakeCommand;
46
use Illuminate\Foundation\Console\JobMakeCommand;
47
use Illuminate\Foundation\Console\KeyGenerateCommand;
48
use Illuminate\Foundation\Console\ListenerMakeCommand;
49
use Illuminate\Foundation\Console\MailMakeCommand;
50
use Illuminate\Foundation\Console\ModelMakeCommand;
51
use Illuminate\Foundation\Console\NotificationMakeCommand;
52
use Illuminate\Foundation\Console\ObserverMakeCommand;
53
use Illuminate\Foundation\Console\OptimizeClearCommand;
54
use Illuminate\Foundation\Console\OptimizeCommand;
55
use Illuminate\Foundation\Console\PackageDiscoverCommand;
56
use Illuminate\Foundation\Console\PolicyMakeCommand;
57
use Illuminate\Foundation\Console\ProviderMakeCommand;
58
use Illuminate\Foundation\Console\RequestMakeCommand;
59
use Illuminate\Foundation\Console\ResourceMakeCommand;
60
use Illuminate\Foundation\Console\RouteCacheCommand;
61
use Illuminate\Foundation\Console\RouteClearCommand;
62
use Illuminate\Foundation\Console\RouteListCommand;
63
use Illuminate\Foundation\Console\RuleMakeCommand;
64
use Illuminate\Foundation\Console\ScopeMakeCommand;
65
use Illuminate\Foundation\Console\ServeCommand;
66
use Illuminate\Foundation\Console\ShowModelCommand;
67
use Illuminate\Foundation\Console\StorageLinkCommand;
68
use Illuminate\Foundation\Console\StubPublishCommand;
69
use Illuminate\Foundation\Console\TestMakeCommand;
70
use Illuminate\Foundation\Console\UpCommand;
71
use Illuminate\Foundation\Console\VendorPublishCommand;
72
use Illuminate\Foundation\Console\ViewCacheCommand;
73
use Illuminate\Foundation\Console\ViewClearCommand;
74
use Illuminate\Notifications\Console\NotificationTableCommand;
75
use Illuminate\Queue\Console\BatchesTableCommand;
76
use Illuminate\Queue\Console\ClearCommand as QueueClearCommand;
77
use Illuminate\Queue\Console\FailedTableCommand;
78
use Illuminate\Queue\Console\FlushFailedCommand as FlushFailedQueueCommand;
79
use Illuminate\Queue\Console\ForgetFailedCommand as ForgetFailedQueueCommand;
80
use Illuminate\Queue\Console\ListenCommand as QueueListenCommand;
81
use Illuminate\Queue\Console\ListFailedCommand as ListFailedQueueCommand;
82
use Illuminate\Queue\Console\MonitorCommand as QueueMonitorCommand;
83
use Illuminate\Queue\Console\PruneBatchesCommand as QueuePruneBatchesCommand;
84
use Illuminate\Queue\Console\PruneFailedJobsCommand as QueuePruneFailedJobsCommand;
85
use Illuminate\Queue\Console\RestartCommand as QueueRestartCommand;
86
use Illuminate\Queue\Console\RetryBatchCommand as QueueRetryBatchCommand;
87
use Illuminate\Queue\Console\RetryCommand as QueueRetryCommand;
88
use Illuminate\Queue\Console\TableCommand;
89
use Illuminate\Queue\Console\WorkCommand as QueueWorkCommand;
90
use Illuminate\Routing\Console\ControllerMakeCommand;
91
use Illuminate\Routing\Console\MiddlewareMakeCommand;
92
use Illuminate\Session\Console\SessionTableCommand;
93
use Illuminate\Support\ServiceProvider;
94
 
95
class ArtisanServiceProvider extends ServiceProvider implements DeferrableProvider
96
{
97
    /**
98
     * The commands to be registered.
99
     *
100
     * @var array
101
     */
102
    protected $commands = [
103
        'About' => AboutCommand::class,
104
        'CacheClear' => CacheClearCommand::class,
105
        'CacheForget' => CacheForgetCommand::class,
106
        'ClearCompiled' => ClearCompiledCommand::class,
107
        'ClearResets' => ClearResetsCommand::class,
108
        'ConfigCache' => ConfigCacheCommand::class,
109
        'ConfigClear' => ConfigClearCommand::class,
110
        'Db' => DbCommand::class,
111
        'DbMonitor' => DatabaseMonitorCommand::class,
112
        'DbPrune' => PruneCommand::class,
113
        'DbShow' => ShowCommand::class,
114
        'DbTable' => DatabaseTableCommand::class,
115
        'DbWipe' => WipeCommand::class,
116
        'Down' => DownCommand::class,
117
        'Environment' => EnvironmentCommand::class,
118
        'EnvironmentDecrypt' => EnvironmentDecryptCommand::class,
119
        'EnvironmentEncrypt' => EnvironmentEncryptCommand::class,
120
        'EventCache' => EventCacheCommand::class,
121
        'EventClear' => EventClearCommand::class,
122
        'EventList' => EventListCommand::class,
123
        'KeyGenerate' => KeyGenerateCommand::class,
124
        'Optimize' => OptimizeCommand::class,
125
        'OptimizeClear' => OptimizeClearCommand::class,
126
        'PackageDiscover' => PackageDiscoverCommand::class,
127
        'QueueClear' => QueueClearCommand::class,
128
        'QueueFailed' => ListFailedQueueCommand::class,
129
        'QueueFlush' => FlushFailedQueueCommand::class,
130
        'QueueForget' => ForgetFailedQueueCommand::class,
131
        'QueueListen' => QueueListenCommand::class,
132
        'QueueMonitor' => QueueMonitorCommand::class,
133
        'QueuePruneBatches' => QueuePruneBatchesCommand::class,
134
        'QueuePruneFailedJobs' => QueuePruneFailedJobsCommand::class,
135
        'QueueRestart' => QueueRestartCommand::class,
136
        'QueueRetry' => QueueRetryCommand::class,
137
        'QueueRetryBatch' => QueueRetryBatchCommand::class,
138
        'QueueWork' => QueueWorkCommand::class,
139
        'RouteCache' => RouteCacheCommand::class,
140
        'RouteClear' => RouteClearCommand::class,
141
        'RouteList' => RouteListCommand::class,
142
        'SchemaDump' => DumpCommand::class,
143
        'Seed' => SeedCommand::class,
144
        'ScheduleFinish' => ScheduleFinishCommand::class,
145
        'ScheduleList' => ScheduleListCommand::class,
146
        'ScheduleRun' => ScheduleRunCommand::class,
147
        'ScheduleClearCache' => ScheduleClearCacheCommand::class,
148
        'ScheduleTest' => ScheduleTestCommand::class,
149
        'ScheduleWork' => ScheduleWorkCommand::class,
150
        'ShowModel' => ShowModelCommand::class,
151
        'StorageLink' => StorageLinkCommand::class,
152
        'Up' => UpCommand::class,
153
        'ViewCache' => ViewCacheCommand::class,
154
        'ViewClear' => ViewClearCommand::class,
155
    ];
156
 
157
    /**
158
     * The commands to be registered.
159
     *
160
     * @var array
161
     */
162
    protected $devCommands = [
163
        'CacheTable' => CacheTableCommand::class,
164
        'CastMake' => CastMakeCommand::class,
165
        'ChannelMake' => ChannelMakeCommand::class,
166
        'ComponentMake' => ComponentMakeCommand::class,
167
        'ConsoleMake' => ConsoleMakeCommand::class,
168
        'ControllerMake' => ControllerMakeCommand::class,
169
        'Docs' => DocsCommand::class,
170
        'EventGenerate' => EventGenerateCommand::class,
171
        'EventMake' => EventMakeCommand::class,
172
        'ExceptionMake' => ExceptionMakeCommand::class,
173
        'FactoryMake' => FactoryMakeCommand::class,
174
        'JobMake' => JobMakeCommand::class,
175
        'ListenerMake' => ListenerMakeCommand::class,
176
        'MailMake' => MailMakeCommand::class,
177
        'MiddlewareMake' => MiddlewareMakeCommand::class,
178
        'ModelMake' => ModelMakeCommand::class,
179
        'NotificationMake' => NotificationMakeCommand::class,
180
        'NotificationTable' => NotificationTableCommand::class,
181
        'ObserverMake' => ObserverMakeCommand::class,
182
        'PolicyMake' => PolicyMakeCommand::class,
183
        'ProviderMake' => ProviderMakeCommand::class,
184
        'QueueFailedTable' => FailedTableCommand::class,
185
        'QueueTable' => TableCommand::class,
186
        'QueueBatchesTable' => BatchesTableCommand::class,
187
        'RequestMake' => RequestMakeCommand::class,
188
        'ResourceMake' => ResourceMakeCommand::class,
189
        'RuleMake' => RuleMakeCommand::class,
190
        'ScopeMake' => ScopeMakeCommand::class,
191
        'SeederMake' => SeederMakeCommand::class,
192
        'SessionTable' => SessionTableCommand::class,
193
        'Serve' => ServeCommand::class,
194
        'StubPublish' => StubPublishCommand::class,
195
        'TestMake' => TestMakeCommand::class,
196
        'VendorPublish' => VendorPublishCommand::class,
197
    ];
198
 
199
    /**
200
     * Register the service provider.
201
     *
202
     * @return void
203
     */
204
    public function register()
205
    {
206
        $this->registerCommands(array_merge(
207
            $this->commands,
208
            $this->devCommands
209
        ));
210
 
211
        Signals::resolveAvailabilityUsing(function () {
212
            return $this->app->runningInConsole()
213
                && ! $this->app->runningUnitTests()
214
                && extension_loaded('pcntl');
215
        });
216
    }
217
 
218
    /**
219
     * Register the given commands.
220
     *
221
     * @param  array  $commands
222
     * @return void
223
     */
224
    protected function registerCommands(array $commands)
225
    {
226
        foreach ($commands as $commandName => $command) {
227
            $method = "register{$commandName}Command";
228
 
229
            if (method_exists($this, $method)) {
230
                $this->{$method}();
231
            } else {
232
                $this->app->singleton($command);
233
            }
234
        }
235
 
236
        $this->commands(array_values($commands));
237
    }
238
 
239
    /**
240
     * Register the command.
241
     *
242
     * @return void
243
     */
244
    protected function registerAboutCommand()
245
    {
246
        $this->app->singleton(AboutCommand::class, function ($app) {
247
            return new AboutCommand($app['composer']);
248
        });
249
    }
250
 
251
    /**
252
     * Register the command.
253
     *
254
     * @return void
255
     */
256
    protected function registerCacheClearCommand()
257
    {
258
        $this->app->singleton(CacheClearCommand::class, function ($app) {
259
            return new CacheClearCommand($app['cache'], $app['files']);
260
        });
261
    }
262
 
263
    /**
264
     * Register the command.
265
     *
266
     * @return void
267
     */
268
    protected function registerCacheForgetCommand()
269
    {
270
        $this->app->singleton(CacheForgetCommand::class, function ($app) {
271
            return new CacheForgetCommand($app['cache']);
272
        });
273
    }
274
 
275
    /**
276
     * Register the command.
277
     *
278
     * @return void
279
     */
280
    protected function registerCacheTableCommand()
281
    {
282
        $this->app->singleton(CacheTableCommand::class, function ($app) {
283
            return new CacheTableCommand($app['files'], $app['composer']);
284
        });
285
    }
286
 
287
    /**
288
     * Register the command.
289
     *
290
     * @return void
291
     */
292
    protected function registerCastMakeCommand()
293
    {
294
        $this->app->singleton(CastMakeCommand::class, function ($app) {
295
            return new CastMakeCommand($app['files']);
296
        });
297
    }
298
 
299
    /**
300
     * Register the command.
301
     *
302
     * @return void
303
     */
304
    protected function registerChannelMakeCommand()
305
    {
306
        $this->app->singleton(ChannelMakeCommand::class, function ($app) {
307
            return new ChannelMakeCommand($app['files']);
308
        });
309
    }
310
 
311
    /**
312
     * Register the command.
313
     *
314
     * @return void
315
     */
316
    protected function registerComponentMakeCommand()
317
    {
318
        $this->app->singleton(ComponentMakeCommand::class, function ($app) {
319
            return new ComponentMakeCommand($app['files']);
320
        });
321
    }
322
 
323
    /**
324
     * Register the command.
325
     *
326
     * @return void
327
     */
328
    protected function registerConfigCacheCommand()
329
    {
330
        $this->app->singleton(ConfigCacheCommand::class, function ($app) {
331
            return new ConfigCacheCommand($app['files']);
332
        });
333
    }
334
 
335
    /**
336
     * Register the command.
337
     *
338
     * @return void
339
     */
340
    protected function registerConfigClearCommand()
341
    {
342
        $this->app->singleton(ConfigClearCommand::class, function ($app) {
343
            return new ConfigClearCommand($app['files']);
344
        });
345
    }
346
 
347
    /**
348
     * Register the command.
349
     *
350
     * @return void
351
     */
352
    protected function registerConsoleMakeCommand()
353
    {
354
        $this->app->singleton(ConsoleMakeCommand::class, function ($app) {
355
            return new ConsoleMakeCommand($app['files']);
356
        });
357
    }
358
 
359
    /**
360
     * Register the command.
361
     *
362
     * @return void
363
     */
364
    protected function registerControllerMakeCommand()
365
    {
366
        $this->app->singleton(ControllerMakeCommand::class, function ($app) {
367
            return new ControllerMakeCommand($app['files']);
368
        });
369
    }
370
 
371
    /**
372
     * Register the command.
373
     *
374
     * @return void
375
     */
376
    protected function registerEventMakeCommand()
377
    {
378
        $this->app->singleton(EventMakeCommand::class, function ($app) {
379
            return new EventMakeCommand($app['files']);
380
        });
381
    }
382
 
383
    /**
384
     * Register the command.
385
     *
386
     * @return void
387
     */
388
    protected function registerExceptionMakeCommand()
389
    {
390
        $this->app->singleton(ExceptionMakeCommand::class, function ($app) {
391
            return new ExceptionMakeCommand($app['files']);
392
        });
393
    }
394
 
395
    /**
396
     * Register the command.
397
     *
398
     * @return void
399
     */
400
    protected function registerFactoryMakeCommand()
401
    {
402
        $this->app->singleton(FactoryMakeCommand::class, function ($app) {
403
            return new FactoryMakeCommand($app['files']);
404
        });
405
    }
406
 
407
    /**
408
     * Register the command.
409
     *
410
     * @return void
411
     */
412
    protected function registerEventClearCommand()
413
    {
414
        $this->app->singleton(EventClearCommand::class, function ($app) {
415
            return new EventClearCommand($app['files']);
416
        });
417
    }
418
 
419
    /**
420
     * Register the command.
421
     *
422
     * @return void
423
     */
424
    protected function registerJobMakeCommand()
425
    {
426
        $this->app->singleton(JobMakeCommand::class, function ($app) {
427
            return new JobMakeCommand($app['files']);
428
        });
429
    }
430
 
431
    /**
432
     * Register the command.
433
     *
434
     * @return void
435
     */
436
    protected function registerListenerMakeCommand()
437
    {
438
        $this->app->singleton(ListenerMakeCommand::class, function ($app) {
439
            return new ListenerMakeCommand($app['files']);
440
        });
441
    }
442
 
443
    /**
444
     * Register the command.
445
     *
446
     * @return void
447
     */
448
    protected function registerMailMakeCommand()
449
    {
450
        $this->app->singleton(MailMakeCommand::class, function ($app) {
451
            return new MailMakeCommand($app['files']);
452
        });
453
    }
454
 
455
    /**
456
     * Register the command.
457
     *
458
     * @return void
459
     */
460
    protected function registerMiddlewareMakeCommand()
461
    {
462
        $this->app->singleton(MiddlewareMakeCommand::class, function ($app) {
463
            return new MiddlewareMakeCommand($app['files']);
464
        });
465
    }
466
 
467
    /**
468
     * Register the command.
469
     *
470
     * @return void
471
     */
472
    protected function registerModelMakeCommand()
473
    {
474
        $this->app->singleton(ModelMakeCommand::class, function ($app) {
475
            return new ModelMakeCommand($app['files']);
476
        });
477
    }
478
 
479
    /**
480
     * Register the command.
481
     *
482
     * @return void
483
     */
484
    protected function registerNotificationMakeCommand()
485
    {
486
        $this->app->singleton(NotificationMakeCommand::class, function ($app) {
487
            return new NotificationMakeCommand($app['files']);
488
        });
489
    }
490
 
491
    /**
492
     * Register the command.
493
     *
494
     * @return void
495
     */
496
    protected function registerNotificationTableCommand()
497
    {
498
        $this->app->singleton(NotificationTableCommand::class, function ($app) {
499
            return new NotificationTableCommand($app['files'], $app['composer']);
500
        });
501
    }
502
 
503
    /**
504
     * Register the command.
505
     *
506
     * @return void
507
     */
508
    protected function registerObserverMakeCommand()
509
    {
510
        $this->app->singleton(ObserverMakeCommand::class, function ($app) {
511
            return new ObserverMakeCommand($app['files']);
512
        });
513
    }
514
 
515
    /**
516
     * Register the command.
517
     *
518
     * @return void
519
     */
520
    protected function registerPolicyMakeCommand()
521
    {
522
        $this->app->singleton(PolicyMakeCommand::class, function ($app) {
523
            return new PolicyMakeCommand($app['files']);
524
        });
525
    }
526
 
527
    /**
528
     * Register the command.
529
     *
530
     * @return void
531
     */
532
    protected function registerProviderMakeCommand()
533
    {
534
        $this->app->singleton(ProviderMakeCommand::class, function ($app) {
535
            return new ProviderMakeCommand($app['files']);
536
        });
537
    }
538
 
539
    /**
540
     * Register the command.
541
     *
542
     * @return void
543
     */
544
    protected function registerQueueForgetCommand()
545
    {
546
        $this->app->singleton(ForgetFailedQueueCommand::class);
547
    }
548
 
549
    /**
550
     * Register the command.
551
     *
552
     * @return void
553
     */
554
    protected function registerQueueListenCommand()
555
    {
556
        $this->app->singleton(QueueListenCommand::class, function ($app) {
557
            return new QueueListenCommand($app['queue.listener']);
558
        });
559
    }
560
 
561
    /**
562
     * Register the command.
563
     *
564
     * @return void
565
     */
566
    protected function registerQueueMonitorCommand()
567
    {
568
        $this->app->singleton(QueueMonitorCommand::class, function ($app) {
569
            return new QueueMonitorCommand($app['queue'], $app['events']);
570
        });
571
    }
572
 
573
    /**
574
     * Register the command.
575
     *
576
     * @return void
577
     */
578
    protected function registerQueuePruneBatchesCommand()
579
    {
580
        $this->app->singleton(QueuePruneBatchesCommand::class, function () {
581
            return new QueuePruneBatchesCommand;
582
        });
583
    }
584
 
585
    /**
586
     * Register the command.
587
     *
588
     * @return void
589
     */
590
    protected function registerQueuePruneFailedJobsCommand()
591
    {
592
        $this->app->singleton(QueuePruneFailedJobsCommand::class, function () {
593
            return new QueuePruneFailedJobsCommand;
594
        });
595
    }
596
 
597
    /**
598
     * Register the command.
599
     *
600
     * @return void
601
     */
602
    protected function registerQueueRestartCommand()
603
    {
604
        $this->app->singleton(QueueRestartCommand::class, function ($app) {
605
            return new QueueRestartCommand($app['cache.store']);
606
        });
607
    }
608
 
609
    /**
610
     * Register the command.
611
     *
612
     * @return void
613
     */
614
    protected function registerQueueWorkCommand()
615
    {
616
        $this->app->singleton(QueueWorkCommand::class, function ($app) {
617
            return new QueueWorkCommand($app['queue.worker'], $app['cache.store']);
618
        });
619
    }
620
 
621
    /**
622
     * Register the command.
623
     *
624
     * @return void
625
     */
626
    protected function registerQueueFailedTableCommand()
627
    {
628
        $this->app->singleton(FailedTableCommand::class, function ($app) {
629
            return new FailedTableCommand($app['files'], $app['composer']);
630
        });
631
    }
632
 
633
    /**
634
     * Register the command.
635
     *
636
     * @return void
637
     */
638
    protected function registerQueueTableCommand()
639
    {
640
        $this->app->singleton(TableCommand::class, function ($app) {
641
            return new TableCommand($app['files'], $app['composer']);
642
        });
643
    }
644
 
645
    /**
646
     * Register the command.
647
     *
648
     * @return void
649
     */
650
    protected function registerQueueBatchesTableCommand()
651
    {
652
        $this->app->singleton(BatchesTableCommand::class, function ($app) {
653
            return new BatchesTableCommand($app['files'], $app['composer']);
654
        });
655
    }
656
 
657
    /**
658
     * Register the command.
659
     *
660
     * @return void
661
     */
662
    protected function registerRequestMakeCommand()
663
    {
664
        $this->app->singleton(RequestMakeCommand::class, function ($app) {
665
            return new RequestMakeCommand($app['files']);
666
        });
667
    }
668
 
669
    /**
670
     * Register the command.
671
     *
672
     * @return void
673
     */
674
    protected function registerResourceMakeCommand()
675
    {
676
        $this->app->singleton(ResourceMakeCommand::class, function ($app) {
677
            return new ResourceMakeCommand($app['files']);
678
        });
679
    }
680
 
681
    /**
682
     * Register the command.
683
     *
684
     * @return void
685
     */
686
    protected function registerRuleMakeCommand()
687
    {
688
        $this->app->singleton(RuleMakeCommand::class, function ($app) {
689
            return new RuleMakeCommand($app['files']);
690
        });
691
    }
692
 
693
    /**
694
     * Register the command.
695
     *
696
     * @return void
697
     */
698
    protected function registerScopeMakeCommand()
699
    {
700
        $this->app->singleton(ScopeMakeCommand::class, function ($app) {
701
            return new ScopeMakeCommand($app['files']);
702
        });
703
    }
704
 
705
    /**
706
     * Register the command.
707
     *
708
     * @return void
709
     */
710
    protected function registerSeederMakeCommand()
711
    {
712
        $this->app->singleton(SeederMakeCommand::class, function ($app) {
713
            return new SeederMakeCommand($app['files'], $app['composer']);
714
        });
715
    }
716
 
717
    /**
718
     * Register the command.
719
     *
720
     * @return void
721
     */
722
    protected function registerSessionTableCommand()
723
    {
724
        $this->app->singleton(SessionTableCommand::class, function ($app) {
725
            return new SessionTableCommand($app['files'], $app['composer']);
726
        });
727
    }
728
 
729
    /**
730
     * Register the command.
731
     *
732
     * @return void
733
     */
734
    protected function registerRouteCacheCommand()
735
    {
736
        $this->app->singleton(RouteCacheCommand::class, function ($app) {
737
            return new RouteCacheCommand($app['files']);
738
        });
739
    }
740
 
741
    /**
742
     * Register the command.
743
     *
744
     * @return void
745
     */
746
    protected function registerRouteClearCommand()
747
    {
748
        $this->app->singleton(RouteClearCommand::class, function ($app) {
749
            return new RouteClearCommand($app['files']);
750
        });
751
    }
752
 
753
    /**
754
     * Register the command.
755
     *
756
     * @return void
757
     */
758
    protected function registerRouteListCommand()
759
    {
760
        $this->app->singleton(RouteListCommand::class, function ($app) {
761
            return new RouteListCommand($app['router']);
762
        });
763
    }
764
 
765
    /**
766
     * Register the command.
767
     *
768
     * @return void
769
     */
770
    protected function registerSeedCommand()
771
    {
772
        $this->app->singleton(SeedCommand::class, function ($app) {
773
            return new SeedCommand($app['db']);
774
        });
775
    }
776
 
777
    /**
778
     * Register the command.
779
     *
780
     * @return void
781
     */
782
    protected function registerTestMakeCommand()
783
    {
784
        $this->app->singleton(TestMakeCommand::class, function ($app) {
785
            return new TestMakeCommand($app['files']);
786
        });
787
    }
788
 
789
    /**
790
     * Register the command.
791
     *
792
     * @return void
793
     */
794
    protected function registerVendorPublishCommand()
795
    {
796
        $this->app->singleton(VendorPublishCommand::class, function ($app) {
797
            return new VendorPublishCommand($app['files']);
798
        });
799
    }
800
 
801
    /**
802
     * Register the command.
803
     *
804
     * @return void
805
     */
806
    protected function registerViewClearCommand()
807
    {
808
        $this->app->singleton(ViewClearCommand::class, function ($app) {
809
            return new ViewClearCommand($app['files']);
810
        });
811
    }
812
 
813
    /**
814
     * Get the services provided by the provider.
815
     *
816
     * @return array
817
     */
818
    public function provides()
819
    {
820
        return array_merge(array_values($this->commands), array_values($this->devCommands));
821
    }
822
}