MultiValueTestItem.php in Drupal 8
File
core/modules/system/tests/modules/entity_test_update/src/Plugin/Field/FieldType/MultiValueTestItem.php
View source
<?php
namespace Drupal\entity_test_update\Plugin\Field\FieldType;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
use Drupal\Core\TypedData\DataDefinition;
use Drupal\Core\Field\FieldItemBase;
class MultiValueTestItem extends FieldItemBase {
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$properties['value1'] = DataDefinition::create('string')
->setLabel(t('First value'));
$properties['value2'] = DataDefinition::create('string')
->setLabel(t('Second value'));
return $properties;
}
public static function schema(FieldStorageDefinitionInterface $field_definition) {
return [
'columns' => [
'value1' => [
'type' => 'varchar',
'length' => 64,
],
'value2' => [
'type' => 'varchar',
'length' => 64,
],
],
];
}
public function isEmpty() {
$item = $this
->getValue();
return empty($item['value1']) && empty($item['value2']);
}
public static function mainPropertyName() {
return 'value1';
}
}