|
2 | 2 |
|
3 | 3 | namespace Providers; |
4 | 4 |
|
5 | | -use API\Controllers\DataTablesController; |
6 | 5 | use ApiPlatform\State\ProcessorInterface; |
7 | 6 | use ApiPlatform\State\ProviderInterface; |
8 | 7 | use Illuminate\Support\ServiceProvider; |
9 | 8 | use Models\Locale; |
10 | | -use Modules\Impostazioni\API\Controllers\GetImpostazioneProvider; |
11 | | -use Modules\Impostazioni\API\Controllers\ListImpostazioniProvider; |
12 | | -use Modules\Impostazioni\API\Controllers\ListSezioniImpostazioniProvider; |
13 | | -use Modules\Impostazioni\API\Controllers\UpdateImpostazioneProcessor; |
14 | 9 |
|
15 | 10 | class AppServiceProvider extends ServiceProvider |
16 | 11 | { |
@@ -44,10 +39,16 @@ public function boot(): void |
44 | 39 | $translator->setLocale($lang, $formatter); |
45 | 40 | } |
46 | 41 |
|
47 | | - $this->app->tag(GetImpostazioneProvider::class, ProviderInterface::class); |
48 | | - $this->app->tag(UpdateImpostazioneProcessor::class, ProcessorInterface::class); |
49 | | - $this->app->tag(ListSezioniImpostazioniProvider::class, ProviderInterface::class); |
50 | | - $this->app->tag(ListImpostazioniProvider::class, ProviderInterface::class); |
51 | | - $this->app->tag(DataTablesController::class, ProcessorInterface::class); |
| 42 | + // Register all Providers and Processors from Modules and Plugins |
| 43 | + foreach (get_declared_classes() as $className) { |
| 44 | + if (str_contains($className, 'Modules\\') || str_contains($className, 'API\\') || str_contains($className, 'Plugins\\')) { |
| 45 | + if (in_array(ProviderInterface::class, class_implements($className))) { |
| 46 | + $this->app->tag($className, ProviderInterface::class); |
| 47 | + } |
| 48 | + if (in_array(ProcessorInterface::class, class_implements($className))) { |
| 49 | + $this->app->tag($className, ProcessorInterface::class); |
| 50 | + } |
| 51 | + } |
| 52 | + } |
52 | 53 | } |
53 | 54 | } |
0 commit comments