class ListIntegerItem
Same name and namespace in other branches
- 8.9.x core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php \Drupal\options\Plugin\Field\FieldType\ListIntegerItem
- 10 core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php \Drupal\options\Plugin\Field\FieldType\ListIntegerItem
- 11.x core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php \Drupal\options\Plugin\Field\FieldType\ListIntegerItem
Plugin implementation of the 'list_integer' field type.
Plugin annotation
@FieldType(
id = "list_integer",
label = @Translation("List (integer)"),
description = @Translation("This field stores integer values from a list of allowed 'value => label' pairs, i.e. 'Lifetime in days': 1 => 1 day, 7 => 1 week, 31 => 1 month."),
category = @Translation("Number"),
default_widget = "options_select",
default_formatter = "list_default",
)
Hierarchy
- class \Drupal\Core\TypedData\TypedData implements \Drupal\Core\TypedData\TypedDataInterface, \Drupal\Component\Plugin\PluginInspectionInterface uses \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\TypedData\TypedDataTrait
- class \Drupal\Core\TypedData\Plugin\DataType\Map extends \Drupal\Core\TypedData\TypedData implements \Drupal\Core\TypedData\Plugin\DataType\IteratorAggregate, \Drupal\Core\TypedData\ComplexDataInterface
- class \Drupal\Core\Field\FieldItemBase extends \Drupal\Core\TypedData\Plugin\DataType\Map implements \Drupal\Core\Field\FieldItemInterface
- class \Drupal\options\Plugin\Field\FieldType\ListItemBase extends \Drupal\Core\Field\FieldItemBase implements \Drupal\Core\TypedData\OptionsProviderInterface
- class \Drupal\options\Plugin\Field\FieldType\ListIntegerItem extends \Drupal\options\Plugin\Field\FieldType\ListItemBase
- class \Drupal\options\Plugin\Field\FieldType\ListItemBase extends \Drupal\Core\Field\FieldItemBase implements \Drupal\Core\TypedData\OptionsProviderInterface
- class \Drupal\Core\Field\FieldItemBase extends \Drupal\Core\TypedData\Plugin\DataType\Map implements \Drupal\Core\Field\FieldItemInterface
- class \Drupal\Core\TypedData\Plugin\DataType\Map extends \Drupal\Core\TypedData\TypedData implements \Drupal\Core\TypedData\Plugin\DataType\IteratorAggregate, \Drupal\Core\TypedData\ComplexDataInterface
Expanded class hierarchy of ListIntegerItem
1 file declares its use of ListIntegerItem
- XmlEntityNormalizationQuirksTrait.php in core/
modules/ rest/ tests/ src/ Functional/ EntityResource/ XmlEntityNormalizationQuirksTrait.php
File
-
core/
modules/ options/ src/ Plugin/ Field/ FieldType/ ListIntegerItem.php, line 22
Namespace
Drupal\options\Plugin\Field\FieldTypeView source
class ListIntegerItem extends ListItemBase {
/**
* {@inheritdoc}
*/
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$properties['value'] = DataDefinition::create('integer')->setLabel(new TranslatableMarkup('Integer value'))
->setRequired(TRUE);
return $properties;
}
/**
* {@inheritdoc}
*/
public static function schema(FieldStorageDefinitionInterface $field_definition) {
return [
'columns' => [
'value' => [
'type' => 'int',
],
],
'indexes' => [
'value' => [
'value',
],
],
];
}
/**
* {@inheritdoc}
*/
protected function allowedValuesDescription() {
$description = '<p>' . $this->t('The possible values this field can contain. Enter one value per line, in the format key|label.');
$description .= '<br/>' . $this->t('The key is the stored value, and must be numeric. The label will be used in displayed values and edit forms.');
$description .= '<br/>' . $this->t('The label is optional: if a line contains a single number, it will be used as key and label.');
$description .= '<br/>' . $this->t('Lists of labels are also accepted (one label per line), only if the field does not hold any values yet. Numeric keys will be automatically generated from the positions in the list.');
$description .= '</p>';
$description .= '<p>' . $this->t('Allowed HTML tags in labels: @tags', [
'@tags' => FieldFilteredMarkup::displayAllowedTags(),
]) . '</p>';
return $description;
}
/**
* {@inheritdoc}
*/
protected static function validateAllowedValue($option) {
if (!preg_match('/^-?\\d+$/', $option)) {
return new TranslatableMarkup('Allowed values list: keys must be integers.');
}
}
/**
* {@inheritdoc}
*/
protected static function castAllowedValue($value) {
return (int) $value;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
DependencySerializationTrait::$_entityStorages | protected | property | |||
DependencySerializationTrait::$_serviceIds | protected | property | |||
DependencySerializationTrait::__sleep | public | function | 1 | ||
DependencySerializationTrait::__wakeup | public | function | 2 | ||
FieldItemBase::calculateDependencies | public static | function | Overrides FieldItemInterface::calculateDependencies | 2 | |
FieldItemBase::calculateStorageDependencies | public static | function | Overrides FieldItemInterface::calculateStorageDependencies | 1 | |
FieldItemBase::defaultFieldSettings | public static | function | Overrides FieldItemInterface::defaultFieldSettings | 7 | |
FieldItemBase::delete | public | function | Overrides FieldItemInterface::delete | 2 | |
FieldItemBase::deleteRevision | public | function | Overrides FieldItemInterface::deleteRevision | ||
FieldItemBase::fieldSettingsForm | public | function | Overrides FieldItemInterface::fieldSettingsForm | 7 | |
FieldItemBase::fieldSettingsFromConfigData | public static | function | Overrides FieldItemInterface::fieldSettingsFromConfigData | 1 | |
FieldItemBase::fieldSettingsToConfigData | public static | function | Overrides FieldItemInterface::fieldSettingsToConfigData | 1 | |
FieldItemBase::getEntity | public | function | Overrides FieldItemInterface::getEntity | ||
FieldItemBase::getFieldDefinition | public | function | Overrides FieldItemInterface::getFieldDefinition | ||
FieldItemBase::getLangcode | public | function | Overrides FieldItemInterface::getLangcode | ||
FieldItemBase::getSetting | protected | function | Returns the value of a field setting. | ||
FieldItemBase::getSettings | protected | function | Returns the array of field settings. | ||
FieldItemBase::mainPropertyName | public static | function | Overrides FieldItemInterface::mainPropertyName | 8 | |
FieldItemBase::onDependencyRemoval | public static | function | Overrides FieldItemInterface::onDependencyRemoval | 1 | |
FieldItemBase::postSave | public | function | Overrides FieldItemInterface::postSave | 2 | |
FieldItemBase::preSave | public | function | Overrides FieldItemInterface::preSave | 7 | |
FieldItemBase::setValue | public | function | Overrides Map::setValue | 4 | |
FieldItemBase::view | public | function | Overrides FieldItemInterface::view | ||
FieldItemBase::writePropertyValue | protected | function | Different to the parent Map class, we avoid creating property objects as far as possible in order to optimize performance. Thus we just update $this->values if no property object has been created yet. |
Overrides Map::writePropertyValue | |
FieldItemBase::__construct | public | function | Overrides TypedData::__construct | 1 | |
FieldItemBase::__get | public | function | Overrides FieldItemInterface::__get | 2 | |
FieldItemBase::__isset | public | function | Overrides FieldItemInterface::__isset | ||
FieldItemBase::__set | public | function | Overrides FieldItemInterface::__set | 1 | |
FieldItemBase::__unset | public | function | Overrides FieldItemInterface::__unset | ||
ListIntegerItem::allowedValuesDescription | protected | function | Provides the field type specific allowed values form element #description. | Overrides ListItemBase::allowedValuesDescription | |
ListIntegerItem::castAllowedValue | protected static | function | Converts a value to the correct type. | Overrides ListItemBase::castAllowedValue | |
ListIntegerItem::propertyDefinitions | public static | function | Defines field item properties. | Overrides FieldItemInterface::propertyDefinitions | |
ListIntegerItem::schema | public static | function | Returns the schema for the field. | Overrides FieldItemInterface::schema | |
ListIntegerItem::validateAllowedValue | protected static | function | Checks whether a candidate allowed value is valid. | Overrides ListItemBase::validateAllowedValue | |
ListItemBase::allowedValuesString | protected | function | Generates a string representation of an array of 'allowed values'. | ||
ListItemBase::defaultStorageSettings | public static | function | Defines the storage-level settings for this plugin. | Overrides FieldItemBase::defaultStorageSettings | |
ListItemBase::extractAllowedValues | protected static | function | Extracts the allowed values array from the allowed_values element. | 1 | |
ListItemBase::generateSampleValue | public static | function | Generates placeholder field values. | Overrides FieldItemBase::generateSampleValue | |
ListItemBase::getPossibleOptions | public | function | Returns an array of possible values with labels for display. | Overrides OptionsProviderInterface::getPossibleOptions | |
ListItemBase::getPossibleValues | public | function | Returns an array of possible values. | Overrides OptionsProviderInterface::getPossibleValues | |
ListItemBase::getSettableOptions | public | function | Returns an array of settable values with labels for display. | Overrides OptionsProviderInterface::getSettableOptions | |
ListItemBase::getSettableValues | public | function | Returns an array of settable values. | Overrides OptionsProviderInterface::getSettableValues | |
ListItemBase::isEmpty | public | function | Determines whether the data structure is empty. | Overrides Map::isEmpty | |
ListItemBase::simplifyAllowedValues | protected static | function | Simplifies allowed values to a key-value array from the structured array. | 1 | |
ListItemBase::storageSettingsForm | public | function | Returns a form for the storage-level settings. | Overrides FieldItemBase::storageSettingsForm | |
ListItemBase::storageSettingsFromConfigData | public static | function | Returns a settings array in the field type's canonical representation. | Overrides FieldItemBase::storageSettingsFromConfigData | |
ListItemBase::storageSettingsToConfigData | public static | function | Returns a settings array that can be stored as a configuration value. | Overrides FieldItemBase::storageSettingsToConfigData | |
ListItemBase::structureAllowedValues | protected static | function | Creates a structured array of allowed values from a key-value array. | ||
ListItemBase::validateAllowedValues | public static | function | #element_validate callback for options field allowed values. | ||
Map::$definition | protected | property | The data definition. | Overrides TypedData::$definition | |
Map::$properties | protected | property | The array of properties. | ||
Map::$values | protected | property | An array of values for the contained properties. | ||
Map::applyDefaultValue | public | function | Overrides TypedData::applyDefaultValue | 4 | |
Map::get | public | function | Overrides ComplexDataInterface::get | ||
Map::getIterator | public | function | |||
Map::getProperties | public | function | Overrides ComplexDataInterface::getProperties | ||
Map::getString | public | function | Overrides TypedData::getString | ||
Map::getValue | public | function | Overrides TypedData::getValue | 1 | |
Map::onChange | public | function | Overrides TraversableTypedDataInterface::onChange | 4 | |
Map::set | public | function | Overrides ComplexDataInterface::set | ||
Map::toArray | public | function | Overrides ComplexDataInterface::toArray | 1 | |
Map::__clone | public | function | Magic method: Implements a deep clone. | ||
StringTranslationTrait::$stringTranslation | protected | property | The string translation service. | 3 | |
StringTranslationTrait::formatPlural | protected | function | Formats a string containing a count of items. | ||
StringTranslationTrait::getNumberOfPlurals | protected | function | Returns the number of plurals supported by a given language. | ||
StringTranslationTrait::getStringTranslation | protected | function | Gets the string translation service. | ||
StringTranslationTrait::setStringTranslation | public | function | Sets the string translation service to use. | 2 | |
StringTranslationTrait::t | protected | function | Translates a string to the current language or to a given language. | ||
TypedData::$name | protected | property | The property name. | ||
TypedData::$parent | protected | property | The parent typed data object. | ||
TypedData::createInstance | public static | function | Overrides TypedDataInterface::createInstance | ||
TypedData::getConstraints | public | function | Overrides TypedDataInterface::getConstraints | 9 | |
TypedData::getDataDefinition | public | function | Overrides TypedDataInterface::getDataDefinition | ||
TypedData::getName | public | function | Overrides TypedDataInterface::getName | ||
TypedData::getParent | public | function | Overrides TypedDataInterface::getParent | ||
TypedData::getPluginDefinition | public | function | Overrides PluginInspectionInterface::getPluginDefinition | ||
TypedData::getPluginId | public | function | Overrides PluginInspectionInterface::getPluginId | ||
TypedData::getPropertyPath | public | function | Overrides TypedDataInterface::getPropertyPath | ||
TypedData::getRoot | public | function | Overrides TypedDataInterface::getRoot | ||
TypedData::setContext | public | function | Overrides TypedDataInterface::setContext | ||
TypedData::validate | public | function | Overrides TypedDataInterface::validate | ||
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.