Documentation

AbstractEntity
in package
implements EntityInterface

AbstractYes

Base class for all api entities.

This is the most generic of 3 possible base classes for an APIv4 Entity (the other 2, which extend this class, are BasicEntity and DAOEntity).

Implementing an API by extending this class directly is appropriate when it does not implement all of the CRUD actions, or only a subset like get without create, update or delete; for example the RelationshipCache entity.

For all other APIs that do implement CRUD it is recommended to use:

  1. DAOEntity for all entities with a DAO (sql table).
  2. BasicEntity for all others, e.g. file-based entities.

An entity which extends this class directly must, at minimum, implement the getFields action.

Tags
see
https://lab.civicrm.org/extensions/api4example

Table of Contents

Interfaces

EntityInterface
This is currently a null interface - it allows picking up AbstractEntities via the ClassScanner

Methods

__callStatic()  : AbstractAction
Magic method to return the action object for an api.
checkAccess()  : CheckAccessAction
getActions()  : GetActions
getEntityName()  : string
Get entity name from called class
getFields()  : BasicGetFieldsAction
getInfo()  : array{name: string, title: string, description: string, title_plural: string, type: string, paths: array, class: string, primary_key: array, searchable: string, dao: string, label_field: string, icon: string}
Reflection function called by Entity::get()
getLinks()  : GetLinks
permissions()  : array<string|int, mixed>
Returns a list of permissions needed to access the various actions in this api.
getDaoName()  : CRM_Core_DAO|string|null
getEntityTitle()  : string
Overridable function to return a localized title for this entity.

Methods

getEntityName()

Get entity name from called class

public static getEntityName() : string
Return values
string

getInfo()

Reflection function called by Entity::get()

public static getInfo() : array{name: string, title: string, description: string, title_plural: string, type: string, paths: array, class: string, primary_key: array, searchable: string, dao: string, label_field: string, icon: string}
Tags
see
Get
Return values
array{name: string, title: string, description: string, title_plural: string, type: string, paths: array, class: string, primary_key: array, searchable: string, dao: string, label_field: string, icon: string}
public static getLinks([bool $checkPermissions = TRUE ]) : GetLinks
Parameters
$checkPermissions : bool = TRUE
Return values
GetLinks

permissions()

Returns a list of permissions needed to access the various actions in this api.

public static permissions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getEntityTitle()

Overridable function to return a localized title for this entity.

protected static getEntityTitle([bool $plural = FALSE ]) : string
Parameters
$plural : bool = FALSE

Whether to return a plural title.

Return values
string

        
On this page

Search results