‪TYPO3CMS  10.4
TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap Class Reference

Public Member Functions

 __construct (string $columnName, string $propertyName)
 
 setTypeOfRelation (string $typeOfRelation)
 
string getTypeOfRelation ()
 
string getPropertyName ()
 
string getColumnName ()
 
 setChildTableName (?string $childTableName)
 
string null getChildTableName ()
 
 setChildSortByFieldName (?string $childSortByFieldName)
 
string null getChildSortByFieldName ()
 
 setRelationTableName (?string $relationTableName)
 
string null getRelationTableName ()
 
 setRelationTablePageIdColumnName (string $relationTablePageIdColumnName)
 
string null getRelationTablePageIdColumnName ()
 
 setRelationTableMatchFields (?array $relationTableMatchFields)
 
array null getRelationTableMatchFields ()
 
 setRelationTableInsertFields (array $relationTableInsertFields)
 
array null getRelationTableInsertFields ()
 
 setParentKeyFieldName (?string $parentKeyFieldName)
 
string null getParentKeyFieldName ()
 
 setParentTableFieldName (?string $parentTableFieldName)
 
string null getParentTableFieldName ()
 
 setChildKeyFieldName (string $childKeyFieldName)
 
string null getChildKeyFieldName ()
 
 setDateTimeStorageFormat (?string $dateTimeStorageFormat)
 
string null getDateTimeStorageFormat ()
 
 setInternalType (TableColumnSubType $internalType)
 
TableColumnSubType null getInternalType ()
 
 setType (TableColumnType $type)
 
TableColumnType null getType ()
 

Public Attributes

const RELATION_NONE = 'RELATION_NONE'
 
const RELATION_HAS_ONE = 'RELATION_HAS_ONE'
 
const RELATION_HAS_MANY = 'RELATION_HAS_MANY'
 
const RELATION_BELONGS_TO_MANY = 'RELATION_BELONGS_TO_MANY'
 
const RELATION_HAS_AND_BELONGS_TO_MANY = 'RELATION_HAS_AND_BELONGS_TO_MANY'
 

Private Attributes

string $propertyName
 
string $columnName
 
string null $typeOfRelation
 
string null $childTableName
 
string null $childSortByFieldName
 
string null $relationTableName
 
string null $relationTablePageIdColumnName
 
array null $relationTableMatchFields
 
array null $relationTableInsertFields
 
string null $relationTableWhereStatement
 
string null $parentKeyFieldName
 
string null $parentTableFieldName
 
string null $childKeyFieldName
 
string null $dateTimeStorageFormat
 
TableColumnType null $type
 
TableColumnSubType null $internalType
 

Detailed Description

A column map to map a column configured in $TCA on a property of a domain object.

only to be used within Extbase, not part of TYPO3 Core API.

Definition at line 27 of file ColumnMap.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::__construct ( string  $columnName,
string  $propertyName 
)

Constructs a Column Map

Parameters
string$columnName‪The column name
string$propertyName‪The property name

Definition at line 181 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$columnName, and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$propertyName.

Member Function Documentation

◆ getChildKeyFieldName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getChildKeyFieldName ( )
Returns
‪string|null

Definition at line 359 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$childKeyFieldName.

◆ getChildSortByFieldName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getChildSortByFieldName ( )
Returns
‪string|null

Definition at line 247 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$childSortByFieldName.

◆ getChildTableName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getChildTableName ( )
Returns
‪string|null

Definition at line 231 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$childTableName.

◆ getColumnName()

string TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getColumnName ( )

◆ getDateTimeStorageFormat()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getDateTimeStorageFormat ( )
Returns
‪string|null

Definition at line 375 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$dateTimeStorageFormat.

◆ getInternalType()

TableColumnSubType null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getInternalType ( )
Returns
‪TableColumnSubType|null

Definition at line 391 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$internalType.

◆ getParentKeyFieldName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getParentKeyFieldName ( )

◆ getParentTableFieldName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getParentTableFieldName ( )
Returns
‪string|null

Definition at line 343 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$parentTableFieldName.

◆ getPropertyName()

string TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getPropertyName ( )

◆ getRelationTableInsertFields()

array null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getRelationTableInsertFields ( )
Returns
‪array|null

Definition at line 311 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$relationTableInsertFields.

◆ getRelationTableMatchFields()

array null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getRelationTableMatchFields ( )
Returns
‪array|null

Definition at line 295 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$relationTableMatchFields.

◆ getRelationTableName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getRelationTableName ( )

◆ getRelationTablePageIdColumnName()

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getRelationTablePageIdColumnName ( )

◆ getType()

TableColumnType null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getType ( )
Returns
‪TableColumnType|null

Definition at line 407 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$type.

◆ getTypeOfRelation()

string TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::getTypeOfRelation ( )

◆ setChildKeyFieldName()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setChildKeyFieldName ( string  $childKeyFieldName)

◆ setChildSortByFieldName()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setChildSortByFieldName ( ?string  $childSortByFieldName)

◆ setChildTableName()

◆ setDateTimeStorageFormat()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setDateTimeStorageFormat ( ?string  $dateTimeStorageFormat)

◆ setInternalType()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setInternalType ( TableColumnSubType  $internalType)
Parameters
TableColumnSubType$internalType

Definition at line 383 of file ColumnMap.php.

References TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\$internalType.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapFactory\setType().

◆ setParentKeyFieldName()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setParentKeyFieldName ( ?string  $parentKeyFieldName)

◆ setParentTableFieldName()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setParentTableFieldName ( ?string  $parentTableFieldName)

◆ setRelationTableInsertFields()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setRelationTableInsertFields ( array  $relationTableInsertFields)

◆ setRelationTableMatchFields()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setRelationTableMatchFields ( ?array  $relationTableMatchFields)

◆ setRelationTableName()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setRelationTableName ( ?string  $relationTableName)

◆ setRelationTablePageIdColumnName()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setRelationTablePageIdColumnName ( string  $relationTablePageIdColumnName)

◆ setType()

TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::setType ( TableColumnType  $type)

◆ setTypeOfRelation()

Member Data Documentation

◆ $childKeyFieldName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$childKeyFieldName
private

todo: Check if this property should support null. If not, set default value. The name of the field holding the children key

Definition at line 153 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getChildKeyFieldName(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setChildKeyFieldName().

◆ $childSortByFieldName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$childSortByFieldName
private

todo: Check if this property should support null. If not, set default value. The name of the field the results from the child's table are sorted by

See also
https://docs.typo3.org/m/typo3/reference-tca/master/en-us/ColumnsConfig/Type/Inline.html#foreign-sortby

Definition at line 87 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getChildSortByFieldName(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setChildSortByFieldName().

◆ $childTableName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$childTableName
private

◆ $columnName

string TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$columnName
private

◆ $dateTimeStorageFormat

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$dateTimeStorageFormat
private

todo: Check if this property should support null. If not, set default value. Alternative format for storing DataTime formats (instead of using unix-time stamps). Allowed values are 'date', 'datetime' and 'time'

See also
https://docs.typo3.org/m/typo3/reference-tca/master/en-us/ColumnsConfig/Type/Input.html#dbtype

Definition at line 163 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getDateTimeStorageFormat(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setDateTimeStorageFormat().

◆ $internalType

TableColumnSubType null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$internalType
private

todo: Check if this property should support null. If not, set default value.

Definition at line 173 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getInternalType(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setInternalType().

◆ $parentKeyFieldName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$parentKeyFieldName
private

todo: Check if this property should support null. If not, set default value. The name of the field holding the parents key

See also
https://docs.typo3.org/m/typo3/reference-tca/master/en-us/ColumnsConfig/Type/Inline.html#foreign-field

Definition at line 138 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getParentKeyFieldName(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setParentKeyFieldName().

◆ $parentTableFieldName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$parentTableFieldName
private

todo: Check if this property should support null. If not, set default value. The name of the field holding the name of the table of the parent's records

See also
https://docs.typo3.org/m/typo3/reference-tca/master/en-us/ColumnsConfig/Type/Inline.html#foreign-table-field

Definition at line 146 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getParentTableFieldName(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setParentTableFieldName().

◆ $propertyName

string TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$propertyName
private

◆ $relationTableInsertFields

array null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$relationTableInsertFields
private

todo: Check if this property should support null. If not, set default value. Array of field=>value pairs to insert when writing new MM relations

See also
https://docs.typo3.org/m/typo3/reference-tca/master/en-us/ColumnsConfig/Type/Group.html#mm-insert-fields

Definition at line 119 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getRelationTableInsertFields(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setRelationTableInsertFields().

◆ $relationTableMatchFields

array null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$relationTableMatchFields
private

◆ $relationTableName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$relationTableName
private

◆ $relationTablePageIdColumnName

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$relationTablePageIdColumnName
private

todo: Check if this property should support null. If not, set default value. The name of the column of the relation table holding the page id

Definition at line 102 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getRelationTablePageIdColumnName(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setRelationTablePageIdColumnName().

◆ $relationTableWhereStatement

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$relationTableWhereStatement
private

todo: Check if this property should support null. If not, set default value.

todo: Check if this property should be dropped as it's not in use. Basically we have to answer the question if todo: MM_table_where should have any impact on Extbase at all. The where clause to narrow down the selected relation table records

See also
https://docs.typo3.org/m/typo3/reference-tca/master/en-us/ColumnsConfig/Type/Select.html#mm-table-where

Definition at line 130 of file ColumnMap.php.

◆ $type

TableColumnType null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$type
private

todo: Check if this property should support null. If not, set default value.

Definition at line 168 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getType(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setType().

◆ $typeOfRelation

string null TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::$typeOfRelation
private

todo: Check if this property should support null. If not, set default value. The type of relation

Definition at line 71 of file ColumnMap.php.

Referenced by TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\getTypeOfRelation(), and TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap\setTypeOfRelation().

◆ RELATION_BELONGS_TO_MANY

const TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::RELATION_BELONGS_TO_MANY = 'RELATION_BELONGS_TO_MANY'

◆ RELATION_HAS_AND_BELONGS_TO_MANY

◆ RELATION_HAS_MANY

◆ RELATION_HAS_ONE

◆ RELATION_NONE

const TYPO3\CMS\Extbase\Persistence\Generic\Mapper\ColumnMap::RELATION_NONE = 'RELATION_NONE'