Skip to content

Commit 5306100

Browse files
Middleware is now automatically registered
1 parent a6c63b1 commit 5306100

2 files changed

Lines changed: 22 additions & 12 deletions

File tree

README.md

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,10 @@ php artisan vendor:publish --tag="tracker"
2727

2828
## Basic Usage
2929

30-
Register the middleware:
31-
32-
```php
33-
use DragonCode\LaravelRequestTracker\Http\Middleware\RequestTrackerMiddleware;
34-
use Illuminate\Foundation\Configuration\Middleware;
35-
36-
->withMiddleware(function (Middleware $middleware): void {
37-
$middleware->prepend(RequestTrackerMiddleware::class);
38-
})
39-
```
40-
4130
That's all 🙂
4231

32+
Middleware is automatically registered in the application kernel.
33+
4334
## How It Works
4435

4536
The middleware monitors request tracker headers in incoming requests and, when present,

src/LaravelRequestTrackerServiceProvider.php

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
namespace DragonCode\LaravelRequestTracker;
66

7+
use DragonCode\LaravelRequestTracker\Http\Middleware\RequestTrackerMiddleware;
78
use Illuminate\Support\ServiceProvider;
89

910
class LaravelRequestTrackerServiceProvider extends ServiceProvider
@@ -17,6 +18,24 @@ public function boot(): void
1718

1819
public function register(): void
1920
{
20-
$this->mergeConfigFrom(__DIR__ . '/../config/request-tracker.php', 'request-tracker');
21+
$this->registerConfig();
22+
$this->registerMiddleware();
23+
}
24+
25+
protected function registerConfig(): void
26+
{
27+
$this->mergeConfigFrom(
28+
__DIR__ . '/../config/request-tracker.php',
29+
'request-tracker'
30+
);
31+
}
32+
33+
protected function registerMiddleware(): void
34+
{
35+
$router = $this->app['router'];
36+
37+
foreach ($router->getMiddlewareGroups() as $name) {
38+
$router->prependMiddlewareToGroup($name, RequestTrackerMiddleware::class);
39+
}
2140
}
2241
}

0 commit comments

Comments
 (0)