13a169df4900dac2e762e28b7fb8b9bb7c183fb3
[yaffs-website] / web / core / modules / system / tests / modules / entity_test / src / Entity / EntityTestMulRevChanged.php
1 <?php
2
3 namespace Drupal\entity_test\Entity;
4
5 use Drupal\Core\Entity\EntityTypeInterface;
6 use Drupal\Core\Field\BaseFieldDefinition;
7
8 /**
9  * Defines the test entity class.
10  *
11  * @ContentEntityType(
12  *   id = "entity_test_mulrev_changed",
13  *   label = @Translation("Test entity - revisions and data table"),
14  *   handlers = {
15  *     "view_builder" = "Drupal\entity_test\EntityTestViewBuilder",
16  *     "access" = "Drupal\entity_test\EntityTestAccessControlHandler",
17  *     "form" = {
18  *       "default" = "Drupal\entity_test\EntityTestForm",
19  *       "delete" = "Drupal\entity_test\EntityTestDeleteForm"
20  *     },
21  *     "route_provider" = {
22  *       "html" = "Drupal\Core\Entity\Routing\DefaultHtmlRouteProvider",
23  *     },
24  *     "translation" = "Drupal\content_translation\ContentTranslationHandler",
25  *     "views_data" = "Drupal\views\EntityViewsData"
26  *   },
27  *   base_table = "entity_test_mulrev_changed",
28  *   data_table = "entity_test_mulrev_changed_property",
29  *   revision_table = "entity_test_mulrev_changed_revision",
30  *   revision_data_table = "entity_test_mulrev_changed_property_revision",
31  *   translatable = TRUE,
32  *   entity_keys = {
33  *     "id" = "id",
34  *     "uuid" = "uuid",
35  *     "bundle" = "type",
36  *     "revision" = "revision_id",
37  *     "label" = "name",
38  *     "langcode" = "langcode",
39  *   },
40  *   links = {
41  *     "add-form" = "/entity_test_mulrev_changed/add",
42  *     "canonical" = "/entity_test_mulrev_changed/manage/{entity_test_mulrev_changed}",
43  *     "delete-form" = "/entity_test/delete/entity_test_mulrev_changed/{entity_test_mulrev_changed}",
44  *     "edit-form" = "/entity_test_mulrev_changed/manage/{entity_test_mulrev_changed}/edit",
45  *     "revision" = "/entity_test_mulrev_changed/{entity_test_mulrev_changed}/revision/{entity_test_mulrev_changed_revision}/view",
46  *   }
47  * )
48  */
49 class EntityTestMulRevChanged extends EntityTestMulChanged {
50
51   /**
52    * {@inheritdoc}
53    */
54   public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
55     $fields = parent::baseFieldDefinitions($entity_type);
56
57     $fields['revision_id'] = BaseFieldDefinition::create('integer')
58       ->setLabel(t('Revision ID'))
59       ->setDescription(t('The version id of the test entity.'))
60       ->setReadOnly(TRUE)
61       ->setSetting('unsigned', TRUE);
62
63     $fields['revision_translation_affected'] = BaseFieldDefinition::create('boolean')
64       ->setLabel(t('Revision translation affected'))
65       ->setDescription(t('Indicates if the last edit of a translation belongs to current revision.'))
66       ->setReadOnly(TRUE)
67       ->setRevisionable(TRUE)
68       ->setTranslatable(TRUE);
69
70     $fields['langcode']->setRevisionable(TRUE);
71     $fields['name']->setRevisionable(TRUE);
72     $fields['user_id']->setRevisionable(TRUE);
73     $fields['changed']->setRevisionable(TRUE);
74     $fields['not_translatable']->setRevisionable(TRUE);
75
76     return $fields;
77   }
78
79 }