Skip to content

Commit

Permalink
add streamName method into aggregate header
Browse files Browse the repository at this point in the history
  • Loading branch information
DavidBadura committed Jul 29, 2024
1 parent 362f1d9 commit b3a4671
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 17 deletions.
5 changes: 5 additions & 0 deletions src/Aggregate/AggregateHeader.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,9 @@ public function __construct(
public readonly DateTimeImmutable $recordedOn,
) {
}

public function streamName(): string
{
return StreamNameTranslator::streamName($this->aggregateName, $this->aggregateId);

Check failure on line 25 in src/Aggregate/AggregateHeader.php

View workflow job for this annotation

GitHub Actions / Static Analysis by Psalm (locked, 8.3, ubuntu-latest)

ImpureMethodCall

src/Aggregate/AggregateHeader.php:25:38: ImpureMethodCall: Cannot call a possibly-mutating method from a mutation-free context (see https://psalm.dev/203)
}
}
12 changes: 1 addition & 11 deletions src/Console/OutputStyle.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
namespace Patchlevel\EventSourcing\Console;

use Patchlevel\EventSourcing\Aggregate\AggregateHeader;
use Patchlevel\EventSourcing\Aggregate\StreamNameTranslator;
use Patchlevel\EventSourcing\Message\HeaderNotFound;
use Patchlevel\EventSourcing\Message\Message;
use Patchlevel\EventSourcing\Message\Serializer\HeadersSerializer;
Expand Down Expand Up @@ -71,7 +70,7 @@ public function message(
],
[

Check warning on line 71 in src/Console/OutputStyle.php

View workflow job for this annotation

GitHub Actions / Mutation tests on diff (locked, 8.3, ubuntu-latest)

Escaped Mutant for Mutator "ArrayItemRemoval": --- Original +++ New @@ @@ $streamStart = $message->hasHeader(StreamStartHeader::class); $achieved = $message->hasHeader(ArchivedHeader::class); $this->title($data->name); - $this->horizontalTable(['stream', 'playhead', 'recordedOn', 'streamStart', 'archived'], [[$metaHeader instanceof AggregateHeader ? $metaHeader->streamName() : $metaHeader->streamName, $metaHeader->playhead, $metaHeader->recordedOn?->format('Y-m-d H:i:s'), $streamStart ? 'yes' : 'no', $achieved ? 'yes' : 'no']]); + $this->horizontalTable(['stream', 'playhead', 'recordedOn', 'streamStart', 'archived'], []); if ($customHeaders !== []) { $this->block($headersSerializer->serialize(array_values($customHeaders))); }
[

Check warning on line 72 in src/Console/OutputStyle.php

View workflow job for this annotation

GitHub Actions / Mutation tests on diff (locked, 8.3, ubuntu-latest)

Escaped Mutant for Mutator "ArrayItemRemoval": --- Original +++ New @@ @@ $streamStart = $message->hasHeader(StreamStartHeader::class); $achieved = $message->hasHeader(ArchivedHeader::class); $this->title($data->name); - $this->horizontalTable(['stream', 'playhead', 'recordedOn', 'streamStart', 'archived'], [[$metaHeader instanceof AggregateHeader ? $metaHeader->streamName() : $metaHeader->streamName, $metaHeader->playhead, $metaHeader->recordedOn?->format('Y-m-d H:i:s'), $streamStart ? 'yes' : 'no', $achieved ? 'yes' : 'no']]); + $this->horizontalTable(['stream', 'playhead', 'recordedOn', 'streamStart', 'archived'], [[$metaHeader->playhead, $metaHeader->recordedOn?->format('Y-m-d H:i:s'), $streamStart ? 'yes' : 'no', $achieved ? 'yes' : 'no']]); if ($customHeaders !== []) { $this->block($headersSerializer->serialize(array_values($customHeaders))); }
$this->streamName($metaHeader),
$metaHeader instanceof AggregateHeader ? $metaHeader->streamName() : $metaHeader->streamName,
$metaHeader->playhead,
$metaHeader->recordedOn?->format('Y-m-d H:i:s'),
$streamStart ? 'yes' : 'no',
Expand Down Expand Up @@ -108,13 +107,4 @@ private function metaHeader(Message $message): AggregateHeader|StreamHeader
return $message->header(StreamHeader::class);
}
}

private function streamName(AggregateHeader|StreamHeader $header): string
{
if ($header instanceof AggregateHeader) {
return StreamNameTranslator::streamName($header->aggregateName, $header->aggregateId);
}

return $header->streamName;
}
}
7 changes: 1 addition & 6 deletions src/Message/Translator/RecalculatePlayheadTranslator.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
namespace Patchlevel\EventSourcing\Message\Translator;

use Patchlevel\EventSourcing\Aggregate\AggregateHeader;
use Patchlevel\EventSourcing\Aggregate\StreamNameTranslator;
use Patchlevel\EventSourcing\Message\HeaderNotFound;
use Patchlevel\EventSourcing\Message\Message;
use Patchlevel\EventSourcing\Store\StreamHeader;
Expand All @@ -30,11 +29,7 @@ public function __invoke(Message $message): array
}
}

if ($header instanceof StreamHeader) {
$stream = $header->streamName;
} else {
$stream = StreamNameTranslator::streamName($header->aggregateName, $header->aggregateId);
}
$stream = $header instanceof StreamHeader ? $header->streamName : $header->streamName();

$playhead = $this->nextPlayhead($stream);

Expand Down

0 comments on commit b3a4671

Please sign in to comment.