Skip to content

Commit 429c519

Browse files
committed
Uses attribute instead of property
1 parent 875c5b3 commit 429c519

File tree

2 files changed

+23
-3
lines changed

2 files changed

+23
-3
lines changed

packages/http-api/src/HasResourceRecord.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,17 @@
22

33
namespace Tempest\HttpApi;
44

5+
use Tempest\Reflection\ClassReflector;
6+
57
trait HasResourceRecord
68
{
79
public static function getResourceRecord(): string
810
{
9-
if (property_exists(static::class, 'resourceRecord')) {
10-
return static::$resourceRecord;
11-
}
11+
$resourceClassReflector = new ClassReflector(static::class);
12+
13+
if ($resourceRecord = $resourceClassReflector->getAttribute(ResourceRecord::class)) {
14+
return $resourceRecord->resourceRecord;
15+
};
1216

1317
return static::class;
1418
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?php
2+
3+
namespace Tempest\HttpApi;
4+
5+
use Attribute;
6+
7+
#[Attribute]
8+
final class ResourceRecord
9+
{
10+
/**
11+
* @param class-string $resourceRecord
12+
*/
13+
public function __construct(
14+
public string $resourceRecord,
15+
) {}
16+
}

0 commit comments

Comments
 (0)