You are here

public static function FileItem::generateSampleValue in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/file/src/Plugin/Field/FieldType/FileItem.php \Drupal\file\Plugin\Field\FieldType\FileItem::generateSampleValue()
  2. 10 core/modules/file/src/Plugin/Field/FieldType/FileItem.php \Drupal\file\Plugin\Field\FieldType\FileItem::generateSampleValue()

Generates placeholder field values.

Useful when populating site with placeholder content during site building or profiling.

Parameters

\Drupal\Core\Field\FieldDefinitionInterface $field_definition: The field definition.

Return value

array An associative array of values.

Overrides EntityReferenceItem::generateSampleValue

1 method overrides FileItem::generateSampleValue()
ImageItem::generateSampleValue in core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
Generates placeholder field values.

File

core/modules/file/src/Plugin/Field/FieldType/FileItem.php, line 324

Class

FileItem
Plugin implementation of the 'file' field type.

Namespace

Drupal\file\Plugin\Field\FieldType

Code

public static function generateSampleValue(FieldDefinitionInterface $field_definition) {
  $random = new Random();
  $settings = $field_definition
    ->getSettings();

  // Prepare destination.
  $dirname = static::doGetUploadLocation($settings);
  \Drupal::service('file_system')
    ->prepareDirectory($dirname, FileSystemInterface::CREATE_DIRECTORY);

  // Generate a file entity.
  $destination = $dirname . '/' . $random
    ->name(10, TRUE) . '.txt';
  $data = $random
    ->paragraphs(3);
  $file = file_save_data($data, $destination, FileSystemInterface::EXISTS_ERROR);
  $values = [
    'target_id' => $file
      ->id(),
    'display' => (int) $settings['display_default'],
    'description' => $random
      ->sentences(10),
  ];
  return $values;
}