class ComplexDataDefinitionBase
Same name in other branches
- 8.9.x core/lib/Drupal/Core/TypedData/ComplexDataDefinitionBase.php \Drupal\Core\TypedData\ComplexDataDefinitionBase
- 10 core/lib/Drupal/Core/TypedData/ComplexDataDefinitionBase.php \Drupal\Core\TypedData\ComplexDataDefinitionBase
- 11.x core/lib/Drupal/Core/TypedData/ComplexDataDefinitionBase.php \Drupal\Core\TypedData\ComplexDataDefinitionBase
Base class for complex data definitions.
Hierarchy
- class \Drupal\Core\TypedData\DataDefinition implements \Drupal\Core\TypedData\DataDefinitionInterface, \Drupal\Core\TypedData\ArrayAccess uses \Drupal\Core\TypedData\TypedDataTrait
- class \Drupal\Core\TypedData\ComplexDataDefinitionBase extends \Drupal\Core\TypedData\DataDefinition implements \Drupal\Core\TypedData\ComplexDataDefinitionInterface
Expanded class hierarchy of ComplexDataDefinitionBase
1 file declares its use of ComplexDataDefinitionBase
- EntityDataDefinition.php in core/
lib/ Drupal/ Core/ Entity/ TypedData/ EntityDataDefinition.php
File
-
core/
lib/ Drupal/ Core/ TypedData/ ComplexDataDefinitionBase.php, line 8
Namespace
Drupal\Core\TypedDataView source
abstract class ComplexDataDefinitionBase extends DataDefinition implements ComplexDataDefinitionInterface {
/**
* An array of data definitions.
*
* @var \Drupal\Core\TypedData\DataDefinitionInterface[]
*/
protected $propertyDefinitions;
/**
* {@inheritdoc}
*/
public abstract function getPropertyDefinitions();
/**
* {@inheritdoc}
*/
public function getPropertyDefinition($name) {
$definitions = $this->getPropertyDefinitions();
if (isset($definitions[$name])) {
return $definitions[$name];
}
}
/**
* {@inheritdoc}
*/
public function getMainPropertyName() {
return NULL;
}
/**
* {@inheritdoc}
*/
public function __sleep() {
// Do not serialize the cached property definitions.
$vars = get_object_vars($this);
unset($vars['propertyDefinitions'], $vars['typedDataManager']);
return array_keys($vars);
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
ComplexDataDefinitionBase::$propertyDefinitions | protected | property | An array of data definitions. | ||
ComplexDataDefinitionBase::getMainPropertyName | public | function | Returns the name of the main property, if any. | Overrides ComplexDataDefinitionInterface::getMainPropertyName | 1 |
ComplexDataDefinitionBase::getPropertyDefinition | public | function | Gets the definition of a contained property. | Overrides ComplexDataDefinitionInterface::getPropertyDefinition | |
ComplexDataDefinitionBase::getPropertyDefinitions | abstract public | function | Gets an array of property definitions of contained properties. | Overrides ComplexDataDefinitionInterface::getPropertyDefinitions | 2 |
ComplexDataDefinitionBase::__sleep | public | function | Overrides DataDefinition::__sleep | ||
DataDefinition::$definition | protected | property | The array holding values for all definition keys. | ||
DataDefinition::addConstraint | public | function | Adds a validation constraint. | Overrides DataDefinitionInterface::addConstraint | |
DataDefinition::create | public static | function | Creates a new data definition. | 5 | |
DataDefinition::createFromDataType | public static | function | Creates a new data definition object. | Overrides DataDefinitionInterface::createFromDataType | 5 |
DataDefinition::getClass | public | function | Returns the class used for creating the typed data object. | Overrides DataDefinitionInterface::getClass | 1 |
DataDefinition::getConstraint | public | function | Returns a validation constraint. | Overrides DataDefinitionInterface::getConstraint | |
DataDefinition::getConstraints | public | function | Returns an array of validation constraints. | Overrides DataDefinitionInterface::getConstraints | 1 |
DataDefinition::getDataType | public | function | Returns the data type of the data. | Overrides DataDefinitionInterface::getDataType | 2 |
DataDefinition::getDescription | public | function | Returns a human readable description. | Overrides DataDefinitionInterface::getDescription | |
DataDefinition::getLabel | public | function | Returns a human readable label. | Overrides DataDefinitionInterface::getLabel | |
DataDefinition::getSetting | public | function | Returns the value of a given setting. | Overrides DataDefinitionInterface::getSetting | 2 |
DataDefinition::getSettings | public | function | Returns the array of settings, as required by the used class. | Overrides DataDefinitionInterface::getSettings | 2 |
DataDefinition::isComputed | public | function | Determines whether the data value is computed. | Overrides DataDefinitionInterface::isComputed | |
DataDefinition::isInternal | public | function | Determines whether the data value is internal. | Overrides DataDefinitionInterface::isInternal | 1 |
DataDefinition::isList | public | function | Returns whether the data is multi-valued, i.e. a list of data items. | Overrides DataDefinitionInterface::isList | |
DataDefinition::isReadOnly | public | function | Determines whether the data is read-only. | Overrides DataDefinitionInterface::isReadOnly | |
DataDefinition::isRequired | public | function | Determines whether a data value is required. | Overrides DataDefinitionInterface::isRequired | |
DataDefinition::offsetExists | public | function | This is for BC support only. @todo: Remove in https://www.drupal.org/node/1928868. |
||
DataDefinition::offsetGet | public | function | This is for BC support only. @todo: Remove in https://www.drupal.org/node/1928868. |
||
DataDefinition::offsetSet | public | function | This is for BC support only. @todo: Remove in https://www.drupal.org/node/1928868. |
||
DataDefinition::offsetUnset | public | function | This is for BC support only. @todo: Remove in https://www.drupal.org/node/1928868. |
||
DataDefinition::setClass | public | function | Sets the class used for creating the typed data object. | ||
DataDefinition::setComputed | public | function | Sets whether the data is computed. | ||
DataDefinition::setConstraints | public | function | Sets an array of validation constraints. | ||
DataDefinition::setDataType | public | function | Sets the data type. | 1 | |
DataDefinition::setDescription | public | function | Sets the human-readable description. | ||
DataDefinition::setInternal | public | function | Sets the whether the data value should be internal. | ||
DataDefinition::setLabel | public | function | Sets the human-readable label. | ||
DataDefinition::setReadOnly | public | function | Sets whether the data is read-only. | ||
DataDefinition::setRequired | public | function | Sets whether the data is required. | ||
DataDefinition::setSetting | public | function | Sets a definition setting. | 2 | |
DataDefinition::setSettings | public | function | Sets the array of settings, as required by the used class. | 2 | |
DataDefinition::toArray | public | function | Returns all definition values as array. | ||
DataDefinition::__construct | public | function | Constructs a new data definition object. | 1 | |
TypedDataTrait::$typedDataManager | protected | property | The typed data manager used for creating the data types. | ||
TypedDataTrait::getTypedDataManager | public | function | Gets the typed data manager. | 2 | |
TypedDataTrait::setTypedDataManager | public | function | Sets the typed data manager. | 2 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.