ResolvesJsonApiElements
trait ResolvesJsonApiElements (View source)
Properties
| protected | $usesRequestQueryString | Determine whether resources respect inclusions and fields from the request. |
|
| protected | $includesPreviouslyLoadedRelationships | Determine whether included relationship for the resource from eager loaded relationship. |
|
| $loadedRelationshipsMap | Cached loaded relationships map. |
||
| protected | $loadedRelationshipIdentifiers | Cached loaded relationships identifers. |
|
| static | $maxRelationshipDepth | The maximum relationship depth. |
Methods
Specify the maximum relationship depth.
Resolve the resource's attributes.
Resolves relationships for the resource's data object.
Compile resource relations.
Compile included relationships map.
Resolve the meta information for the resource.
Indicate that relationship loading should respect the request's "includes" query string.
Indicate that relationship loading should not rely on the request's "includes" query string.
Determine relationship should include loaded relationships.
Details
static void
maxRelationshipDepth(int $depth)
Specify the maximum relationship depth.
protected array
resolveResourceObject(JsonApiRequest $request)
Resolves data for the resource.
string
resolveResourceIdentifier(JsonApiRequest $request)
Resolve the resource's identifier.
string
resolveResourceType(JsonApiRequest $request)
Resolve the resource's type.
protected array
resolveResourceAttributes(JsonApiRequest $request, string $resourceType)
Resolve the resource's attributes.
protected array
resolveResourceRelationshipIdentifiers(JsonApiRequest $request)
Resolves relationships for the resource's data object.
protected void
compileResourceRelationships(JsonApiRequest $request)
Compile resource relationships.
protected Generator
compileResourceRelationshipUsingResolver(JsonApiRequest $request, mixed $resource, RelationResolver $relationResolver, Model|null $relatedModels)
Compile resource relations.
protected void
compileIncludedNestedRelationshipsMap(JsonApiRequest $request, Model $relation, JsonApiResource $resource)
Compile included relationships map.
Collection
resolveIncludedResourceObjects(JsonApiRequest $request)
Resolves included for the resource.
protected array
resolveResourceLinks(JsonApiRequest $request)
Resolve the links for the resource.
protected array
resolveResourceMetaInformation(JsonApiRequest $request)
Resolve the meta information for the resource.
$this
respectFieldsAndIncludesInQueryString(bool $value = true)
Indicate that relationship loading should respect the request's "includes" query string.
$this
ignoreFieldsAndIncludesInQueryString()
Indicate that relationship loading should not rely on the request's "includes" query string.
$this
includePreviouslyLoadedRelationships()
Determine relationship should include loaded relationships.