refactor: move buspro XML protocol into XmlChannel
This commit is contained in:
1 parent
3c81c79819
commit
0a55544ca8
6 files changed
+348
-281
No files matched your search
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace App\BusProNet\Transport;
|
||||
|
||||
use App\Service\RequestIdGenerator;
|
||||
use Symfony\Component\HttpFoundation\RequestStack;
|
||||
|
||||
/**
|
||||
* Ids for BPN requests: the id of the current HTTP request, or a fresh one on the CLI, with a
|
||||
* running number, so the log entries and dumps of one page load can be found together.
|
||||
*/
|
||||
class RequestIdSequence
|
||||
{
|
||||
private int $counter = 0;
|
||||
|
||||
public function __construct(
|
||||
private readonly RequestStack $requestStack,
|
||||
private readonly RequestIdGenerator $requestIdGenerator,
|
||||
) {
|
||||
}
|
||||
|
||||
public function next(): string
|
||||
{
|
||||
$baseId = $this->requestStack->getMainRequest()?->attributes->get('request_id')
|
||||
?? $this->requestIdGenerator->generateBaseId();
|
||||
|
||||
return $baseId.'_'.++$this->counter;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user