TaskLogItem.php in General Data Protection Regulation 3.0.x
File
modules/gdpr_tasks/src/Plugin/Field/FieldType/TaskLogItem.php
View source
<?php
namespace Drupal\gdpr_tasks\Plugin\Field\FieldType;
use Drupal\Core\Field\FieldItemBase;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
use Drupal\Core\TypedData\DataDefinition;
class TaskLogItem extends FieldItemBase {
public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
$properties['entity_id'] = DataDefinition::create('integer')
->setLabel('Entity ID');
$properties['entity_type'] = DataDefinition::create('string')
->setLabel('Entity Type');
$properties['field_name'] = DataDefinition::create('string')
->setLabel('Field Name');
$properties['action'] = DataDefinition::create('string')
->setLabel('Action');
$properties['anonymizer'] = DataDefinition::create('string')
->setLabel('Anonymizer');
return $properties;
}
public static function schema(FieldStorageDefinitionInterface $field_definition) {
return [
'columns' => [
'entity_id' => [
'type' => 'int',
],
'entity_type' => [
'type' => 'varchar',
'length' => 255,
],
'field_name' => [
'type' => 'varchar',
'length' => 255,
],
'action' => [
'type' => 'varchar',
'length' => 20,
],
'anonymizer' => [
'type' => 'varchar',
'length' => 255,
],
],
];
}
}