Skimia\ApiFusion
  • Namespace
  • Class
  • Tree
  • Todo
  • Download

Namespaces

  • PHP
  • Skimia
    • ApiFusion
      • Annotations
        • ApiRouting
          • Annotations
      • Auth
      • Console
        • Commands
      • Domain
        • Contracts
        • Exceptions
        • Traits
        • Users
        • Validation
      • Facade
      • Http
        • Controllers
          • Api
      • Routing

Classes

  • ResourceService
  • ResourceServiceModel

Class ResourceService

Skimia\ApiFusion\Domain\ResourceService uses Skimia\ApiFusion\Domain\Traits\CheckableTrait
Abstract
Namespace: Skimia\ApiFusion\Domain
Located at Domain/ResourceService.php

Methods summary

public
# __construct( Skimia\ApiFusion\Domain\Contracts\ResourceServiceModelContract $model, Skimia\ApiFusion\Domain\Contracts\InputValidatorContract $inputValidator = null )

Set the resource's model and validator.

Set the resource's model and validator.

Parameters

$model
Resource's model
$inputValidator
Resource's input validator
protected
# order( )

Apply order by property to query.

Apply order by property to query.

protected Skimia\ApiFusion\Domain\Contracts\ResourceServiceModelContract|Illuminate\Database\Eloquent\Collection
# get( integer $id = null )

Run query including eager load.

Run query including eager load.

Parameters

$id
Item ID

Returns

Skimia\ApiFusion\Domain\Contracts\ResourceServiceModelContract|Illuminate\Database\Eloquent\Collection
Query results
public Illuminate\Database\Eloquent\Collection
# all( )

Get all items of this resource.

Get all items of this resource.

Returns

Illuminate\Database\Eloquent\Collection
Collection of items
public BaseModel
# single( integer $id )

Get a single resource item by its ID.

Get a single resource item by its ID.

Parameters

$id
Item ID

Returns

BaseModel
Model of the item
public boolean
# store( array $input )

Store a new resource item.

Store a new resource item.

Parameters

$input
Raw user input

Returns

boolean
public boolean
# update( integer $id, array $input )

Update an existing resource item by ID.

Update an existing resource item by ID.

Parameters

$id
Item's ID
$input
Raw user input

Returns

boolean
public boolean
# destroy( integer $id )

Destroy an existing resource item by ID.

Destroy an existing resource item by ID.

Parameters

$id
Item's ID

Returns

boolean
public mixed
# id( )

Get id of resource.

Get id of resource.

Returns

mixed
protected
# filter( )

Filters to enforce during resource read.

Filters to enforce during resource read.

protected boolean
# readAuthorised( )

Check if read operations are authorised on the service Typically redifined in subclasses.

Check if read operations are authorised on the service Typically redifined in subclasses.

Returns

boolean
protected boolean
# storeAuthorised( )

Check if store operations are authorised on the service Typically redifined in subclasses.

Check if store operations are authorised on the service Typically redifined in subclasses.

Returns

boolean
protected boolean
# updateAuthorised( )

Check if update operations are authorised on the service Typically redifined in subclasses.

Check if update operations are authorised on the service Typically redifined in subclasses.

Returns

boolean
protected boolean
# destroyAuthorised( )

Check if destroy operations are authorised on the service Typically redifined in subclasses.

Check if destroy operations are authorised on the service Typically redifined in subclasses.

Returns

boolean
protected
# domainRulesOnRead( array $input )

Run rule checks that apply during resource read Typically redifined in subclasses.

Run rule checks that apply during resource read Typically redifined in subclasses.

Parameters

$input
Input data to be used when evaluating rules

Throws

Skimia\ApiFusion\Domain\Exceptions\DomainException
when a rule is broken
protected
# domainRulesOnStore( array $input )

Run rule checks that apply during resource store Typically redifined in subclasses.

Run rule checks that apply during resource store Typically redifined in subclasses.

Parameters

$input
Input data to be used when evaluating rules

Throws

Skimia\ApiFusion\Domain\Exceptions\DomainException
when a rule is broken
protected
# domainRulesOnUpdate( array $input, array $original )

Run rule checks that apply during resource update Typically redifined in subclasses.

Run rule checks that apply during resource update Typically redifined in subclasses.

Parameters

$input
Input data to be used when evaluating rules
$original
Original item data to be used when evaluating rules

Throws

Skimia\ApiFusion\Domain\Exceptions\DomainException
when a rule is broken
protected
# domainRulesOnDestroy( array $original )

Run rule checks that apply during resource destroy Typically redifined in subclasses.

Run rule checks that apply during resource destroy Typically redifined in subclasses.

Parameters

$original
original data to be used when evaluating rules

Throws

Skimia\ApiFusion\Domain\Exceptions\DomainException
when a rule is broken

Methods used from Skimia\ApiFusion\Domain\Traits\CheckableTrait

applyDomainRules(), applyValidationRules(), checkAuthorisation(), runChecks()

Properties summary

protected Skimia\ApiFusion\Domain\Contracts\ResourceServiceModelContract $model

The resource's model object that the service will use.

The resource's model object that the service will use.

#
protected Skimia\ApiFusion\Domain\Contracts\ServiceUserContract $user

User of the service.

User of the service.

#
protected array $orderBy

Field to order results by.

Field to order results by.

# ['created_at']
protected array $eagerLoad

Related resources to eager load.

Related resources to eager load.

# []

Properties used from Skimia\ApiFusion\Domain\Traits\CheckableTrait

$inputValidator

Skimia\ApiFusion API documentation generated by ApiGen