AbstractRepository implements RepositoryInterface, SingletonInterface
Abstract repository implementing the basic repository methods
Table of Contents
Interfaces
- RepositoryInterface
- Contract for a repository
- SingletonInterface
- "empty" interface for singletons (marker interface pattern)
Properties
- $factory : ResourceFactory
- $objectType : string
- The main object type of this class
- $table : string
- $type : string
- $typeField : string
Methods
- __call() : mixed
- Magic call method for repository methods.
- __construct() : mixed
- Creates this object.
- add() : mixed
- Adds an object to this repository.
- countAll() : int
- Returns the total number objects of this repository.
- createQuery() : QueryInterface
- Returns a query for objects of this repository
- findAll() : array<string|int, mixed>
- Returns all objects of this repository.
- findByIdentifier() : object|null
- Finds an object matching the given identifier.
- findByUid() : object
- Finds an object matching the given identifier.
- getAddedObjects() : array<string|int, mixed>
- Returns all objects of this repository add()ed but not yet persisted to the storage layer.
- getEntityClassName() : string
- Returns the object type this repository is managing.
- getRemovedObjects() : array<string|int, mixed>
- Returns an array with objects remove()d from the repository that had been persisted to the storage layer before.
- remove() : mixed
- Removes an object from this repository.
- removeAll() : mixed
- Removes all objects of this repository as if remove() was called for all of them.
- replace() : mixed
- Replaces an object by another.
- setDefaultOrderings() : mixed
- Sets the property names to order the result by per default.
- setDefaultQuerySettings() : mixed
- Sets the default query settings to be used in this repository
- update() : mixed
- Replaces an existing object with the same identifier by the given object
- createDomainObject() : object
- Creates an object managed by this repository.
- getEnvironmentMode() : string
- Function to return the current application type based on $GLOBALS['TSFE'].
Properties
$factory
protected
ResourceFactory
$factory
$objectType
The main object type of this class
protected
string
$objectType
$table
protected
string
$table
= ''
$type
protected
string
$type
= ''
$typeField
protected
string
$typeField
= ''
Methods
__call()
Magic call method for repository methods.
public
__call(string $method, array<string|int, mixed> $arguments) : mixed
Parameters
- $method : string
-
Name of the method
- $arguments : array<string|int, mixed>
-
The arguments
Tags
__construct()
Creates this object.
public
__construct() : mixed
add()
Adds an object to this repository.
public
add(object $object) : mixed
Parameters
- $object : object
-
The object to add
countAll()
Returns the total number objects of this repository.
public
countAll() : int
Return values
int —The object count
createQuery()
Returns a query for objects of this repository
public
createQuery() : QueryInterface
Tags
Return values
QueryInterfacefindAll()
Returns all objects of this repository.
public
findAll() : array<string|int, mixed>
Return values
array<string|int, mixed> —An array of objects, empty if no objects found
findByIdentifier()
Finds an object matching the given identifier.
public
findByIdentifier(mixed $identifier) : object|null
Parameters
- $identifier : mixed
-
The identifier of the object to find
Return values
object|null —The matching object if found, otherwise NULL
findByUid()
Finds an object matching the given identifier.
public
findByUid(int $uid) : object
Parameters
- $uid : int
-
The identifier of the object to find
Tags
Return values
object —The matching object
getAddedObjects()
Returns all objects of this repository add()ed but not yet persisted to the storage layer.
public
getAddedObjects() : array<string|int, mixed>
Return values
array<string|int, mixed> —An array of objects
getEntityClassName()
Returns the object type this repository is managing.
public
getEntityClassName() : string
Return values
stringgetRemovedObjects()
Returns an array with objects remove()d from the repository that had been persisted to the storage layer before.
public
getRemovedObjects() : array<string|int, mixed>
Return values
array<string|int, mixed>remove()
Removes an object from this repository.
public
remove(object $object) : mixed
Parameters
- $object : object
-
The object to remove
removeAll()
Removes all objects of this repository as if remove() was called for all of them.
public
removeAll() : mixed
replace()
Replaces an object by another.
public
replace(object $existingObject, object $newObject) : mixed
Parameters
- $existingObject : object
-
The existing object
- $newObject : object
-
The new object
setDefaultOrderings()
Sets the property names to order the result by per default.
public
setDefaultOrderings(array<string|int, mixed> $defaultOrderings) : mixed
Expected like this: array( 'foo' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_ASCENDING, 'bar' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING )
Parameters
- $defaultOrderings : array<string|int, mixed>
-
The property names to order by
Tags
setDefaultQuerySettings()
Sets the default query settings to be used in this repository
public
setDefaultQuerySettings(QuerySettingsInterface $defaultQuerySettings) : mixed
Parameters
- $defaultQuerySettings : QuerySettingsInterface
-
The query settings to be used by default
Tags
update()
Replaces an existing object with the same identifier by the given object
public
update(object $modifiedObject) : mixed
Parameters
- $modifiedObject : object
-
The modified object
createDomainObject()
Creates an object managed by this repository.
protected
abstract createDomainObject(array<string|int, mixed> $databaseRow) : object
Parameters
- $databaseRow : array<string|int, mixed>
Tags
Return values
objectgetEnvironmentMode()
Function to return the current application type based on $GLOBALS['TSFE'].
protected
getEnvironmentMode() : string
This function can be mocked in unit tests to be able to test frontend behaviour.