diff --git a/lib/Drupal/media_entity/Entity/Media.php b/lib/Drupal/media_entity/Entity/Media.php index aa3916a..23504a2 100644 --- a/lib/Drupal/media_entity/Entity/Media.php +++ b/lib/Drupal/media_entity/Entity/Media.php @@ -20,7 +20,7 @@ use Drupal\media_entity\MediaInterface; * bundle_label = @Translation("Media bundle"), * module = "media_entity", * controllers = { - * "storage" = "Drupal\media_entity\MediaStorageController", + * "storage" = "Drupal\Core\Entity\FieldableDatabaseStorageController", * "render" = "Drupal\media_entity\MediaRenderController", * "access" = "Drupal\media_entity\MediaAccessController", * "form" = { @@ -40,6 +40,7 @@ use Drupal\media_entity\MediaInterface; * render_cache = FALSE, * entity_keys = { * "id" = "mid", + * "revision" = "vid", * "bundle" = "bundle", * "label" = "name", * "uuid" = "uuid" @@ -76,6 +77,13 @@ class Media extends ContentEntityBase implements MediaInterface { } /** + * Implements Drupal\Core\Entity\EntityInterface::preCreate(). + */ + public static function preCreate(EntityStorageControllerInterface $storage_controller, array &$values) { + $values['created'] = REQUEST_TIME; + } + + /** * {@inheritdoc} */ public function preSave(EntityStorageControllerInterface $storage_controller) { @@ -212,6 +220,12 @@ class Media extends ContentEntityBase implements MediaInterface { 'type' => 'uuid_field', 'read-only' => TRUE, ); + $properties['vid'] = array( + 'label' => t('Revision ID'), + 'description' => t('The media revision ID.'), + 'type' => 'integer_field', + 'read-only' => TRUE, + ); $properties['bundle'] = array( 'label' => t('Bundle'), 'description' => t('The media bundle.'), diff --git a/media_entity.install b/media_entity.install index 61d41f5..bef9d07 100644 --- a/media_entity.install +++ b/media_entity.install @@ -223,7 +223,7 @@ function media_entity_schema() { 'fields' => array( 'mid' => array( 'description' => 'The primary identifier for a media.', - 'type' => 'serial', + 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, ),