<?php namespace App\Providers; use Illuminate\Support\ServiceProvider; use App\Repositories\LocationRepository; use App\Repositories\SourceRepository; use App\Services\UpdateService; use App\Services\MaintenanceService; use App\Models\Location; use App\Models\Source; class AppServiceProvider extends ServiceProvider { /** * Register any application services. */ public function register(): void { $this->app->bind(LocationRepository::class, function ($app) { return new LocationRepository(new Location()); }); $this->app->bind(SourceRepository::class, function ($app) { return new SourceRepository(new Source()); }); $this->app->bind(UpdateService::class, function ($app) { return new UpdateService( new LocationRepository(new Location()), new SourceRepository(new Source()) ); }); $this->app->bind(MaintenanceService::class, function ($app) { return new MaintenanceService(new Location()); }); $this->app->bind(PaginationService::class, function ($app) { return new PaginationService(new Location()); }); } /** * Bootstrap any application services. */ public function boot(): void { // } }