abstract class Resource extends Primitive

Traits

Properties

static protected array<string, null|list<object>|object> $attributeCache from  ReadsAttributes
protected null|array<string, mixed> $meta from  HasMeta
protected string $name from  Primitive
protected string $title from  Primitive
protected string $description from  Primitive
protected string $uri
protected string $mimeType
protected string $defaultUriScheme

Methods

mixed
resolveAttribute(string $attributeClass)

Resolve the nearest matching attribute in the class hierarchy.

array
resolveAttributes(string $attributeClass)

Resolve all matching attributes in the class hierarchy.

static void
flushState()

Flush all static state.

array
resolvedIcons()

Resolve icons from attributes and the primitive's icons method.

from  HasIcons
void
setMeta(array|string $meta, mixed $value = null)

Set response metadata using an array or key-value pair.

from  HasMeta
array
mergeMeta(array $baseArray)

Merge metadata into the given response array.

from  HasMeta
string
name()

Get the primitive name.

string
title()

Get the primitive title.

string
description()

Get the primitive description.

array|null
meta()

Get the primitive metadata.

array
icons()

Get the primitive icons.

array
mergeIcons(array $baseArray)

Merge the resolved icons into the primitive array.

bool
eligibleForRegistration()

Determine whether the primitive may be registered for this request.

array
toMethodCall()

Convert the resource to a method call.

array
toArray()

Convert the resource to an array.

array
annotations()

Get the primitive annotations.

array
allowedAnnotations()

Get the annotation types allowed on a resource.

string
uri()

Get the resource URI or URI template.

Cacheable|null
cacheable()

Get the resource's cache settings.

string
mimeType()

Get the resource MIME type.

Details

in ReadsAttributes at line 24
protected mixed resolveAttribute(string $attributeClass)

Resolve the nearest matching attribute in the class hierarchy.

Parameters

string $attributeClass

Return Value

mixed

in ReadsAttributes at line 56
protected array resolveAttributes(string $attributeClass)

Resolve all matching attributes in the class hierarchy.

Parameters

string $attributeClass

Return Value

array

in ReadsAttributes at line 82
static void flushState()

Flush all static state.

Return Value

void

in HasIcons at line 19
array resolvedIcons()

Resolve icons from attributes and the primitive's icons method.

Return Value

array

in HasMeta at line 21
void setMeta(array|string $meta, mixed $value = null)

Set response metadata using an array or key-value pair.

Parameters

array|string $meta
mixed $value

Return Value

void

in HasMeta at line 46
array mergeMeta(array $baseArray)

Merge metadata into the given response array.

Parameters

array $baseArray

Return Value

array

in Primitive at line 34
string name()

Get the primitive name.

Return Value

string

in Primitive at line 44
string title()

Get the primitive title.

Return Value

string

in Primitive at line 54
string description()

Get the primitive description.

Return Value

string

in Primitive at line 66
array|null meta()

Get the primitive metadata.

Return Value

array|null

in Primitive at line 76
array icons()

Get the primitive icons.

Return Value

array

in Primitive at line 89
protected array mergeIcons(array $baseArray)

Merge the resolved icons into the primitive array.

Parameters

array $baseArray

Return Value

array

in Primitive at line 103
bool eligibleForRegistration()

Determine whether the primitive may be registered for this request.

Return Value

bool

at line 62
array toMethodCall()

Convert the resource to a method call.

Return Value

array

at line 82
array toArray()

Convert the resource to an array.

Return Value

array

in HasAnnotations at line 19
array annotations()

Get the primitive annotations.

Return Value

array

at line 112
protected array allowedAnnotations()

Get the annotation types allowed on a resource.

Return Value

array

at line 28
string uri()

Get the resource URI or URI template.

Return Value

string

at line 42
Cacheable|null cacheable()

Get the resource's cache settings.

Return Value

Cacheable|null

at line 50
string mimeType()

Get the resource MIME type.

Return Value

string