TYPO3 CMS  TYPO3_6-2
TYPO3\CMS\Core\Resource\AbstractRepository Class Reference
Inheritance diagram for TYPO3\CMS\Core\Resource\AbstractRepository:
TYPO3\CMS\Extbase\Persistence\RepositoryInterface TYPO3\CMS\Core\SingletonInterface TYPO3\CMS\Core\Resource\FileRepository TYPO3\CMS\Core\Resource\ProcessedFileRepository TYPO3\CMS\Core\Resource\StorageRepository

Public Member Functions

 __construct ()
 
 add ($object)
 
 remove ($object)
 
 replace ($existingObject, $newObject)
 
 update ($modifiedObject)
 
 getAddedObjects ()
 
 getRemovedObjects ()
 
 findAll ()
 
 countAll ()
 
 removeAll ()
 
 findByUid ($uid)
 
 setDefaultOrderings (array $defaultOrderings)
 
 setDefaultQuerySettings (\TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface $defaultQuerySettings)
 
 createQuery ()
 
 findByIdentifier ($identifier)
 
 __call ($method, $arguments)
 
 getEntityClassName ()
 

Protected Member Functions

 createDomainObject (array $databaseRow)
 
 getWhereClauseForEnabledFields ()
 
 getEnvironmentMode ()
 
 getDatabaseConnection ()
 

Protected Attributes

 $table = ''
 
 $factory
 
 $typeField = ''
 
 $type = ''
 

Detailed Description

This file is part of the TYPO3 CMS project.

It is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, either version 2 of the License, or any later version.

For the full copyright and license information, please read the LICENSE.txt file that was distributed with this source code.

The TYPO3 project - inspiring people to share! Abstract repository implementing the basic repository methods

Author
Andreas Wolf andre.nosp@m.as.w.nosp@m.olf@i.nosp@m.kt-w.nosp@m.erk.d.nosp@m.e
Ingmar Schlecht ingma.nosp@m.r@ty.nosp@m.po3.o.nosp@m.rg

Definition at line 22 of file AbstractRepository.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Core\Resource\AbstractRepository::__construct ( )

Creates this object.

Definition at line 47 of file AbstractRepository.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\makeInstance().

Member Function Documentation

◆ __call()

TYPO3\CMS\Core\Resource\AbstractRepository::__call (   $method,
  $arguments 
)

Magic call method for repository methods.

Parameters
string$methodName of the method
array$argumentsThe arguments
Exceptions

Definition at line 268 of file AbstractRepository.php.

◆ add()

TYPO3\CMS\Core\Resource\AbstractRepository::add (   $object)

Adds an object to this repository.

Parameters
object$objectThe object to add
Returns
void

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 58 of file AbstractRepository.php.

◆ countAll()

TYPO3\CMS\Core\Resource\AbstractRepository::countAll ( )

Returns the total number objects of this repository.

Returns
integer The object count

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 151 of file AbstractRepository.php.

◆ createDomainObject()

TYPO3\CMS\Core\Resource\AbstractRepository::createDomainObject ( array  $databaseRow)
abstractprotected

Creates an object managed by this repository.

Parameters
array$databaseRow
Returns
object

Referenced by TYPO3\CMS\Core\Resource\AbstractRepository\findAll(), and TYPO3\CMS\Core\Resource\AbstractRepository\findByUid().

◆ createQuery()

TYPO3\CMS\Core\Resource\AbstractRepository::createQuery ( )

Returns a query for objects of this repository

Exceptions

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 244 of file AbstractRepository.php.

◆ findAll()

TYPO3\CMS\Core\Resource\AbstractRepository::findAll ( )

◆ findByIdentifier()

TYPO3\CMS\Core\Resource\AbstractRepository::findByIdentifier (   $identifier)

Finds an object matching the given identifier.

Parameters
mixed$identifierThe identifier of the object to find
Returns
object The matching object if found, otherwise NULL

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 255 of file AbstractRepository.php.

References TYPO3\CMS\Core\Resource\AbstractRepository\findByUid().

◆ findByUid()

TYPO3\CMS\Core\Resource\AbstractRepository::findByUid (   $uid)

◆ getAddedObjects()

TYPO3\CMS\Core\Resource\AbstractRepository::getAddedObjects ( )

Returns all objects of this repository add()ed but not yet persisted to the storage layer.

Returns
array An array of objects

Definition at line 101 of file AbstractRepository.php.

◆ getDatabaseConnection()

TYPO3\CMS\Core\Resource\AbstractRepository::getDatabaseConnection ( )
protected
Returns

Definition at line 295 of file AbstractRepository.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Core\Resource\FileRepository\findBySha1Hash().

◆ getEntityClassName()

TYPO3\CMS\Core\Resource\AbstractRepository::getEntityClassName ( )

Returns the object type this repository is managing.

Returns
string

Definition at line 278 of file AbstractRepository.php.

◆ getEnvironmentMode()

TYPO3\CMS\Core\Resource\AbstractRepository::getEnvironmentMode ( )
protected

Function to return the current TYPO3_MODE. This function can be mocked in unit tests to be able to test frontend behaviour.

Returns
string

Definition at line 288 of file AbstractRepository.php.

References TYPO3_MODE.

Referenced by TYPO3\CMS\Core\Resource\FileRepository\findBySha1Hash(), and TYPO3\CMS\Core\Resource\AbstractRepository\getWhereClauseForEnabledFields().

◆ getRemovedObjects()

TYPO3\CMS\Core\Resource\AbstractRepository::getRemovedObjects ( )

Returns an array with objects remove()d from the repository that had been persisted to the storage layer before.

Returns
array

Definition at line 111 of file AbstractRepository.php.

◆ getWhereClauseForEnabledFields()

TYPO3\CMS\Core\Resource\AbstractRepository::getWhereClauseForEnabledFields ( )
protected

get the WHERE clause for the enabled fields of this TCA table depending on the context

Returns
string the additional where clause, something like " AND deleted=0 AND hidden=0"

Definition at line 193 of file AbstractRepository.php.

References $GLOBALS, TYPO3\CMS\Backend\Utility\BackendUtility\BEenableFields(), TYPO3\CMS\Backend\Utility\BackendUtility\deleteClause(), and TYPO3\CMS\Core\Resource\AbstractRepository\getEnvironmentMode().

Referenced by TYPO3\CMS\Core\Resource\AbstractRepository\findAll(), TYPO3\CMS\Core\Resource\AbstractRepository\findByUid(), and TYPO3\CMS\Core\Resource\StorageRepository\initializeLocalCache().

◆ remove()

TYPO3\CMS\Core\Resource\AbstractRepository::remove (   $object)

Removes an object from this repository.

Parameters
object$objectThe object to remove
Returns
void

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 69 of file AbstractRepository.php.

◆ removeAll()

TYPO3\CMS\Core\Resource\AbstractRepository::removeAll ( )

Removes all objects of this repository as if remove() was called for all of them.

Returns
void

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 162 of file AbstractRepository.php.

◆ replace()

TYPO3\CMS\Core\Resource\AbstractRepository::replace (   $existingObject,
  $newObject 
)

Replaces an object by another.

Parameters
object$existingObjectThe existing object
object$newObjectThe new object
Returns
void

Definition at line 81 of file AbstractRepository.php.

◆ setDefaultOrderings()

TYPO3\CMS\Core\Resource\AbstractRepository::setDefaultOrderings ( array  $defaultOrderings)

Sets the property names to order the result by per default. Expected like this: array( 'foo' => Tx_Extbase_Persistence_QueryInterface::ORDER_ASCENDING, 'bar' => Tx_Extbase_Persistence_QueryInterface::ORDER_DESCENDING )

Parameters
array$defaultOrderingsThe property names to order by
Exceptions

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 220 of file AbstractRepository.php.

◆ setDefaultQuerySettings()

TYPO3\CMS\Core\Resource\AbstractRepository::setDefaultQuerySettings ( \TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface  $defaultQuerySettings)

Sets the default query settings to be used in this repository

Parameters
\TYPO3\CMS\Extbase\Persistence\Generic\QuerySettingsInterface$defaultQuerySettingsThe query settings to be used by default
Exceptions

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 233 of file AbstractRepository.php.

◆ update()

TYPO3\CMS\Core\Resource\AbstractRepository::update (   $modifiedObject)

Replaces an existing object with the same identifier by the given object

Parameters
object$modifiedObjectThe modified object

Implements TYPO3\CMS\Extbase\Persistence\RepositoryInterface.

Definition at line 91 of file AbstractRepository.php.

Member Data Documentation

◆ $factory

TYPO3\CMS\Core\Resource\AbstractRepository::$factory
protected

Definition at line 32 of file AbstractRepository.php.

◆ $table

TYPO3\CMS\Core\Resource\AbstractRepository::$table = ''
protected

Definition at line 27 of file AbstractRepository.php.

◆ $type

TYPO3\CMS\Core\Resource\AbstractRepository::$type = ''
protected

Definition at line 42 of file AbstractRepository.php.

◆ $typeField

TYPO3\CMS\Core\Resource\AbstractRepository::$typeField = ''
protected

Definition at line 37 of file AbstractRepository.php.