PHP Interface Neomerx\JsonApi\Contracts\Document\DocumentInterface

Show file Open project: neomerx/json-api Interface Usage Examples

Public Methods

Method Description
addEmptyRelationshipToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void Add an empty relationship to resource in 'data' section.
addEmptyRelationshipToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void Add an empty relationship to resource in 'included' section.
addError ( Neomerx\JsonApi\Contracts\Document\ErrorInterface $error ) : void Add information to 'errors' top-level section.
addErrors ( Neomerx\JsonApi\Contracts\Document\ErrorInterface[] | ErrorCollection $errors ) : void Add information to 'errors' top-level section.
addJsonApiVersion ( string $version, mixed | null $meta = null ) : void Add JSON API version information.
addNullRelationshipToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void Add a null relationship to resource in 'data' section.
addNullRelationshipToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void Add a null relationship to resource in 'included' section.
addRelationshipToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship, Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void Add a relationship to resource in 'data' section.
addRelationshipToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship, Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void Add a relationship to resource in 'included' section.
addToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void Add resource to 'data' section.
addToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void Add resource to 'included' section.
getDocument ( ) : array Get document as array.
setDocumentLinks ( LinkInterface>\arraynull $links ) : void Set URLs to top-level 'links' section.
setEmptyData ( ) : void Set empty array to 'data' section.
setMetaToDocument ( object | array $meta ) : void Set arbitrary meta-information about primary data to top-level 'meta' section.
setNullData ( ) : void Set null to 'data' section.
setResourceCompleted ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void Mark resource as completed (no new relations/links/etc will be added to the resource anymore).
setUrlPrefix ( string $prefix ) : void Set a prefix that will be applied to all URLs in the document except marked as href.
unsetData ( ) : void Remove 'data' top-level section.

Method Details

addEmptyRelationshipToData() public method

Add an empty relationship to resource in 'data' section.
public addEmptyRelationshipToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void
$parent Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
$relationship Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface
return void

addEmptyRelationshipToIncluded() public method

Add an empty relationship to resource in 'included' section.
public addEmptyRelationshipToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void
$parent Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
$relationship Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface
return void

addError() public method

If you add error information no other elements will be in output document.
public addError ( Neomerx\JsonApi\Contracts\Document\ErrorInterface $error ) : void
$error Neomerx\JsonApi\Contracts\Document\ErrorInterface
return void

addErrors() public method

If you add errors information no other elements will be in output document.
public addErrors ( Neomerx\JsonApi\Contracts\Document\ErrorInterface[] | ErrorCollection $errors ) : void
$errors Neomerx\JsonApi\Contracts\Document\ErrorInterface[] | Neomerx\JsonApi\Exceptions\ErrorCollection
return void

addJsonApiVersion() public method

Add JSON API version information.
public addJsonApiVersion ( string $version, mixed | null $meta = null ) : void
$version string
$meta mixed | null
return void

addNullRelationshipToData() public method

Add a null relationship to resource in 'data' section.
public addNullRelationshipToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void
$parent Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
$relationship Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface
return void

addNullRelationshipToIncluded() public method

Add a null relationship to resource in 'included' section.
public addNullRelationshipToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship ) : void
$parent Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
$relationship Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface
return void

addRelationshipToData() public method

Add a relationship to resource in 'data' section.
public addRelationshipToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship, Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void
$parent Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
$relationship Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface
$resource Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
return void

addRelationshipToIncluded() public method

Add a relationship to resource in 'included' section.
public addRelationshipToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $parent, Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface $relationship, Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void
$parent Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
$relationship Neomerx\JsonApi\Contracts\Schema\RelationshipObjectInterface
$resource Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
return void

addToData() public method

Add resource to 'data' section.
public addToData ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void
$resource Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
return void

addToIncluded() public method

Add resource to 'included' section.
public addToIncluded ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void
$resource Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
return void

getDocument() public method

Get document as array.
public getDocument ( ) : array
return array

setEmptyData() public method

Set empty array to 'data' section.
public setEmptyData ( ) : void
return void

setMetaToDocument() public method

Set arbitrary meta-information about primary data to top-level 'meta' section.
public setMetaToDocument ( object | array $meta ) : void
$meta object | array
return void

setNullData() public method

Set null to 'data' section.
public setNullData ( ) : void
return void

setResourceCompleted() public method

Mark resource as completed (no new relations/links/etc will be added to the resource anymore).
public setResourceCompleted ( Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface $resource ) : void
$resource Neomerx\JsonApi\Contracts\Schema\ResourceObjectInterface
return void

setUrlPrefix() public method

Set a prefix that will be applied to all URLs in the document except marked as href.
See also: LinkInterface
public setUrlPrefix ( string $prefix ) : void
$prefix string
return void

unsetData() public method

Remove 'data' top-level section.
public unsetData ( ) : void
return void