ForRo/app/Providers/AppServiceProvider.php

58 lines
1.5 KiB
PHP
Raw Normal View History

<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use App\Repositories\LocationRepository;
use App\Repositories\SourceRepository;
use App\Repositories\MemberRepository;
use App\Services\UpdateService;
use App\Services\MaintenanceService;
use App\Models\Location;
use App\Models\Source;
use App\Models\Member;
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(MemberRepository::class, function ($app) {
return new MemberRepository(new Member());
});
$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
{
//
}
}