Skip to content

Commit

Permalink
[EasyActivity] Do not use ActivityAction as a type (#1532)
Browse files Browse the repository at this point in the history
  • Loading branch information
itorgov committed Aug 27, 2024
1 parent f66e390 commit bd5864d
Show file tree
Hide file tree
Showing 11 changed files with 15 additions and 16 deletions.
8 changes: 4 additions & 4 deletions packages/EasyActivity/src/Common/Entity/ActivityLogEntry.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

final class ActivityLogEntry
{
private ActivityAction $action;
private string $action;

private ?string $actorId = null;

Expand All @@ -29,7 +29,7 @@ final class ActivityLogEntry

private DateTimeInterface $updatedAt;

public function getAction(): ActivityAction
public function getAction(): string
{
return $this->action;
}
Expand Down Expand Up @@ -79,9 +79,9 @@ public function getUpdatedAt(): DateTimeInterface
return $this->updatedAt;
}

public function setAction(ActivityAction $action): self
public function setAction(ActivityAction|string $action): self
{
$this->action = $action;
$this->action = \is_string($action) ? $action : $action->value;

return $this;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public function __construct(
) {
}

public function create(ActivityAction $action, object $object, array $changeSet): ?ActivityLogEntry
public function create(ActivityAction|string $action, object $object, array $changeSet): ?ActivityLogEntry
{
$subject = $this->subjectResolver->resolve($object);
if ($subject === null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@

interface ActivityLogEntryFactoryInterface
{
public function create(ActivityAction $action, object $object, array $changeSet): ?ActivityLogEntry;
public function create(ActivityAction|string $action, object $object, array $changeSet): ?ActivityLogEntry;
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@

interface ActivityLoggerInterface
{
public function addActivityLogEntry(ActivityAction $action, object $object, array $changeSet): void;
public function addActivityLogEntry(ActivityAction|string $action, object $object, array $changeSet): void;
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public function __construct(
) {
}

public function addActivityLogEntry(ActivityAction $action, object $object, array $changeSet): void
public function addActivityLogEntry(ActivityAction|string $action, object $object, array $changeSet): void
{
$logEntry = $this->activityLogEntryFactory->create($action, $object, $changeSet);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public function __construct(
) {
}

public function addActivityLogEntry(ActivityAction $action, object $object, array $changeSet): void
public function addActivityLogEntry(ActivityAction|string $action, object $object, array $changeSet): void
{
$logEntry = $this->activityLogEntryFactory->create($action, $object, $changeSet);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
interface ActivitySubjectDataResolverInterface
{
public function resolve(
ActivityAction $action,
ActivityAction|string $action,
ActivitySubjectInterface $subject,
array $changeSet,
): ?ActivitySubjectData;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public function __construct(
}

public function resolve(
ActivityAction $action,
ActivityAction|string $action,
ActivitySubjectInterface $subject,
array $changeSet,
): ?ActivitySubjectData {
Expand All @@ -32,7 +32,7 @@ public function resolve(
return new ActivitySubjectData($serializedData, $serializedOldData);
}

private function resolveChangeData(ActivityAction $action, array $changeSet): array
private function resolveChangeData(ActivityAction|string $action, array $changeSet): array
{
$oldData = [];
$data = [];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ public function __construct(
public function store(ActivityLogEntry $logEntry): ActivityLogEntry
{
$data = [
'action' => $logEntry->getAction()
->value,
'action' => $logEntry->getAction(),
'actor_id' => $logEntry->getActorId(),
'actor_name' => $logEntry->getActorName(),
'actor_type' => $logEntry->getActorType(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
final readonly class CustomActivitySubjectDataResolver implements ActivitySubjectDataResolverInterface
{
public function resolve(
ActivityAction $action,
ActivityAction|string $action,
ActivitySubjectInterface $subject,
array $changeSet,
): ?ActivitySubjectData {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ public function testCreateSucceeds(): void
);
self::assertNull($result->getSubjectOldData());
self::assertSame(DefaultActorResolver::DEFAULT_ACTOR_TYPE, $result->getActorType());
self::assertSame(ActivityAction::Create, $result->getAction());
self::assertSame(ActivityAction::Create->value, $result->getAction());
self::assertNull($result->getActorName());
self::assertSame((string)(new NilUuid()), $result->getSubjectId());
self::assertSame(Article::class, $result->getSubjectType());
Expand Down

0 comments on commit bd5864d

Please sign in to comment.