diff --git a/core/config/schema/core.data_types.schema.yml b/core/config/schema/core.data_types.schema.yml
index 248a072..b71cf10 100644
--- a/core/config/schema/core.data_types.schema.yml
+++ b/core/config/schema/core.data_types.schema.yml
@@ -373,7 +373,7 @@ field_config_base:
type: string
label: 'Default value function'
settings:
- type: field.[%parent.field_type].instance_settings
+ type: field.[%parent.field_type].field_settings
field_type:
type: string
label: 'Field type'
@@ -404,7 +404,7 @@ core.date_format.*:
# Schema for the String field type.
-field.string.instance_settings:
+field.string.field_settings:
type: sequence
label: 'String settings'
sequence:
@@ -435,7 +435,7 @@ field.boolean.settings:
type: string
label: 'Off label'
-field.boolean.instance_settings:
+field.boolean.field_settings:
label: 'Boolean settings'
type: mapping
mapping: { }
@@ -459,7 +459,7 @@ field.email.settings:
sequence:
- type: string
-field.email.instance_settings:
+field.email.field_settings:
type: sequence
label: 'Email settings'
sequence:
@@ -486,7 +486,7 @@ field.integer.settings:
- type: string
label: 'setting'
-field.integer.instance_settings:
+field.integer.field_settings:
type: mapping
label: 'Integer'
mapping:
@@ -525,7 +525,7 @@ field.decimal.settings:
type: integer
label: 'Scale'
-field.decimal.instance_settings:
+field.decimal.field_settings:
type: mapping
label: 'Decimal'
mapping:
@@ -560,7 +560,7 @@ field.float.settings:
- type: string
label: 'setting'
-field.float.instance_settings:
+field.float.field_settings:
type: mapping
label: 'Float'
mapping:
diff --git a/core/lib/Drupal/Core/Entity/ContentEntityDatabaseStorage.php b/core/lib/Drupal/Core/Entity/ContentEntityDatabaseStorage.php
index f68a0da..a61c5bb 100644
--- a/core/lib/Drupal/Core/Entity/ContentEntityDatabaseStorage.php
+++ b/core/lib/Drupal/Core/Entity/ContentEntityDatabaseStorage.php
@@ -1506,7 +1506,7 @@ public function onBundleRename($bundle, $bundle_new) {
// configurable fields, so we use the specific API.
// @todo Use the unified store of deleted field definitions instead in
// https://www.drupal.org/node/2282119
- $field_definitions += entity_load_multiple_by_properties('field_instance_config', array('entity_type' => $this->entityTypeId, 'bundle' => $bundle, 'deleted' => TRUE, 'include_deleted' => TRUE));
+ $field_definitions += entity_load_multiple_by_properties('field_config', array('entity_type' => $this->entityTypeId, 'bundle' => $bundle, 'deleted' => TRUE, 'include_deleted' => TRUE));
foreach ($field_definitions as $field_definition) {
$storage_definition = $field_definition->getFieldStorageDefinition();
diff --git a/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php b/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php
index a4849be..6d75946 100644
--- a/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php
+++ b/core/lib/Drupal/Core/Entity/ContentEntityStorageBase.php
@@ -10,8 +10,6 @@
use Drupal\Component\Utility\String;
use Drupal\Core\Field\FieldDefinitionInterface;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
-use Drupal\Core\Cache\Cache;
-use Drupal\field\FieldInstanceConfigInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
abstract class ContentEntityStorageBase extends EntityStorageBase implements FieldableEntityStorageInterface {
@@ -137,7 +135,7 @@ public function purgeFieldData(FieldDefinitionInterface $field_definition, $batc
* Reads values to be purged for a single field.
*
* This method is called during field data purge, on fields for which
- * onFieldDelete() or onFieldInstanceDelete() has previously run.
+ * onFieldDelete() or onFieldDelete() has previously run.
*
* @param \Drupal\Core\Field\FieldDefinitionInterface $field_definition
* The field definition.
diff --git a/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php b/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php
index 93e6528..eca5196 100644
--- a/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php
+++ b/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php
@@ -109,7 +109,7 @@ public function resetCache(array $entities = NULL);
* @param array $display_options
* Can be either:
* - The name of a view mode. The field will be displayed according to the
- * display settings specified for this view mode in the $instance
+ * display settings specified for this view mode in the $field
* definition for the field in the entity's bundle. If no display settings
* are found for the view mode, the settings for the 'default' view mode
* will be used.
diff --git a/core/lib/Drupal/Core/Field/BaseFieldDefinition.php b/core/lib/Drupal/Core/Field/BaseFieldDefinition.php
index 20b31ad..be65768 100644
--- a/core/lib/Drupal/Core/Field/BaseFieldDefinition.php
+++ b/core/lib/Drupal/Core/Field/BaseFieldDefinition.php
@@ -62,7 +62,7 @@ public static function create($type) {
// settings for the field type.
// @todo Cleanup in https://drupal.org/node/2116341.
$field_type_manager = \Drupal::service('plugin.manager.field.field_type');
- $default_settings = $field_type_manager->getDefaultSettings($type) + $field_type_manager->getDefaultInstanceSettings($type);
+ $default_settings = $field_type_manager->getDefaultSettings($type) + $field_type_manager->getDefaultFieldSettings($type);
$field_definition->itemDefinition->setSettings($default_settings);
return $field_definition;
}
diff --git a/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php b/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php
index 75f679e..9fbe75c 100644
--- a/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php
+++ b/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php
@@ -155,7 +155,7 @@ protected function getBaseFieldDefinition() {
*/
public function preSave(EntityStorageInterface $storage) {
// Set the default instance settings.
- $this->settings += \Drupal::service('plugin.manager.field.field_type')->getDefaultInstanceSettings($this->getType());
+ $this->settings += \Drupal::service('plugin.manager.field.field_type')->getDefaultFieldSettings($this->getType());
// Call the parent's presave method to perform validate and calculate
// dependencies.
diff --git a/core/lib/Drupal/Core/Field/FieldConfigStorageBase.php b/core/lib/Drupal/Core/Field/FieldConfigStorageBase.php
index 00fbe35..4023599 100644
--- a/core/lib/Drupal/Core/Field/FieldConfigStorageBase.php
+++ b/core/lib/Drupal/Core/Field/FieldConfigStorageBase.php
@@ -28,7 +28,7 @@
protected function mapFromStorageRecords(array $records) {
foreach ($records as &$record) {
$class = $this->fieldTypeManager->getPluginClass($record['field_type']);
- $record['settings'] = $class::instanceSettingsFromConfigData($record['settings']);
+ $record['settings'] = $class::fieldSettingsFromConfigData($record['settings']);
}
return parent::mapFromStorageRecords($records);
}
@@ -39,7 +39,7 @@ protected function mapFromStorageRecords(array $records) {
protected function mapToStorageRecord(EntityInterface $entity) {
$record = parent::mapToStorageRecord($entity);
$class = $this->fieldTypeManager->getPluginClass($record['field_type']);
- $record['settings'] = $class::instanceSettingsToConfigData($record['settings']);
+ $record['settings'] = $class::fieldSettingsFromConfigData($record['settings']);
return $record;
}
diff --git a/core/lib/Drupal/Core/Field/FieldDefinitionInterface.php b/core/lib/Drupal/Core/Field/FieldDefinitionInterface.php
index 2236d59..9d1e446 100644
--- a/core/lib/Drupal/Core/Field/FieldDefinitionInterface.php
+++ b/core/lib/Drupal/Core/Field/FieldDefinitionInterface.php
@@ -28,16 +28,16 @@
* information comes from. For example, field.module provides an implementation
* based on two levels of configuration. It allows the site administrator to add
* custom fields to any entity type and bundle via the "field_storage_config"
- * and "field_instance_config" configuration entities. The former for storing
+ * and "field_config" configuration entities. The former for storing
* configuration that is independent of which entity type and bundle the field
* is added to, and the latter for storing configuration that is specific to the
- * entity type and bundle. The class that implements "field_instance_config"
+ * entity type and bundle. The class that implements "field_config"
* configuration entities also implements this interface, returning information
* from either itself, or from the corresponding "field_storage_config"
* configuration, as appropriate.
*
* However, entity base fields, such as $node->title, are not managed by
- * field.module and its "field_storage_config"/"field_instance_config"
+ * field.module and its "field_storage_config"/"field_config"
* configuration entities. Therefore, their definitions are provided by
* different objects based on the class \Drupal\Core\Field\BaseFieldDefinition,
* which implements this interface as well.
diff --git a/core/lib/Drupal/Core/Field/FieldItemBase.php b/core/lib/Drupal/Core/Field/FieldItemBase.php
index 715bbb7..3360ea2 100644
--- a/core/lib/Drupal/Core/Field/FieldItemBase.php
+++ b/core/lib/Drupal/Core/Field/FieldItemBase.php
@@ -35,7 +35,7 @@ public static function defaultSettings() {
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array();
}
@@ -252,7 +252,7 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_
/**
* {@inheritdoc}
*/
- public function instanceSettingsForm(array $form, FormStateInterface $form_state) {
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
return array();
}
@@ -273,14 +273,14 @@ public static function settingsFromConfigData(array $settings) {
/**
* {@inheritdoc}
*/
- public static function instanceSettingsToConfigData(array $settings) {
+ public static function fieldSettingsToConfigData(array $settings) {
return $settings;
}
/**
* {@inheritdoc}
*/
- public static function instanceSettingsFromConfigData(array $settings) {
+ public static function fieldSettingsFromConfigData(array $settings) {
return $settings;
}
diff --git a/core/lib/Drupal/Core/Field/FieldItemInterface.php b/core/lib/Drupal/Core/Field/FieldItemInterface.php
index 8577a04..59bd0bd 100644
--- a/core/lib/Drupal/Core/Field/FieldItemInterface.php
+++ b/core/lib/Drupal/Core/Field/FieldItemInterface.php
@@ -55,7 +55,7 @@ public static function mainPropertyName();
*
* This method is static because the field schema information is needed on
* creation of the field. FieldItemInterface objects instantiated at that
- * time are not reliable as field instance settings might be missing.
+ * time are not reliable as field settings might be missing.
*
* Computed fields having no schema should return an empty array.
*
@@ -217,7 +217,7 @@ public function delete();
public function deleteRevision();
/**
- * Defines the field-level settings for this plugin.
+ * Defines the storage-level settings for this plugin.
*
* @return array
* A list of default settings, keyed by the setting name.
@@ -225,12 +225,12 @@ public function deleteRevision();
public static function defaultSettings();
/**
- * Defines the instance-level settings for this plugin.
+ * Defines the field-level settings for this plugin.
*
* @return array
* A list of default settings, keyed by the setting name.
*/
- public static function defaultInstanceSettings();
+ public static function defaultFieldSettings();
/**
* Returns a settings array that can be stored as a configuration value.
@@ -286,12 +286,10 @@ public static function settingsFromConfigData(array $settings);
/**
* Returns a settings array that can be stored as a configuration value.
*
- * Same as static::settingsToConfigData(), but for the field's instance
- * settings.
+ * Same as static::settingsToConfigData(), but for the field's settings.
*
* @param array $settings
- * The field's instance settings in the field type's canonical
- * representation.
+ * The field's settings in the field type's canonical representation.
*
* @return array
* An array (either the unmodified $settings or a modified representation)
@@ -299,38 +297,38 @@ public static function settingsFromConfigData(array $settings);
*
* @see \Drupal\Core\Field\FieldItemInterface::settingsToConfigData()
*/
- public static function instanceSettingsToConfigData(array $settings);
+ public static function fieldSettingsToConfigData(array $settings);
/**
* Returns a settings array in the field type's canonical representation.
*
- * This function does the inverse of static::instanceSettingsToConfigData().
- * It's called when loading a field's instance settings from a configuration
+ * This function does the inverse of static::fieldSettingsToConfigData().
+ * It's called when loading a field's settings from a configuration
* object.
*
* @param array $settings
- * The field's instance settings, as it is stored within a configuration
+ * The field's settings, as it is stored within a configuration
* object.
*
* @return array
- * The instance settings, in the representation expected by the field type
+ * The field settings, in the representation expected by the field type
* and code that interacts with it.
*
- * @see \Drupal\Core\Field\FieldItemInterface::instanceSettingsToConfigData()
+ * @see \Drupal\Core\Field\FieldItemInterface::fieldSettingsToConfigData()
*/
- public static function instanceSettingsFromConfigData(array $settings);
+ public static function fieldSettingsFromConfigData(array $settings);
/**
- * Returns a form for the field-level settings.
+ * Returns a form for the storage-level settings.
*
* Invoked from \Drupal\field_ui\Form\FieldStorageEditForm to allow
- * administrators to configure field-level settings.
+ * administrators to configure storage-level settings.
*
- * Field storage might reject field definition changes that affect the field
- * storage schema if the field already has data. When the $has_data parameter
- * is TRUE, the form should not allow changing the settings that take part in
- * the schema() method. It is recommended to set #access to FALSE on the
- * corresponding elements.
+ * Field storage might reject settings changes that affect the field
+ * storage schema if the storage already has data. When the $has_data
+ * parameter is TRUE, the form should not allow changing the settings that
+ * take part in the schema() method. It is recommended to set #access to
+ * FALSE on the corresponding elements.
*
* @param array $form
* The form where the settings form is being included in.
@@ -345,10 +343,10 @@ public static function instanceSettingsFromConfigData(array $settings);
public function settingsForm(array &$form, FormStateInterface $form_state, $has_data);
/**
- * Returns a form for the instance-level settings.
+ * Returns a form for the field-level settings.
*
- * Invoked from \Drupal\field_ui\Form\FieldInstanceEditForm to allow
- * administrators to configure instance-level settings.
+ * Invoked from \Drupal\field_ui\Form\FieldEditForm to allow
+ * administrators to configure field-level settings.
*
* @param array $form
* The form where the settings form is being included in.
@@ -356,8 +354,8 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_
* The form state of the (entire) configuration form.
*
* @return array
- * The form definition for the field instance settings.
+ * The form definition for the field settings.
*/
- public function instanceSettingsForm(array $form, FormStateInterface $form_state);
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state);
}
diff --git a/core/lib/Drupal/Core/Field/FieldItemListInterface.php b/core/lib/Drupal/Core/Field/FieldItemListInterface.php
index 402aa19..30d4180 100644
--- a/core/lib/Drupal/Core/Field/FieldItemListInterface.php
+++ b/core/lib/Drupal/Core/Field/FieldItemListInterface.php
@@ -184,7 +184,7 @@ public function view($display_options = array());
/**
* Returns a form for the default value input.
*
- * Invoked from \Drupal\field_ui\Form\FieldInstanceEditForm to allow
+ * Invoked from \Drupal\field_ui\Form\FieldEditForm to allow
* administrators to configure instance-level default value.
*
* @param array $form
@@ -200,7 +200,7 @@ public function defaultValuesForm(array &$form, FormStateInterface $form_state);
/**
* Validates the submitted default value.
*
- * Invoked from \Drupal\field_ui\Form\FieldInstanceEditForm to allow
+ * Invoked from \Drupal\field_ui\Form\FieldEditForm to allow
* administrators to configure instance-level default value.
*
* @param array $element
@@ -215,7 +215,7 @@ public function defaultValuesFormValidate(array $element, array &$form, FormStat
/**
* Processes the submitted default value.
*
- * Invoked from \Drupal\field_ui\Form\FieldInstanceEditForm to allow
+ * Invoked from \Drupal\field_ui\Form\FieldEditForm to allow
* administrators to configure instance-level default value.
*
* @param array $element
diff --git a/core/lib/Drupal/Core/Field/FieldTypePluginManager.php b/core/lib/Drupal/Core/Field/FieldTypePluginManager.php
index 6a5f39a..bd34699 100644
--- a/core/lib/Drupal/Core/Field/FieldTypePluginManager.php
+++ b/core/lib/Drupal/Core/Field/FieldTypePluginManager.php
@@ -61,11 +61,11 @@ public function getDefaultSettings($type) {
/**
* {@inheritdoc}
*/
- public function getDefaultInstanceSettings($type) {
+ public function getDefaultFieldSettings($type) {
$plugin_definition = $this->getDefinition($type, FALSE);
if (!empty($plugin_definition['class'])) {
$plugin_class = DefaultFactory::getPluginClass($type, $plugin_definition);
- return $plugin_class::defaultInstanceSettings();
+ return $plugin_class::defaultFieldSettings();
}
return array();
}
diff --git a/core/lib/Drupal/Core/Field/FieldTypePluginManagerInterface.php b/core/lib/Drupal/Core/Field/FieldTypePluginManagerInterface.php
index cf47637..bcbc108 100644
--- a/core/lib/Drupal/Core/Field/FieldTypePluginManagerInterface.php
+++ b/core/lib/Drupal/Core/Field/FieldTypePluginManagerInterface.php
@@ -17,24 +17,24 @@
interface FieldTypePluginManagerInterface extends PluginManagerInterface {
/**
- * Returns the default instance-level settings for a field type.
- *
- * @param string $type
- * A field type name.
- *
- * @return array
- * The instance's default settings, as provided by the plugin definition, or
- * an empty array if type or settings are undefined.
- */
- public function getDefaultInstanceSettings($type);
-
- /**
* Returns the default field-level settings for a field type.
*
* @param string $type
* A field type name.
*
* @return array
+ * The field's default settings, as provided by the plugin definition, or
+ * an empty array if type or settings are undefined.
+ */
+ public function getDefaultFieldSettings($type);
+
+ /**
+ * Returns the default storage-level settings for a field type.
+ *
+ * @param string $type
+ * A field type name.
+ *
+ * @return array
* The type's default settings, as provided by the plugin definition, or an
* empty array if type or settings are undefined.
*/
diff --git a/core/lib/Drupal/Core/Field/FormatterInterface.php b/core/lib/Drupal/Core/Field/FormatterInterface.php
index 08c12d2..b809172 100644
--- a/core/lib/Drupal/Core/Field/FormatterInterface.php
+++ b/core/lib/Drupal/Core/Field/FormatterInterface.php
@@ -19,7 +19,7 @@
/**
* Returns a form to configure settings for the formatter.
*
- * Invoked from \Drupal\field_ui\Form\FieldInstanceEditForm to allow
+ * Invoked from \Drupal\field_ui\Form\FieldEditForm to allow
* administrators to configure the formatter. The field_ui module takes care
* of handling submitted form values.
*
diff --git a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/EntityReferenceItem.php b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/EntityReferenceItem.php
index 5233910..a8091a7 100644
--- a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/EntityReferenceItem.php
+++ b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/EntityReferenceItem.php
@@ -47,10 +47,10 @@ public static function defaultSettings() {
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array(
'handler' => 'default',
- ) + parent::defaultInstanceSettings();
+ ) + parent::defaultFieldSettings();
}
/**
diff --git a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/IntegerItem.php b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/IntegerItem.php
index 2d3fa30..9af1b8a 100644
--- a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/IntegerItem.php
+++ b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/IntegerItem.php
@@ -35,7 +35,7 @@ public static function defaultSettings() {
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array(
'min' => '',
'max' => '',
@@ -44,7 +44,7 @@ public static function defaultInstanceSettings() {
// Valid size property values include: 'tiny', 'small', 'medium', 'normal'
// and 'big'.
'size' => 'normal',
- ) + parent::defaultInstanceSettings();
+ ) + parent::defaultFieldSettings();
}
/**
diff --git a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/NumericItemBase.php b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/NumericItemBase.php
index 28846bb..45dbab1 100644
--- a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/NumericItemBase.php
+++ b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/NumericItemBase.php
@@ -18,19 +18,19 @@
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array(
'min' => '',
'max' => '',
'prefix' => '',
'suffix' => '',
- ) + parent::defaultInstanceSettings();
+ ) + parent::defaultFieldSettings();
}
/**
* {@inheritdoc}
*/
- public function instanceSettingsForm(array $form, FormStateInterface $form_state) {
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
$element = array();
$settings = $this->getSettings();
diff --git a/core/lib/Drupal/Core/Field/WidgetInterface.php b/core/lib/Drupal/Core/Field/WidgetInterface.php
index 6dc5608..a4d0fe8 100644
--- a/core/lib/Drupal/Core/Field/WidgetInterface.php
+++ b/core/lib/Drupal/Core/Field/WidgetInterface.php
@@ -25,7 +25,7 @@
/**
* Returns a form to configure settings for the widget.
*
- * Invoked from \Drupal\field_ui\Form\FieldInstanceEditForm to allow
+ * Invoked from \Drupal\field_ui\Form\FieldEditForm to allow
* administrators to configure the widget. The field_ui module takes care of
* handling submitted form values.
*
diff --git a/core/modules/block_content/block_content.module b/core/modules/block_content/block_content.module
index dadcf4b..188eee7 100644
--- a/core/modules/block_content/block_content.module
+++ b/core/modules/block_content/block_content.module
@@ -6,7 +6,7 @@
*/
use Drupal\Core\Routing\RouteMatchInterface;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\field\Entity\FieldStorageConfig;
/**
@@ -73,12 +73,12 @@ function block_content_entity_type_alter(array &$entity_types) {
* (optional) The label for the body instance. Defaults to 'Body'
*
* @return array()
- * Body field instance.
+ * Body field.
*/
function block_content_add_body_field($block_type_id, $label = 'Body') {
// Add or remove the body field, as needed.
$field_storage = FieldStorageConfig::loadByName('block_content', 'body');
- $instance = FieldInstanceConfig::loadByName('block_content', $block_type_id, 'body');
+ $field = FieldConfig::loadByName('block_content', $block_type_id, 'body');
if (empty($field_storage)) {
$field_storage = entity_create('field_storage_config', array(
'name' => 'body',
@@ -87,14 +87,14 @@ function block_content_add_body_field($block_type_id, $label = 'Body') {
));
$field_storage->save();
}
- if (empty($instance)) {
- $instance = entity_create('field_instance_config', array(
+ if (empty($field)) {
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => $block_type_id,
'label' => $label,
'settings' => array('display_summary' => FALSE),
));
- $instance->save();
+ $field->save();
// Assign widget settings for the 'default' form mode.
entity_get_form_display('block_content', $block_type_id, 'default')
@@ -112,5 +112,5 @@ function block_content_add_body_field($block_type_id, $label = 'Body') {
->save();
}
- return $instance;
+ return $field;
}
diff --git a/core/modules/block_content/src/Tests/BlockContentFieldTest.php b/core/modules/block_content/src/Tests/BlockContentFieldTest.php
index 2b8023c..7fd93d3 100644
--- a/core/modules/block_content/src/Tests/BlockContentFieldTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentFieldTest.php
@@ -31,11 +31,11 @@ class BlockContentFieldTest extends BlockContentTestBase {
protected $fieldStorage;
/**
- * The created instance.
+ * The created field.
*
- * @var \Drupal\field\Entity\FieldInstanceConfig
+ * @var \Drupal\field\Entity\FieldConfig
*/
- protected $instance;
+ protected $field;
/**
* The block type.
@@ -61,14 +61,14 @@ public function testBlockFields() {
'cardinality' => 2,
));
$this->fieldStorage->save();
- $this->instance = entity_create('field_instance_config', array(
+ $this->field = entity_create('field_config', array(
'field_storage' => $this->fieldStorage,
'bundle' => 'link',
'settings' => array(
'title' => DRUPAL_OPTIONAL,
),
));
- $this->instance->save();
+ $this->field->save();
entity_get_form_display('block_content', 'link', 'default')
->setComponent($this->fieldStorage->getName(), array(
'type' => 'link_default',
diff --git a/core/modules/comment/comment.module b/core/modules/comment/comment.module
index 54bfefa..9abfba0 100644
--- a/core/modules/comment/comment.module
+++ b/core/modules/comment/comment.module
@@ -26,7 +26,7 @@
use Drupal\Core\Render\Element;
use Drupal\Core\Url;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
use Drupal\field\FieldStorageConfigInterface;
use Drupal\file\FileInterface;
use Drupal\user\EntityOwnerInterface;
@@ -133,16 +133,16 @@ function comment_theme() {
}
/**
- * Implements hook_ENTITY_TYPE_create() for 'field_instance_config'.
+ * Implements hook_ENTITY_TYPE_create() for 'field_config'.
*/
-function comment_field_instance_config_create(FieldInstanceConfigInterface $instance) {
- if ($instance->getType() == 'comment' && !$instance->isSyncing()) {
+function comment_field_config_create(FieldConfigInterface $field) {
+ if ($field->getType() == 'comment' && !$field->isSyncing()) {
// Assign default values for the field instance.
- if (!isset($instance->default_value)) {
- $instance->default_value = array();
+ if (!isset($field->default_value)) {
+ $field->default_value = array();
}
- $instance->default_value += array(array());
- $instance->default_value[0] += array(
+ $field->default_value += array(array());
+ $field->default_value[0] += array(
'status' => CommentItemInterface::OPEN,
'cid' => 0,
'last_comment_timestamp' => 0,
@@ -154,10 +154,10 @@ function comment_field_instance_config_create(FieldInstanceConfigInterface $inst
}
/**
- * Implements hook_ENTITY_TYPE_update() for 'field_instance_config'.
+ * Implements hook_ENTITY_TYPE_update() for 'field_config'.
*/
-function comment_field_instance_config_update(FieldInstanceConfigInterface $instance) {
- if ($instance->getType() == 'comment') {
+function comment_field_config_update(FieldConfigInterface $field) {
+ if ($field->getType() == 'comment') {
// Comment field settings also affects the rendering of *comment* entities,
// not only the *commented* entities.
\Drupal::entityManager()->getViewBuilder('comment')->resetCache();
@@ -178,14 +178,14 @@ function comment_field_storage_config_insert(FieldStorageConfigInterface $field_
}
/**
- * Implements hook_ENTITY_TYPE_delete() for 'field_instance_config'.
+ * Implements hook_ENTITY_TYPE_delete() for 'field_config'.
*/
-function comment_field_instance_config_delete(FieldInstanceConfigInterface $instance) {
- if ($instance->getType() == 'comment') {
+function comment_field_config_delete(FieldConfigInterface $field) {
+ if ($field->getType() == 'comment') {
// Delete all comments that used by the entity bundle.
$entity_query = \Drupal::entityQuery('comment');
- $entity_query->condition('entity_type', $instance->getEntityTypeId());
- $entity_query->condition('field_name', $instance->getName());
+ $entity_query->condition('entity_type', $field->getEntityTypeId());
+ $entity_query->condition('field_name', $field->getName());
$cids = $entity_query->execute();
entity_delete_multiple('comment', $cids);
}
diff --git a/core/modules/comment/config/schema/comment.schema.yml b/core/modules/comment/config/schema/comment.schema.yml
index 4d482c1..8bc1256 100644
--- a/core/modules/comment/config/schema/comment.schema.yml
+++ b/core/modules/comment/config/schema/comment.schema.yml
@@ -93,7 +93,7 @@ field.comment.value:
type: integer
label: 'Count'
-field.comment.instance_settings:
+field.comment.field_settings:
type: mapping
label: 'Comment settings'
mapping:
diff --git a/core/modules/comment/src/CommentManager.php b/core/modules/comment/src/CommentManager.php
index 5c76abb..fc7a9c0 100644
--- a/core/modules/comment/src/CommentManager.php
+++ b/core/modules/comment/src/CommentManager.php
@@ -20,7 +20,7 @@
use Drupal\Core\StringTranslation\StringTranslationTrait;
use Drupal\Core\StringTranslation\TranslationInterface;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
/**
* Comment manager contains common functions to manage comment fields.
@@ -157,7 +157,7 @@ public function addDefaultField($entity_type, $bundle, $field_name = 'comment',
}
// Make sure the instance doesn't already exist.
if (!array_key_exists($field_name, $this->entityManager->getFieldDefinitions($entity_type, $bundle))) {
- $instance = $this->entityManager->getStorage('field_instance_config')->create(array(
+ $field = $this->entityManager->getStorage('field_config')->create(array(
'label' => 'Comments',
'description' => '',
'field_name' => $field_name,
@@ -174,7 +174,7 @@ public function addDefaultField($entity_type, $bundle, $field_name = 'comment',
),
),
));
- $instance->save();
+ $field->save();
// Assign widget settings for the 'default' form mode.
entity_get_form_display($entity_type, $bundle, 'default')
@@ -227,9 +227,9 @@ public function addBodyField($comment_type_id) {
));
$field_storage->save();
}
- if (!FieldInstanceConfig::loadByName('comment', $comment_type_id, 'comment_body')) {
+ if (!FieldConfig::loadByName('comment', $comment_type_id, 'comment_body')) {
// Attaches the body field by default.
- $field_instance = $this->entityManager->getStorage('field_instance_config')->create(array(
+ $field_instance = $this->entityManager->getStorage('field_config')->create(array(
'field_name' => 'comment_body',
'label' => 'Comment',
'entity_type' => 'comment',
diff --git a/core/modules/comment/src/CommentStorage.php b/core/modules/comment/src/CommentStorage.php
index 9639d59..36ae10a 100644
--- a/core/modules/comment/src/CommentStorage.php
+++ b/core/modules/comment/src/CommentStorage.php
@@ -132,14 +132,14 @@ public function getDisplayOrdinal(CommentInterface $comment, $comment_mode, $div
* {@inheritdoc}
*/
public function getNewCommentPageNumber($total_comments, $new_comments, ContentEntityInterface $entity, $field_name = 'comment') {
- $instance = $entity->getFieldDefinition($field_name);
- $comments_per_page = $instance->getSetting('per_page');
+ $field = $entity->getFieldDefinition($field_name);
+ $comments_per_page = $field->getSetting('per_page');
if ($total_comments <= $comments_per_page) {
// Only one page of comments.
$count = 0;
}
- elseif ($instance->getSetting('default_mode') == CommentManagerInterface::COMMENT_MODE_FLAT) {
+ elseif ($field->getSetting('default_mode') == CommentManagerInterface::COMMENT_MODE_FLAT) {
// Flat comments.
$count = $total_comments - $new_comments;
}
diff --git a/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php b/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php
index b54564a..2aa0509 100644
--- a/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php
+++ b/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php
@@ -40,14 +40,14 @@ public static function defaultSettings() {
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array(
'default_mode' => CommentManagerInterface::COMMENT_MODE_THREADED,
'per_page' => 50,
'form_location' => CommentItemInterface::FORM_BELOW,
'anonymous' => COMMENT_ANONYMOUS_MAYNOT_CONTACT,
'preview' => DRUPAL_OPTIONAL,
- ) + parent::defaultInstanceSettings();
+ ) + parent::defaultFieldSettings();
}
/**
@@ -99,7 +99,7 @@ public static function schema(FieldStorageDefinitionInterface $field_definition)
/**
* {@inheritdoc}
*/
- public function instanceSettingsForm(array $form, FormStateInterface $form_state) {
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
$element = array();
$settings = $this->getSettings();
diff --git a/core/modules/comment/src/Tests/CommentFieldsTest.php b/core/modules/comment/src/Tests/CommentFieldsTest.php
index 393bfd7..df65e26 100644
--- a/core/modules/comment/src/Tests/CommentFieldsTest.php
+++ b/core/modules/comment/src/Tests/CommentFieldsTest.php
@@ -9,7 +9,7 @@
use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
/**
* Tests fields on comments.
@@ -35,10 +35,10 @@ function testCommentDefaultFields() {
$this->container->get('comment.manager')->addDefaultField('node', 'test_node_type');
// Check that the 'comment_body' field is present on the comment bundle.
- $instance = FieldInstanceConfig::loadByName('comment', 'comment', 'comment_body');
- $this->assertTrue(!empty($instance), 'The comment_body field is added when a comment bundle is created');
+ $field = FieldConfig::loadByName('comment', 'comment', 'comment_body');
+ $this->assertTrue(!empty($field), 'The comment_body field is added when a comment bundle is created');
- $instance->delete();
+ $field->delete();
// Check that the 'comment_body' field is deleted.
$field_storage = FieldStorageConfig::loadByName('comment', 'comment_body');
@@ -53,13 +53,13 @@ function testCommentDefaultFields() {
// new comment bundle.
$field_storage = FieldStorageConfig::loadByName('comment', 'comment_body');
$this->assertTrue($field_storage, 'The comment_body field exists');
- $instance = FieldInstanceConfig::loadByName('comment', 'comment', 'comment_body');
- $this->assertTrue(isset($instance), format_string('The comment_body field is present for comments on type @type', array('@type' => $type_name)));
+ $field = FieldConfig::loadByName('comment', 'comment', 'comment_body');
+ $this->assertTrue(isset($field), format_string('The comment_body field is present for comments on type @type', array('@type' => $type_name)));
// Test adding a field that defaults to CommentItemInterface::CLOSED.
$this->container->get('comment.manager')->addDefaultField('node', 'test_node_type', 'who_likes_ponies', CommentItemInterface::CLOSED, 'who_likes_ponies');
- $field_storage = entity_load('field_instance_config', 'node.test_node_type.who_likes_ponies');
- $this->assertEqual($field_storage->default_value[0]['status'], CommentItemInterface::CLOSED);
+ $field = entity_load('field_config', 'node.test_node_type.who_likes_ponies');
+ $this->assertEqual($field->default_value[0]['status'], CommentItemInterface::CLOSED);
}
/**
@@ -120,7 +120,7 @@ function testCommentInstallAfterContentModule() {
function testCommentFormat() {
// Disable text processing for comments.
$this->drupalLogin($this->admin_user);
- $edit = array('instance[settings][text_processing]' => 0);
+ $edit = array('field[settings][text_processing]' => 0);
$this->drupalPostForm('admin/structure/comment/manage/comment/fields/comment.comment.comment_body', $edit, t('Save settings'));
// Change formatter settings.
diff --git a/core/modules/comment/src/Tests/CommentNodeChangesTest.php b/core/modules/comment/src/Tests/CommentNodeChangesTest.php
index f208786..35666f8 100644
--- a/core/modules/comment/src/Tests/CommentNodeChangesTest.php
+++ b/core/modules/comment/src/Tests/CommentNodeChangesTest.php
@@ -28,10 +28,10 @@ function testNodeDeletion() {
// Make sure the comment field and all its instances are deleted when node
// type is deleted.
$this->assertNotNull(entity_load('field_storage_config', 'node.comment'), 'Comment field exists');
- $this->assertNotNull(entity_load('field_instance_config', 'node.article.comment'), 'Comment instance exists');
+ $this->assertNotNull(entity_load('field_config', 'node.article.comment'), 'Comment instance exists');
// Delete the node type.
entity_delete_multiple('node_type', array($this->node->bundle()));
$this->assertNull(entity_load('field_storage_config', 'node.comment'), 'Comment field deleted');
- $this->assertNull(entity_load('field_instance_config', 'node.article.comment'), 'Comment instance deleted');
+ $this->assertNull(entity_load('field_config', 'node.article.comment'), 'Comment instance deleted');
}
}
diff --git a/core/modules/comment/src/Tests/CommentNonNodeTest.php b/core/modules/comment/src/Tests/CommentNonNodeTest.php
index 85f0554..8f61ea0 100644
--- a/core/modules/comment/src/Tests/CommentNonNodeTest.php
+++ b/core/modules/comment/src/Tests/CommentNonNodeTest.php
@@ -10,7 +10,7 @@
use Drupal\comment\CommentInterface;
use Drupal\comment\Entity\CommentType;
use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\simpletest\WebTestBase;
use Drupal\Core\Entity\EntityInterface;
@@ -94,8 +94,8 @@ function postComment(EntityInterface $entity, $comment, $subject = '', $contact
$edit = array();
$edit['comment_body[0][value]'] = $comment;
- $instance = FieldInstanceConfig::loadByName('entity_test', 'entity_test', 'comment');
- $preview_mode = $instance->getSetting('preview');
+ $field = FieldConfig::loadByName('entity_test', 'entity_test', 'comment');
+ $preview_mode = $field->getSetting('preview');
// Must get the page before we test for fields.
if ($entity !== NULL) {
diff --git a/core/modules/comment/src/Tests/CommentTestBase.php b/core/modules/comment/src/Tests/CommentTestBase.php
index 05f139d..458f6f1 100644
--- a/core/modules/comment/src/Tests/CommentTestBase.php
+++ b/core/modules/comment/src/Tests/CommentTestBase.php
@@ -10,8 +10,8 @@
use Drupal\comment\Entity\CommentType;
use Drupal\comment\Entity\Comment;
use Drupal\comment\CommentInterface;
+use Drupal\field\Entity\FieldConfig;
use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
-use Drupal\field\Entity\FieldInstanceConfig;
use Drupal\simpletest\WebTestBase;
/**
@@ -109,12 +109,12 @@ public function postComment($entity, $comment, $subject = '', $contact = NULL, $
$edit['comment_body[0][value]'] = $comment;
if ($entity !== NULL) {
- $instance = FieldInstanceConfig::loadByName('node', $entity->bundle(), $field_name);
+ $field = FieldConfig::loadByName('node', $entity->bundle(), $field_name);
}
else {
- $instance = FieldInstanceConfig::loadByName('node', 'article', $field_name);
+ $field = FieldConfig::loadByName('node', 'article', $field_name);
}
- $preview_mode = $instance->settings['preview'];
+ $preview_mode = $field->settings['preview'];
// Must get the page before we test for fields.
if ($entity !== NULL) {
@@ -309,9 +309,9 @@ public function setCommentsPerPage($number, $field_name = 'comment') {
* Defaults to 'comment'.
*/
public function setCommentSettings($name, $value, $message, $field_name = 'comment') {
- $instance = FieldInstanceConfig::loadByName('node', 'article', $field_name);
- $instance->settings[$name] = $value;
- $instance->save();
+ $field = FieldConfig::loadByName('node', 'article', $field_name);
+ $field->settings[$name] = $value;
+ $field->save();
// Display status message.
$this->pass($message);
}
diff --git a/core/modules/comment/src/Tests/CommentTypeTest.php b/core/modules/comment/src/Tests/CommentTypeTest.php
index 87fb38b..75883f6 100644
--- a/core/modules/comment/src/Tests/CommentTypeTest.php
+++ b/core/modules/comment/src/Tests/CommentTypeTest.php
@@ -10,7 +10,7 @@
use Drupal\comment\Entity\CommentType;
use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\node\Entity\Node;
/**
@@ -95,8 +95,8 @@ public function testCommentTypeCreation() {
public function testCommentTypeEditing() {
$this->drupalLogin($this->adminUser);
- $instance = FieldInstanceConfig::loadByName('comment', 'comment', 'comment_body');
- $this->assertEqual($instance->getLabel(), 'Comment', 'Comment body field was found.');
+ $field = FieldConfig::loadByName('comment', 'comment', 'comment_body');
+ $this->assertEqual($field->getLabel(), 'Comment', 'Comment body field was found.');
// Change the comment type name.
$this->drupalGet('admin/structure/comment');
diff --git a/core/modules/comment/src/Tests/CommentValidationTest.php b/core/modules/comment/src/Tests/CommentValidationTest.php
index 891e9ab..994893c 100644
--- a/core/modules/comment/src/Tests/CommentValidationTest.php
+++ b/core/modules/comment/src/Tests/CommentValidationTest.php
@@ -62,7 +62,7 @@ public function testValidation() {
))->save();
// Add comment field instance to page content.
- $this->entityManager->getStorage('field_instance_config')->create(array(
+ $this->entityManager->getStorage('field_config')->create(array(
'field_name' => 'comment',
'entity_type' => 'node',
'bundle' => 'page',
diff --git a/core/modules/config/src/Tests/ConfigExportImportUITest.php b/core/modules/config/src/Tests/ConfigExportImportUITest.php
index 6d1ad7c..ab1a545 100644
--- a/core/modules/config/src/Tests/ConfigExportImportUITest.php
+++ b/core/modules/config/src/Tests/ConfigExportImportUITest.php
@@ -70,7 +70,7 @@ public function testExportImport() {
'type' => 'text',
));
$this->fieldStorage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $this->fieldStorage,
'bundle' => $this->content_type->type,
))->save();
@@ -96,10 +96,10 @@ public function testExportImport() {
$this->assertEqual(\Drupal::config('system.site')->get('slogan'), $this->originalSlogan);
// Delete the custom field.
- $field_instances = entity_load_multiple('field_instance_config');
- foreach ($field_instances as $field_instance) {
- if ($field_instance->field_name == $this->fieldName) {
- $field_instance->delete();
+ $fields = entity_load_multiple('field_config');
+ foreach ($fields as $field) {
+ if ($field->field_name == $this->fieldName) {
+ $field->delete();
}
}
$field_storages = entity_load_multiple('field_storage_config');
diff --git a/core/modules/config_translation/config_translation.api.php b/core/modules/config_translation/config_translation.api.php
index 27c89b1..9f7abfc 100644
--- a/core/modules/config_translation/config_translation.api.php
+++ b/core/modules/config_translation/config_translation.api.php
@@ -36,13 +36,13 @@ function hook_config_translation_info(&$info) {
$route_provider = \Drupal::service('router.route_provider');
// If field UI is not enabled, the base routes of the type
- // "field_ui.instance_edit_$entity_type" are not defined.
+ // "field_ui.field_edit_$entity_type" are not defined.
if (\Drupal::moduleHandler()->moduleExists('field_ui')) {
// Add fields entity mappers to all fieldable entity types defined.
foreach ($entity_manager->getDefinitions() as $entity_type_id => $entity_type) {
$base_route = NULL;
try {
- $base_route = $route_provider->getRouteByName('field_ui.instance_edit_' . $entity_type_id);
+ $base_route = $route_provider->getRouteByName('field_ui.field_edit_' . $entity_type_id);
}
catch (RouteNotFoundException $e) {
// Ignore non-existent routes.
@@ -51,10 +51,10 @@ function hook_config_translation_info(&$info) {
// Make sure entity type is fieldable and has a base route.
if ($entity_type->isFieldable() && !empty($base_route)) {
$info[$entity_type_id . '_fields'] = array(
- 'base_route_name' => 'field_ui.instance_edit_' . $entity_type_id,
- 'entity_type' => 'field_instance_config',
+ 'base_route_name' => 'field_ui.field_edit_' . $entity_type_id,
+ 'entity_type' => 'field_config',
'title' => t('!label field'),
- 'class' => '\Drupal\config_translation\ConfigFieldInstanceMapper',
+ 'class' => '\Drupal\config_translation\ConfigFieldMapper',
'base_entity_type' => $entity_type_id,
'weight' => 10,
);
diff --git a/core/modules/config_translation/config_translation.module b/core/modules/config_translation/config_translation.module
index 43aa754..9741ef5 100644
--- a/core/modules/config_translation/config_translation.module
+++ b/core/modules/config_translation/config_translation.module
@@ -92,9 +92,9 @@ function config_translation_entity_type_alter(array &$entity_types) {
if ($entity_type_id == 'block') {
$class = 'Drupal\config_translation\Controller\ConfigTranslationBlockListBuilder';
}
- elseif ($entity_type_id == 'field_instance_config') {
- $class = 'Drupal\config_translation\Controller\ConfigTranslationFieldInstanceListBuilder';
- // Will be filled in dynamically, see \Drupal\field\Entity\FieldInstanceConfig::linkTemplates().
+ elseif ($entity_type_id == 'field_config') {
+ $class = 'Drupal\config_translation\Controller\ConfigTranslationFieldListBuilder';
+ // Will be filled in dynamically, see \Drupal\field\Entity\FieldConfig::linkTemplates().
$entity_type->setLinkTemplate('drupal:config-translation-overview', 'config_translation.item.overview.');
}
else {
@@ -117,17 +117,17 @@ function config_translation_config_translation_info(&$info) {
$route_provider = \Drupal::service('router.route_provider');
// If field UI is not enabled, the base routes of the type
- // "field_ui.instance_edit_$entity_type" are not defined.
+ // "field_ui.field_edit_$entity_type" are not defined.
if (\Drupal::moduleHandler()->moduleExists('field_ui')) {
// Add fields entity mappers to all fieldable entity types defined.
foreach ($entity_manager->getDefinitions() as $entity_type_id => $entity_type) {
$base_route = NULL;
try {
- $base_route = $route_provider->getRouteByName('field_ui.instance_edit_' . $entity_type_id);
+ $base_route = $route_provider->getRouteByName('field_ui.field_edit_' . $entity_type_id);
}
catch (RouteNotFoundException $e) {
if ($collection = \Drupal::service('router.builder')->getCollectionDuringRebuild()) {
- $base_route = $collection->get('field_ui.instance_edit_' . $entity_type_id);
+ $base_route = $collection->get('field_ui.field_edit_' . $entity_type_id);
}
// Ignore non-existent routes.
}
@@ -135,10 +135,10 @@ function config_translation_config_translation_info(&$info) {
// Make sure entity type is fieldable and has a base route.
if ($entity_type->isFieldable() && !empty($base_route)) {
$info[$entity_type_id . '_fields'] = array(
- 'base_route_name' => 'field_ui.instance_edit_' . $entity_type_id,
- 'entity_type' => 'field_instance_config',
+ 'base_route_name' => 'field_ui.field_edit_' . $entity_type_id,
+ 'entity_type' => 'field_config',
'title' => '!label field',
- 'class' => '\Drupal\config_translation\ConfigFieldInstanceMapper',
+ 'class' => '\Drupal\config_translation\ConfigFieldMapper',
'base_entity_type' => $entity_type_id,
'weight' => 10,
);
diff --git a/core/modules/config_translation/src/ConfigFieldInstanceMapper.php b/core/modules/config_translation/src/ConfigFieldMapper.php
similarity index 82%
rename from core/modules/config_translation/src/ConfigFieldInstanceMapper.php
rename to core/modules/config_translation/src/ConfigFieldMapper.php
index 5eb2cfe..e028831 100644
--- a/core/modules/config_translation/src/ConfigFieldInstanceMapper.php
+++ b/core/modules/config_translation/src/ConfigFieldMapper.php
@@ -2,13 +2,13 @@
/**
* @file
- * Contains \Drupal\config_translation\ConfigFieldInstanceMapper.
+ * Contains \Drupal\config_translation\ConfigFieldMapper.
*/
namespace Drupal\config_translation;
/**
- * Configuration mapper for field instances.
+ * Configuration mapper for fields.
*
* On top of plugin definition values on ConfigEntityMapper, the plugin
* definition for field instance mappers are required to contain the following
@@ -16,12 +16,12 @@
* - base_entity_type: The name of the entity type the field instances are
* attached to.
*/
-class ConfigFieldInstanceMapper extends ConfigEntityMapper {
+class ConfigFieldMapper extends ConfigEntityMapper {
/**
* Loaded entity instance to help produce the translation interface.
*
- * @var \Drupal\field\FieldInstanceConfigInterface
+ * @var \Drupal\field\FieldConfigInterface
*/
protected $entity;
diff --git a/core/modules/config_translation/src/Controller/ConfigTranslationFieldInstanceListBuilder.php b/core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php
similarity index 94%
rename from core/modules/config_translation/src/Controller/ConfigTranslationFieldInstanceListBuilder.php
rename to core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php
index ef3b50f..7721615 100644
--- a/core/modules/config_translation/src/Controller/ConfigTranslationFieldInstanceListBuilder.php
+++ b/core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php
@@ -2,7 +2,7 @@
/**
* @file
- * Contains \Drupal\config_translation\Controller\ConfigTranslationFieldInstanceListBuilder.
+ * Contains \Drupal\config_translation\Controller\ConfigTranslationFieldListBuilder.
*/
namespace Drupal\config_translation\Controller;
@@ -18,7 +18,7 @@
/**
* Defines the config translation list builder for field instance entities.
*/
-class ConfigTranslationFieldInstanceListBuilder extends ConfigTranslationEntityListBuilder {
+class ConfigTranslationFieldListBuilder extends ConfigTranslationEntityListBuilder {
/**
* The name of the entity type the field instances are attached to.
@@ -61,7 +61,7 @@ public static function createInstance(ContainerInterface $container, EntityTypeI
}
/**
- * Constructs a new ConfigTranslationFieldInstanceListBuilder object.
+ * Constructs a new ConfigTranslationFieldListBuilder object.
*
* @param \Drupal\Core\Entity\EntityTypeInterface $entity_type
* The entity type definition.
@@ -91,7 +91,7 @@ public function setMapperDefinition($mapper_definition) {
public function load() {
// It is not possible to use the standard load method, because this needs
// all field instance entities only for the given baseEntityType.
- $ids = \Drupal::entityQuery('field_instance_config')
+ $ids = \Drupal::entityQuery('field_config')
->condition('id', $this->baseEntityType . '.', 'STARTS_WITH')
->execute();
return $this->storage->loadMultiple($ids);
diff --git a/core/modules/contact/src/Tests/Views/ContactFieldsTest.php b/core/modules/contact/src/Tests/Views/ContactFieldsTest.php
index 63c7d1a..25107dc 100644
--- a/core/modules/contact/src/Tests/Views/ContactFieldsTest.php
+++ b/core/modules/contact/src/Tests/Views/ContactFieldsTest.php
@@ -46,7 +46,7 @@ protected function setUp() {
'label' => 'Test contact form',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $this->field_storage,
'bundle' => 'contact_message',
))->save();
diff --git a/core/modules/content_translation/content_translation.admin.inc b/core/modules/content_translation/content_translation.admin.inc
index 36ac92e..3c5b2c1 100644
--- a/core/modules/content_translation/content_translation.admin.inc
+++ b/core/modules/content_translation/content_translation.admin.inc
@@ -11,7 +11,7 @@
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Language\LanguageInterface;
use Drupal\Core\Render\Element;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
/**
* Returns a form element to configure field synchronization.
@@ -110,7 +110,7 @@ function _content_translation_form_language_content_settings_form_alter(array &$
// Display the column translatability configuration widget.
// @todo Remove this special casing when arbitrary settings can be
// stored for any field. See https://drupal.org/node/2224761.
- if ($definition instanceof FieldInstanceConfigInterface) {
+ if ($definition instanceof FieldConfigInterface) {
$column_element = content_translation_field_sync_widget($definition);
if ($column_element) {
$form['settings'][$entity_type_id][$bundle]['columns'][$field_name] = $column_element;
diff --git a/core/modules/content_translation/content_translation.install b/core/modules/content_translation/content_translation.install
index 06a355b..a154bf1 100644
--- a/core/modules/content_translation/content_translation.install
+++ b/core/modules/content_translation/content_translation.install
@@ -95,7 +95,7 @@ function content_translation_install() {
->set('settings.translation_sync', FALSE)
->save();
}
- $config_names = \Drupal::configFactory()->listAll('field.instance.');
+ $config_names = \Drupal::configFactory()->listAll('field.field.');
foreach ($config_names as $name) {
\Drupal::config($name)
->set('settings.translation_sync', FALSE)
@@ -129,7 +129,7 @@ function content_translation_uninstall() {
->clear('settings.translation_sync')
->save();
}
- $config_names = \Drupal::configFactory()->listAll('field.instance.');
+ $config_names = \Drupal::configFactory()->listAll('field.field.');
foreach ($config_names as $name) {
\Drupal::config($name)
->clear('settings.translation_sync')
diff --git a/core/modules/content_translation/content_translation.module b/core/modules/content_translation/content_translation.module
index 5c86c4e..d8904e9 100644
--- a/core/modules/content_translation/content_translation.module
+++ b/core/modules/content_translation/content_translation.module
@@ -8,10 +8,12 @@
use Drupal\Core\Entity\ContentEntityInterface;
use Drupal\Core\Entity\EntityFormInterface;
use Drupal\Core\Entity\EntityInterface;
+use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Language\LanguageInterface;
use Drupal\Core\Routing\RouteMatchInterface;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
+use Drupal\field\FieldConfigInterface;
use Drupal\node\NodeInterface;
/**
@@ -600,19 +602,19 @@ function content_translation_entity_extra_field_info() {
}
/**
- * Implements hook_form_FORM_ID_alter() for 'field_ui_instance_edit_form'.
+ * Implements hook_form_FORM_ID_alter() for 'field_ui_field_edit_form'.
*/
-function content_translation_form_field_ui_field_instance_edit_form_alter(array &$form, FormStateInterface $form_state) {
- $instance = $form_state['instance'];
- $bundle_is_translatable = content_translation_enabled($instance->entity_type, $instance->bundle);
+function content_translation_form_field_ui_field_edit_form_alter(array &$form, FormStateInterface $form_state) {
+ $field = $form_state['field'];
+ $bundle_is_translatable = content_translation_enabled($field->entity_type, $field->bundle);
- $form['instance']['translatable'] = array(
+ $form['field']['translatable'] = array(
'#type' => 'checkbox',
'#title' => t('Users may translate this field.'),
- '#default_value' => $instance->isTranslatable(),
+ '#default_value' => $field->isTranslatable(),
'#weight' => -1,
'#disabled' => !$bundle_is_translatable,
- '#access' => $instance->getFieldStorageDefinition()->isTranslatable(),
+ '#access' => $field->getFieldStorageDefinition()->isTranslatable(),
);
// Provide helpful pointers for administrators.
@@ -620,17 +622,17 @@ function content_translation_form_field_ui_field_instance_edit_form_alter(array
$toggle_url = url('admin/config/regional/content-language', array(
'query' => drupal_get_destination(),
));
- $form['instance']['translatable']['#description'] = t('To configure translation for this field, enable language support for this type.', array(
+ $form['field']['translatable']['#description'] = t('To configure translation for this field, enable language support for this type.', array(
'@language-settings-url' => $toggle_url,
));
}
- if ($instance->isTranslatable()) {
+ if ($field->isTranslatable()) {
module_load_include('inc', 'content_translation', 'content_translation.admin');
- $element = content_translation_field_sync_widget($instance);
+ $element = content_translation_field_sync_widget($field);
if ($element) {
- $form['instance']['settings']['translation_sync'] = $element;
- $form['instance']['settings']['translation_sync']['#weight'] = -10;
+ $form['field']['settings']['translation_sync'] = $element;
+ $form['field']['settings']['translation_sync']['#weight'] = -10;
}
}
}
@@ -646,7 +648,7 @@ function content_translation_entity_presave(EntityInterface $entity) {
}
// Synchronization can be enabled per instance.
// @todo Replace with own storage in https://drupal.org/node/2224761
- if ($entity->getEntityTypeId() === 'field_instance_config') {
+ if ($entity->getEntityTypeId() === 'field_config') {
$entity->settings += array('translation_sync' => FALSE);
}
if ($entity instanceof ContentEntityInterface && $entity->isTranslatable()) {
@@ -800,16 +802,16 @@ function content_translation_save_settings($settings) {
// Save translation_sync settings.
if (!empty($bundle_settings['columns'])) {
foreach ($bundle_settings['columns'] as $field_name => $column_settings) {
- $instance = FieldInstanceConfig::loadByName($entity_type, $bundle, $field_name);
- if ($instance->isTranslatable()) {
- $instance->settings['translation_sync'] = $column_settings;
+ $field = FieldConfig::loadByName($entity_type, $bundle, $field_name);
+ if ($field->isTranslatable()) {
+ $field->settings['translation_sync'] = $column_settings;
}
// If the field does not have translatable enabled we need to reset
// the sync settings to their defaults.
else {
- unset($instance->settings['translation_sync']);
+ unset($field->settings['translation_sync']);
}
- $instance->save();
+ $field->save();
}
}
}
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php b/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php
index 9033d83..ccdb4dc 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php
@@ -86,7 +86,7 @@ protected function setUp() {
'cardinality' => 1,
'translatable' => TRUE,
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => 'node',
'field_name' => 'field_test_text',
'bundle' => $this->bundle,
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php b/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php
index ea641cc..a65c01d 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php
@@ -10,7 +10,7 @@
use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
use Drupal\Core\Field\Entity\BaseFieldOverride;
use Drupal\Core\Language\Language;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\simpletest\WebTestBase;
/**
@@ -30,7 +30,7 @@ class ContentTranslationSettingsTest extends WebTestBase {
protected function setUp() {
parent::setUp();
- // Set up two content types to test field instances shared between different
+ // Set up two content types to test fields shared between different
// bundles.
$this->drupalCreateContentType(array('type' => 'article'));
$this->drupalCreateContentType(array('type' => 'page'));
@@ -163,20 +163,20 @@ function testSettingsUI() {
// Test that configurable field translatability is correctly switched.
$edit = array('settings[node][article][fields][body]' => $translatable);
$this->assertSettings('node', 'article', TRUE, $edit);
- $instance = FieldInstanceConfig::loadByName('node', 'article', 'body');
+ $field = FieldConfig::loadByName('node', 'article', 'body');
$definitions = \Drupal::entityManager()->getFieldDefinitions('node', 'article');
$this->assertEqual($definitions['body']->isTranslatable(), $translatable, 'Field translatability correctly switched.');
- $this->assertEqual($instance->isTranslatable(), $definitions['body']->isTranslatable(), 'Configurable field translatability correctly switched.');
+ $this->assertEqual($field->isTranslatable(), $definitions['body']->isTranslatable(), 'Configurable field translatability correctly switched.');
// Test that also the Field UI form behaves correctly.
$translatable = !$translatable;
- $edit = array('instance[translatable]' => $translatable);
+ $edit = array('field[translatable]' => $translatable);
$this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.body', $edit, t('Save settings'));
\Drupal::entityManager()->clearCachedFieldDefinitions();
- $instance = FieldInstanceConfig::loadByName('node', 'article', 'body');
+ $field = FieldConfig::loadByName('node', 'article', 'body');
$definitions = \Drupal::entityManager()->getFieldDefinitions('node', 'article');
$this->assertEqual($definitions['body']->isTranslatable(), $translatable, 'Field translatability correctly switched.');
- $this->assertEqual($instance->isTranslatable(), $definitions['body']->isTranslatable(), 'Configurable field translatability correctly switched.');
+ $this->assertEqual($field->isTranslatable(), $definitions['body']->isTranslatable(), 'Configurable field translatability correctly switched.');
}
}
@@ -221,34 +221,34 @@ protected function assertSettings($entity_type, $bundle, $enabled, $edit) {
}
/**
- * Tests that field instance setting depends on bundle translatability.
+ * Tests that field setting depends on bundle translatability.
*/
function testFieldTranslatableSettingsUI() {
// At least one field needs to be translatable to enable article for
// translation. Create an extra field to be used for this purpose.
- $field = array(
+ $field_storage = array(
'name' => 'article_text',
'entity_type' => 'node',
'type' => 'text',
);
- entity_create('field_storage_config', $field)->save();
- $instance = array(
+ entity_create('field_storage_config', $field_storage)->save();
+ $field = array(
'field_name' => 'article_text',
'entity_type' => 'node',
'bundle' => 'article',
);
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
- // Tests that field instance doesn't have translatable setting if bundle
- // is not translatable.
+ // Tests that field doesn't have translatable setting if bundle is not
+ // translatable.
$path = 'admin/structure/types/manage/article/fields/node.article.body';
$this->drupalGet($path);
$this->assertText('To configure translation for this field, enable language support for this type.', 'No translatable setting for field.');
// Tests that field instance has translatable setting if bundle is
- // translatable. Note: this field instance is not translatable when
- // enable bundle translatability.
+ // translatable. Note: this field is not translatable when enable bundle
+ // translatability.
$edit = array(
'entity_types[node]' => TRUE,
'settings[node][article][settings][language][language_show]' => TRUE,
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php b/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php
index 98b9540..3f5ad3c 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php
@@ -57,7 +57,7 @@ protected function setupTestFields() {
'translatable' => TRUE,
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => $this->entityTypeId,
'field_name' => $this->fieldName,
'bundle' => $this->entityTypeId,
@@ -87,11 +87,11 @@ function testImageFieldSync() {
// Check that the alt and title fields are enabled for the image field.
$this->drupalLogin($this->editor);
$this->drupalGet('entity_test_mul/structure/' . $this->entityTypeId . '/fields/' . $this->entityTypeId . '.' . $this->entityTypeId . '.' . $this->fieldName);
- $this->assertFieldChecked('edit-instance-settings-translation-sync-alt');
- $this->assertFieldChecked('edit-instance-settings-translation-sync-title');
+ $this->assertFieldChecked('edit-field-settings-translation-sync-alt');
+ $this->assertFieldChecked('edit-field-settings-translation-sync-title');
$edit = array(
- 'instance[settings][translation_sync][alt]' => FALSE,
- 'instance[settings][translation_sync][title]' => FALSE,
+ 'field[settings][translation_sync][alt]' => FALSE,
+ 'field[settings][translation_sync][title]' => FALSE,
);
$this->drupalPostForm(NULL, $edit, t('Save settings'));
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php b/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php
index 81de3aa..ad67ac0 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php
@@ -182,7 +182,7 @@ protected function setupTestFields() {
'cardinality' => 1,
'translatable' => TRUE,
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => $this->entityTypeId,
'field_name' => $this->fieldName,
'bundle' => $this->bundle,
diff --git a/core/modules/datetime/config/schema/datetime.schema.yml b/core/modules/datetime/config/schema/datetime.schema.yml
index ef81fbf..b9837df 100644
--- a/core/modules/datetime/config/schema/datetime.schema.yml
+++ b/core/modules/datetime/config/schema/datetime.schema.yml
@@ -8,7 +8,7 @@ field.datetime.settings:
type: string
label: 'Date type'
-field.datetime.instance_settings:
+field.datetime.field_settings:
type: sequence
label: 'Settings'
sequence:
diff --git a/core/modules/datetime/src/Tests/DateTimeFieldTest.php b/core/modules/datetime/src/Tests/DateTimeFieldTest.php
index 1ecb656..fd51798 100644
--- a/core/modules/datetime/src/Tests/DateTimeFieldTest.php
+++ b/core/modules/datetime/src/Tests/DateTimeFieldTest.php
@@ -33,11 +33,11 @@ class DateTimeFieldTest extends WebTestBase {
protected $fieldStorage;
/**
- * The instance used in this test class.
+ * The field used in this test class.
*
- * @var \Drupal\field\Entity\FieldInstanceConfig
+ * @var \Drupal\field\Entity\FieldConfig
*/
- protected $instance;
+ protected $field;
protected function setUp() {
parent::setUp();
@@ -59,14 +59,14 @@ protected function setUp() {
'settings' => array('datetime_type' => 'date'),
));
$this->fieldStorage->save();
- $this->instance = entity_create('field_instance_config', array(
+ $this->field = entity_create('field_config', array(
'field_storage' => $this->fieldStorage,
'bundle' => 'entity_test',
'required' => TRUE,
));
- $this->instance->save();
+ $this->field->save();
- entity_get_form_display($this->instance->entity_type, $this->instance->bundle, 'default')
+ entity_get_form_display($this->field->entity_type, $this->field->bundle, 'default')
->setComponent($this->fieldStorage->name, array(
'type' => 'datetime_default',
))
@@ -77,7 +77,7 @@ protected function setUp() {
'label' => 'hidden',
'settings' => array('format_type' => 'medium'),
);
- entity_get_display($this->instance->entity_type, $this->instance->bundle, 'full')
+ entity_get_display($this->field->entity_type, $this->field->bundle, 'full')
->setComponent($this->fieldStorage->name, $this->display_options)
->save();
}
@@ -123,7 +123,7 @@ function testDateField() {
foreach ($values as $new_value) {
// Update the entity display settings.
$this->display_options['settings'] = array($setting => $new_value);
- entity_get_display($this->instance->entity_type, $this->instance->bundle, 'full')
+ entity_get_display($this->field->entity_type, $this->field->bundle, 'full')
->setComponent($field_name, $this->display_options)
->save();
@@ -141,7 +141,7 @@ function testDateField() {
// Verify that the plain formatter works.
$this->display_options['type'] = 'datetime_plain';
- entity_get_display($this->instance->entity_type, $this->instance->bundle, 'full')
+ entity_get_display($this->field->entity_type, $this->field->bundle, 'full')
->setComponent($field_name, $this->display_options)
->save();
$expected = $date->format(DATETIME_DATE_STORAGE_FORMAT);
@@ -190,7 +190,7 @@ function testDatetimeField() {
foreach ($values as $new_value) {
// Update the entity display settings.
$this->display_options['settings'] = array($setting => $new_value);
- entity_get_display($this->instance->entity_type, $this->instance->bundle, 'full')
+ entity_get_display($this->field->entity_type, $this->field->bundle, 'full')
->setComponent($field_name, $this->display_options)
->save();
@@ -208,7 +208,7 @@ function testDatetimeField() {
// Verify that the plain formatter works.
$this->display_options['type'] = 'datetime_plain';
- entity_get_display($this->instance->entity_type, $this->instance->bundle, 'full')
+ entity_get_display($this->field->entity_type, $this->field->bundle, 'full')
->setComponent($field_name, $this->display_options)
->save();
$expected = $date->format(DATETIME_DATETIME_STORAGE_FORMAT);
@@ -226,7 +226,7 @@ function testDatelistWidget() {
$this->fieldStorage->save();
// Change the widget to a datelist widget.
- entity_get_form_display($this->instance->entity_type, $this->instance->bundle, 'default')
+ entity_get_form_display($this->field->entity_type, $this->field->bundle, 'default')
->setComponent($field_name, array(
'type' => 'datetime_datelist',
'settings' => array(
@@ -297,17 +297,17 @@ function testDefaultValue() {
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'date_content',
));
- $instance->save();
+ $field->save();
// Set now as default_value.
- $instance_edit = array(
+ $field_edit = array(
'default_value_input[default_date_type]' => 'now',
);
- $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $instance_edit, t('Save settings'));
+ $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $field_edit, t('Save settings'));
// Check that default value is selected in default value form.
$this->drupalGet('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name);
@@ -315,7 +315,7 @@ function testDefaultValue() {
$this->assertFieldByName('default_value_input[default_date]', '', 'The relative default value is empty in instance settings page');
// Check if default_date has been stored successfully.
- $config_entity = $this->container->get('config.factory')->get('field.instance.node.date_content.' . $field_storage->name)->get();
+ $config_entity = $this->container->get('config.factory')->get('field.field.node.date_content.' . $field_storage->name)->get();
$this->assertEqual($config_entity['default_value'][0], array('default_date_type' => 'now', 'default_date' => 'now'), 'Default value has been stored successfully');
// Clear field cache in order to avoid stale cache values.
@@ -327,20 +327,20 @@ function testDefaultValue() {
$this->assertEqual($new_node->get($field_storage->name)->offsetGet(0)->value, $expected_date->format(DATETIME_DATE_STORAGE_FORMAT));
// Set an invalid relative default_value to test validation.
- $instance_edit = array(
+ $field_edit = array(
'default_value_input[default_date_type]' => 'relative',
'default_value_input[default_date]' => 'invalid date',
);
- $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $instance_edit, t('Save settings'));
+ $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $field_edit, t('Save settings'));
$this->assertText('The relative date value entered is invalid.');
// Set a relative default_value.
- $instance_edit = array(
+ $field_edit = array(
'default_value_input[default_date_type]' => 'relative',
'default_value_input[default_date]' => '+90 days',
);
- $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $instance_edit, t('Save settings'));
+ $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $field_edit, t('Save settings'));
// Check that default value is selected in default value form.
$this->drupalGet('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name);
@@ -348,7 +348,7 @@ function testDefaultValue() {
$this->assertFieldByName('default_value_input[default_date]', '+90 days', 'The relative default value is displayed in instance settings page');
// Check if default_date has been stored successfully.
- $config_entity = $this->container->get('config.factory')->get('field.instance.node.date_content.' . $field_storage->name)->get();
+ $config_entity = $this->container->get('config.factory')->get('field.field.node.date_content.' . $field_storage->name)->get();
$this->assertEqual($config_entity['default_value'][0], array('default_date_type' => 'relative', 'default_date' => '+90 days'), 'Default value has been stored successfully');
// Clear field cache in order to avoid stale cache values.
@@ -360,10 +360,10 @@ function testDefaultValue() {
$this->assertEqual($new_node->get($field_storage->name)->offsetGet(0)->value, $expected_date->format(DATETIME_DATE_STORAGE_FORMAT));
// Remove default value.
- $instance_edit = array(
+ $field_edit = array(
'default_value_input[default_date_type]' => '',
);
- $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $instance_edit, t('Save settings'));
+ $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name, $field_edit, t('Save settings'));
// Check that default value is selected in default value form.
$this->drupalGet('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_storage->name);
@@ -371,7 +371,7 @@ function testDefaultValue() {
$this->assertFieldByName('default_value_input[default_date]', '', 'The relative default value is empty in instance settings page');
// Check if default_date has been stored successfully.
- $config_entity = $this->container->get('config.factory')->get('field.instance.node.date_content.' . $field_storage->name)->get();
+ $config_entity = $this->container->get('config.factory')->get('field.field.node.date_content.' . $field_storage->name)->get();
$this->assertTrue(empty($config_entity['default_value']), 'Empty default value has been stored successfully');
// Clear field cache in order to avoid stale cache values.
diff --git a/core/modules/datetime/src/Tests/DateTimeItemTest.php b/core/modules/datetime/src/Tests/DateTimeItemTest.php
index 13ae3bb..d26f1fa 100644
--- a/core/modules/datetime/src/Tests/DateTimeItemTest.php
+++ b/core/modules/datetime/src/Tests/DateTimeItemTest.php
@@ -36,14 +36,14 @@ protected function setUp() {
'settings' => array('datetime_type' => 'date'),
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
'settings' => array(
'default_value' => 'blank',
),
));
- $instance->save();
+ $field->save();
}
/**
diff --git a/core/modules/editor/src/Tests/QuickEditIntegrationTest.php b/core/modules/editor/src/Tests/QuickEditIntegrationTest.php
index 2ba6aff..88a9e71 100644
--- a/core/modules/editor/src/Tests/QuickEditIntegrationTest.php
+++ b/core/modules/editor/src/Tests/QuickEditIntegrationTest.php
@@ -72,7 +72,7 @@ protected function setUp() {
// Create a field.
$this->field_name = 'field_textarea';
- $this->createFieldWithInstance(
+ $this->createFieldWithStorage(
$this->field_name, 'text', 1, 'Long text field',
// Instance settings.
array('text_processing' => 1),
diff --git a/core/modules/entity/src/EntityDisplayBase.php b/core/modules/entity/src/EntityDisplayBase.php
index 8b108a2..1a79763 100644
--- a/core/modules/entity/src/EntityDisplayBase.php
+++ b/core/modules/entity/src/EntityDisplayBase.php
@@ -11,7 +11,7 @@
use Drupal\Core\Entity\EntityStorageInterface;
use Drupal\Core\Field\FieldDefinitionInterface;
use Drupal\Core\Entity\Display\EntityDisplayInterface;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
/**
* Provides a common base class for entity view and form displays.
@@ -168,9 +168,9 @@ public function calculateDependencies() {
// Create dependencies on both hidden and visible fields.
$fields = $this->content + $this->hidden;
foreach ($fields as $field_name => $component) {
- $field_instance = FieldInstanceConfig::loadByName($this->targetEntityType, $this->bundle, $field_name);
- if ($field_instance) {
- $this->addDependency('entity', $field_instance->getConfigDependencyName());
+ $field = FieldConfig::loadByName($this->targetEntityType, $this->bundle, $field_name);
+ if ($field) {
+ $this->addDependency('entity', $field->getConfigDependencyName());
}
// Create a dependency on the module that provides the formatter or
// widget.
@@ -370,7 +370,7 @@ protected function getFieldDefinitions() {
* Determines if a field has options for a given display.
*
* @param FieldDefinitionInterface $definition
- * A field instance definition.
+ * A field definition.
* @return array|null
*/
private function fieldHasDisplayOptions(FieldDefinitionInterface $definition) {
diff --git a/core/modules/entity/src/Tests/EntityDisplayTest.php b/core/modules/entity/src/Tests/EntityDisplayTest.php
index 1efa671..00c674f 100644
--- a/core/modules/entity/src/Tests/EntityDisplayTest.php
+++ b/core/modules/entity/src/Tests/EntityDisplayTest.php
@@ -138,18 +138,18 @@ public function testExtraFieldComponent() {
*/
public function testFieldComponent() {
$field_name = 'test_field';
- // Create a field storage and an instance.
+ // Create a field storage and a field.
$field_storage = entity_create('field_storage_config', array(
'name' => $field_name,
'entity_type' => 'entity_test',
'type' => 'test_field'
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
));
- $instance->save();
+ $field->save();
$display = entity_create('entity_view_display', array(
'targetEntityType' => 'entity_test',
@@ -194,7 +194,7 @@ public function testFieldComponent() {
// Check that the display has dependencies on the field and the module that
// provides the formatter.
$dependencies = $display->calculateDependencies();
- $this->assertEqual(array('entity' => array('field.instance.entity_test.entity_test.test_field'), 'module' => array('entity_test', 'field_test')), $dependencies);
+ $this->assertEqual(array('entity' => array('field.field.entity_test.entity_test.test_field'), 'module' => array('entity_test', 'field_test')), $dependencies);
}
/**
@@ -286,7 +286,7 @@ public function testRenameDeleteBundle() {
$this->assertEqual('node.article_rename.default', $new_form_display->id);
$expected_dependencies = array(
- 'entity' => array('field.instance.node.article_rename.body', 'node.type.article_rename'),
+ 'entity' => array('field.field.node.article_rename.body', 'node.type.article_rename'),
'module' => array('text')
);
// Check that the display has dependencies on the bundle, fields and the
@@ -308,22 +308,22 @@ public function testRenameDeleteBundle() {
}
/**
- * Tests deleting field instance.
+ * Tests deleting field.
*/
- public function testDeleteFieldInstance() {
+ public function testDeleteField() {
$field_name = 'test_field';
- // Create a field storage and an instance.
+ // Create a field storage and a field.
$field_storage = entity_create('field_storage_config', array(
'name' => $field_name,
'entity_type' => 'entity_test',
'type' => 'test_field'
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
));
- $instance->save();
+ $field->save();
// Create default and teaser entity display.
entity_create('view_mode', array('id' => 'entity_test.teaser', 'targetEntityType' => 'entity_test'))->save();
@@ -344,8 +344,8 @@ public function testDeleteFieldInstance() {
$display = entity_get_display('entity_test', 'entity_test', 'teaser');
$this->assertTrue($display->getComponent($field_name));
- // Delete the instance.
- $instance->delete();
+ // Delete the field.
+ $field->delete();
// Check that the component has been removed from the entity displays.
$display = entity_get_display('entity_test', 'entity_test', 'default');
diff --git a/core/modules/entity/src/Tests/EntityFormDisplayTest.php b/core/modules/entity/src/Tests/EntityFormDisplayTest.php
index eaaec9a..87dcaa9 100644
--- a/core/modules/entity/src/Tests/EntityFormDisplayTest.php
+++ b/core/modules/entity/src/Tests/EntityFormDisplayTest.php
@@ -47,7 +47,7 @@ public function testEntityGetFromDisplay() {
* Tests the behavior of a field component within an EntityFormDisplay object.
*/
public function testFieldComponent() {
- // Create a field storage and an instance.
+ // Create a field storage and a field.
$field_name = 'test_field';
$field_storage = entity_create('field_storage_config', array(
'name' => $field_name,
@@ -55,11 +55,11 @@ public function testFieldComponent() {
'type' => 'test_field'
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
));
- $instance->save();
+ $field->save();
$form_display = entity_create('entity_form_display', array(
'targetEntityType' => 'entity_test',
@@ -172,22 +172,22 @@ public function testBaseFieldComponent() {
}
/**
- * Tests deleting field instance.
+ * Tests deleting field.
*/
- public function testDeleteFieldInstance() {
+ public function testDeleteField() {
$field_name = 'test_field';
- // Create a field storage and an instance.
+ // Create a field storage and a field.
$field_storage = entity_create('field_storage_config', array(
'name' => $field_name,
'entity_type' => 'entity_test',
'type' => 'test_field'
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
));
- $instance->save();
+ $field->save();
// Create default and compact entity display.
entity_create('form_mode', array('id' => 'entity_test.compact', 'targetEntityType' => 'entity_test'))->save();
@@ -208,8 +208,8 @@ public function testDeleteFieldInstance() {
$display = entity_get_form_display('entity_test', 'entity_test', 'compact');
$this->assertTrue($display->getComponent($field_name));
- // Delete the instance.
- $instance->delete();
+ // Delete the field.
+ $field->delete();
// Check that the component has been removed from the entity displays.
$display = entity_get_form_display('entity_test', 'entity_test', 'default');
diff --git a/core/modules/entity_reference/config/schema/entity_reference.schema.yml b/core/modules/entity_reference/config/schema/entity_reference.schema.yml
index 242faf3..16f1753 100644
--- a/core/modules/entity_reference/config/schema/entity_reference.schema.yml
+++ b/core/modules/entity_reference/config/schema/entity_reference.schema.yml
@@ -8,7 +8,7 @@ field.entity_reference.settings:
type: string
label: 'Type of item to reference'
-field.entity_reference.instance_settings:
+field.entity_reference.field_settings:
type: mapping
label: 'Entity reference settings'
mapping:
diff --git a/core/modules/entity_reference/entity_reference.module b/core/modules/entity_reference/entity_reference.module
index 75ab68c..891dcf4 100644
--- a/core/modules/entity_reference/entity_reference.module
+++ b/core/modules/entity_reference/entity_reference.module
@@ -11,7 +11,7 @@
use Drupal\Core\Render\Element;
use Drupal\Core\Routing\RouteMatchInterface;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\field\FieldStorageConfigInterface;
/**
@@ -93,9 +93,9 @@ function entity_reference_field_storage_config_update(FieldStorageConfigInterfac
foreach ($field_storage->bundles() as $entity_type => $bundles) {
foreach ($bundles as $bundle) {
- $instance = FieldInstanceConfig::loadByName($entity_type, $bundle, $field_name);
- $instance->settings['handler_settings'] = array();
- $instance->save();
+ $field = FieldConfig::loadByName($entity_type, $bundle, $field_name);
+ $field->settings['handler_settings'] = array();
+ $field->save();
}
}
}
@@ -104,10 +104,10 @@ function entity_reference_field_storage_config_update(FieldStorageConfigInterfac
* Render API callback: Processes the field instance settings form and allows
* access to the form state.
*
- * @see entity_reference_field_instance_settings_form()
+ * @see entity_reference_field_field_settings_form()
*/
-function _entity_reference_field_instance_settings_ajax_process($form, FormStateInterface $form_state) {
- _entity_reference_field_instance_settings_ajax_process_element($form, $form);
+function _entity_reference_field_field_settings_ajax_process($form, FormStateInterface $form_state) {
+ _entity_reference_field_field_settings_ajax_process_element($form, $form);
return $form;
}
@@ -115,9 +115,9 @@ function _entity_reference_field_instance_settings_ajax_process($form, FormState
* Adds entity_reference specific properties to AJAX form elements from the
* field instance settings form.
*
- * @see _entity_reference_field_instance_settings_ajax_process()
+ * @see _entity_reference_field_field_settings_ajax_process()
*/
-function _entity_reference_field_instance_settings_ajax_process_element(&$element, $main_form) {
+function _entity_reference_field_field_settings_ajax_process_element(&$element, $main_form) {
if (!empty($element['#ajax'])) {
$element['#ajax'] = array(
'callback' => 'entity_reference_settings_ajax',
@@ -127,7 +127,7 @@ function _entity_reference_field_instance_settings_ajax_process_element(&$elemen
}
foreach (Element::children($element) as $key) {
- _entity_reference_field_instance_settings_ajax_process_element($element[$key], $main_form);
+ _entity_reference_field_field_settings_ajax_process_element($element[$key], $main_form);
}
}
@@ -156,7 +156,7 @@ function _entity_reference_element_validate_filter(&$element, FormStateInterface
/**
* Ajax callback for the handler settings form.
*
- * @see entity_reference_field_instance_settings_form()
+ * @see entity_reference_field_field_settings_form()
*/
function entity_reference_settings_ajax($form, FormStateInterface $form_state) {
$trigger = $form_state['triggering_element'];
@@ -166,7 +166,7 @@ function entity_reference_settings_ajax($form, FormStateInterface $form_state) {
/**
* Submit handler for the non-JS case.
*
- * @see entity_reference_field_instance_settings_form()
+ * @see entity_reference_field_field_settings_form()
*/
function entity_reference_settings_ajax_submit($form, FormStateInterface $form_state) {
$form_state['rebuild'] = TRUE;
@@ -181,7 +181,7 @@ function entity_reference_query_entity_reference_alter(AlterableInterface $query
}
/**
- * Creates an instance of a entity reference field on the specified bundle.
+ * Creates an field of a entity reference field storage on the specified bundle.
*
* @param string $entity_type
* The type of entity the field instance will be attached to.
@@ -204,10 +204,10 @@ function entity_reference_query_entity_reference_alter(AlterableInterface $query
*
* @see \Drupal\entity_reference\Plugin\entity_reference\selection\SelectionBase::settingsForm()
*/
-function entity_reference_create_instance($entity_type, $bundle, $field_name, $field_label, $target_entity_type, $selection_handler = 'default', $selection_handler_settings = array(), $cardinality = 1) {
+function entity_reference_create_field($entity_type, $bundle, $field_name, $field_label, $target_entity_type, $selection_handler = 'default', $selection_handler_settings = array(), $cardinality = 1) {
// Look for or add the specified field to the requested entity bundle.
$field_storage = FieldStorageConfig::loadByName($entity_type, $field_name);
- $instance = FieldInstanceConfig::loadByName($entity_type, $bundle, $field_name);
+ $field = FieldConfig::loadByName($entity_type, $bundle, $field_name);
if (empty($field_storage)) {
$field_storage = array(
@@ -222,8 +222,8 @@ function entity_reference_create_instance($entity_type, $bundle, $field_name, $f
entity_create('field_storage_config', $field_storage)->save();
}
- if (empty($instance)) {
- $instance = array(
+ if (empty($field)) {
+ $field = array(
'field_name' => $field_name,
'entity_type' => $entity_type,
'bundle' => $bundle,
@@ -233,7 +233,7 @@ function entity_reference_create_instance($entity_type, $bundle, $field_name, $f
'handler_settings' => $selection_handler_settings,
),
);
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
}
}
diff --git a/core/modules/entity_reference/src/ConfigurableEntityReferenceItem.php b/core/modules/entity_reference/src/ConfigurableEntityReferenceItem.php
index 047b806..a9a57f8 100644
--- a/core/modules/entity_reference/src/ConfigurableEntityReferenceItem.php
+++ b/core/modules/entity_reference/src/ConfigurableEntityReferenceItem.php
@@ -45,10 +45,10 @@ public static function defaultSettings() {
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array(
'handler_settings' => array(),
- ) + parent::defaultInstanceSettings();
+ ) + parent::defaultFieldSettings();
}
/**
@@ -177,8 +177,8 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_
/**
* {@inheritdoc}
*/
- public function instanceSettingsForm(array $form, FormStateInterface $form_state) {
- $instance = $form_state['instance'];
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
+ $field = $form_state['field'];
// Get all selection plugins for this entity type.
$selection_plugins = \Drupal::service('plugin.manager.entity_reference.selection')->getSelectionGroups($this->getSetting('target_type'));
@@ -201,9 +201,9 @@ public function instanceSettingsForm(array $form, FormStateInterface $form_state
'css' => array(drupal_get_path('module', 'entity_reference') . '/css/entity_reference.admin.css'),
),
'#process' => array(
- '_entity_reference_field_instance_settings_ajax_process',
+ '_entity_reference_field_field_settings_ajax_process',
),
- '#element_validate' => array(array(get_class($this), 'instanceSettingsFormValidate')),
+ '#element_validate' => array(array(get_class($this), 'fieldSettingsFormValidate')),
);
$form['handler'] = array(
'#type' => 'details',
@@ -217,7 +217,7 @@ public function instanceSettingsForm(array $form, FormStateInterface $form_state
'#type' => 'select',
'#title' => t('Reference method'),
'#options' => $handlers_options,
- '#default_value' => $instance->getSetting('handler'),
+ '#default_value' => $field->getSetting('handler'),
'#required' => TRUE,
'#ajax' => TRUE,
'#limit_validation_errors' => array(),
@@ -237,8 +237,8 @@ public function instanceSettingsForm(array $form, FormStateInterface $form_state
'#attributes' => array('class' => array('entity_reference-settings')),
);
- $handler = \Drupal::service('plugin.manager.entity_reference.selection')->getSelectionHandler($instance);
- $form['handler']['handler_settings'] += $handler->settingsForm($instance);
+ $handler = \Drupal::service('plugin.manager.entity_reference.selection')->getSelectionHandler($field);
+ $form['handler']['handler_settings'] += $handler->settingsForm($field);
return $form;
}
@@ -251,10 +251,10 @@ public function instanceSettingsForm(array $form, FormStateInterface $form_state
* @param \Drupal\Core\Form\FormStateInterface $form_state
* The form state of the (entire) configuration form.
*/
- public static function instanceSettingsFormValidate(array $form, FormStateInterface $form_state) {
- if ($form_state->hasValue('instance')) {
- $form_state->unsetValue(array('instance', 'settings', 'handler_submit'));
- $form_state['instance']->settings = $form_state->getValue(array('instance', 'settings'));
+ public static function fieldSettingsFormValidate(array $form, FormStateInterface $form_state) {
+ if ($form_state->hasValue('field')) {
+ $form_state->unsetValue(array('field', 'settings', 'handler_submit'));
+ $form_state['field']->settings = $form_state->getValue(array('field', 'settings'));
}
}
diff --git a/core/modules/entity_reference/src/EntityReferenceAutocomplete.php b/core/modules/entity_reference/src/EntityReferenceAutocomplete.php
index 63f8a00..e70fe86 100644
--- a/core/modules/entity_reference/src/EntityReferenceAutocomplete.php
+++ b/core/modules/entity_reference/src/EntityReferenceAutocomplete.php
@@ -11,7 +11,7 @@
use Drupal\Core\Entity\EntityManagerInterface;
use Drupal\Core\Field\FieldDefinitionInterface;
use Drupal\entity_reference\Plugin\Type\SelectionPluginManager;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
/**
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceAdminTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceAdminTest.php
index 9812800..fb4ffb3 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceAdminTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceAdminTest.php
@@ -59,43 +59,43 @@ public function testFieldAdminHandler() {
// Check that all entity types can be referenced.
$this->assertFieldSelectOptions('field[settings][target_type]', array_keys(\Drupal::entityManager()->getDefinitions()));
- // Second step: 'Instance settings' form.
+ // Second step: 'Field settings' form.
$this->drupalPostForm(NULL, array(), t('Save field settings'));
// The base handler should be selected by default.
- $this->assertFieldByName('instance[settings][handler]', 'default');
+ $this->assertFieldByName('field[settings][handler]', 'default');
// The base handler settings should be displayed.
$entity_type_id = 'node';
$bundles = entity_get_bundles($entity_type_id);
foreach ($bundles as $bundle_name => $bundle_info) {
- $this->assertFieldByName('instance[settings][handler_settings][target_bundles][' . $bundle_name . ']');
+ $this->assertFieldByName('field[settings][handler_settings][target_bundles][' . $bundle_name . ']');
}
reset($bundles);
// Test the sort settings.
// Option 0: no sort.
- $this->assertFieldByName('instance[settings][handler_settings][sort][field]', '_none');
- $this->assertNoFieldByName('instance[settings][handler_settings][sort][direction]');
+ $this->assertFieldByName('field[settings][handler_settings][sort][field]', '_none');
+ $this->assertNoFieldByName('field[settings][handler_settings][sort][direction]');
// Option 1: sort by field.
- $this->drupalPostAjaxForm(NULL, array('instance[settings][handler_settings][sort][field]' => 'nid'), 'instance[settings][handler_settings][sort][field]');
- $this->assertFieldByName('instance[settings][handler_settings][sort][direction]', 'ASC');
+ $this->drupalPostAjaxForm(NULL, array('field[settings][handler_settings][sort][field]' => 'nid'), 'field[settings][handler_settings][sort][field]');
+ $this->assertFieldByName('field[settings][handler_settings][sort][direction]', 'ASC');
// Test that a non-translatable base field is a sort option.
- $this->assertFieldByXPath("//select[@name='instance[settings][handler_settings][sort][field]']/option[@value='nid']");
+ $this->assertFieldByXPath("//select[@name='field[settings][handler_settings][sort][field]']/option[@value='nid']");
// Test that a translatable base field is a sort option.
- $this->assertFieldByXPath("//select[@name='instance[settings][handler_settings][sort][field]']/option[@value='title']");
+ $this->assertFieldByXPath("//select[@name='field[settings][handler_settings][sort][field]']/option[@value='title']");
// Test that a configurable field is a sort option.
- $this->assertFieldByXPath("//select[@name='instance[settings][handler_settings][sort][field]']/option[@value='body.value']");
+ $this->assertFieldByXPath("//select[@name='field[settings][handler_settings][sort][field]']/option[@value='body.value']");
// Set back to no sort.
- $this->drupalPostAjaxForm(NULL, array('instance[settings][handler_settings][sort][field]' => '_none'), 'instance[settings][handler_settings][sort][field]');
- $this->assertNoFieldByName('instance[settings][handler_settings][sort][direction]');
+ $this->drupalPostAjaxForm(NULL, array('field[settings][handler_settings][sort][field]' => '_none'), 'field[settings][handler_settings][sort][field]');
+ $this->assertNoFieldByName('field[settings][handler_settings][sort][direction]');
// Third step: confirm.
$this->drupalPostForm(NULL, array(
- 'instance[settings][handler_settings][target_bundles][' . key($bundles) . ']' => key($bundles),
+ 'field[settings][handler_settings][target_bundles][' . key($bundles) . ']' => key($bundles),
), t('Save settings'));
// Check that the field appears in the overview form.
@@ -182,7 +182,7 @@ public function createEntityReferenceField($target_type, $bundle = NULL) {
// Select required fields if there are any.
$edit = array();
if($bundle) {
- $edit['instance[settings][handler_settings][target_bundles][' . $bundle . ']'] = TRUE;
+ $edit['field[settings][handler_settings][target_bundles][' . $bundle . ']'] = TRUE;
}
// Save settings.
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceAutoCreateTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceAutoCreateTest.php
index f9b934e..3b1cc5e 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceAutoCreateTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceAutoCreateTest.php
@@ -41,7 +41,7 @@ protected function setUp() {
'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'label' => 'Entity reference field',
'field_name' => 'test_field',
'entity_type' => 'node',
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceAutocompleteTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceAutocompleteTest.php
index 7a41623..a280e76 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceAutocompleteTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceAutocompleteTest.php
@@ -53,7 +53,7 @@ class EntityReferenceAutocompleteTest extends EntityUnitTestBase {
protected function setUp() {
parent::setUp();
- entity_reference_create_instance($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType);
+ entity_reference_create_field($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType);
}
/**
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceFieldDefaultValueTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceFieldDefaultValueTest.php
index f36e276..180ccd7 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceFieldDefaultValueTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceFieldDefaultValueTest.php
@@ -49,7 +49,7 @@ function testEntityReferenceDefaultValue() {
'settings' => array('target_type' => 'node'),
));
$this->fieldStorage->save();
- $this->instance = entity_create('field_instance_config', array(
+ $this->field = entity_create('field_config', array(
'field_storage' => $this->fieldStorage,
'bundle' => 'reference_content',
'settings' => array(
@@ -60,20 +60,20 @@ function testEntityReferenceDefaultValue() {
),
),
));
- $this->instance->save();
+ $this->field->save();
// Set created node as default_value.
- $instance_edit = array(
+ $field_edit = array(
'default_value_input[' . $this->fieldStorage->name . '][0][target_id]' => $referenced_node->getTitle() . ' (' .$referenced_node->id() . ')',
);
- $this->drupalPostForm('admin/structure/types/manage/reference_content/fields/node.reference_content.' . $this->fieldStorage->name, $instance_edit, t('Save settings'));
+ $this->drupalPostForm('admin/structure/types/manage/reference_content/fields/node.reference_content.' . $this->fieldStorage->name, $field_edit, t('Save settings'));
// Check that default value is selected in default value form.
$this->drupalGet('admin/structure/types/manage/reference_content/fields/node.reference_content.' . $this->fieldStorage->name);
$this->assertRaw('name="default_value_input[' . $this->fieldStorage->name . '][0][target_id]" value="' . $referenced_node->getTitle() .' (' .$referenced_node->id() . ')', 'The default value is selected in instance settings page');
// Check if the ID has been converted to UUID in config entity.
- $config_entity = $this->container->get('config.factory')->get('field.instance.node.reference_content.' . $this->fieldStorage->name)->get();
+ $config_entity = $this->container->get('config.factory')->get('field.field.node.reference_content.' . $this->fieldStorage->name)->get();
$this->assertTrue(isset($config_entity['default_value'][0]['target_uuid']), 'Default value contains target_uuid property');
$this->assertEqual($config_entity['default_value'][0]['target_uuid'], $referenced_node->uuid(), 'Content uuid and config entity uuid are the same');
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceFieldTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceFieldTest.php
index 5bb3c9a..c9c4160 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceFieldTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceFieldTest.php
@@ -58,7 +58,7 @@ protected function setUp() {
$this->installEntitySchema('entity_test_rev');
// Setup a field and instance.
- entity_reference_create_instance(
+ entity_reference_create_field(
$this->entityType,
$this->bundle,
$this->fieldName,
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceFormatterTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceFormatterTest.php
index 39fa649..ab8b215 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceFormatterTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceFormatterTest.php
@@ -54,7 +54,7 @@ class EntityReferenceFormatterTest extends EntityUnitTestBase {
protected function setUp() {
parent::setUp();
- entity_reference_create_instance($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType);
+ entity_reference_create_field($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType);
// Set up a field, so that the entity that'll be referenced bubbles up a
// cache tag when rendering it entirely.
@@ -64,7 +64,7 @@ protected function setUp() {
'type' => 'text',
'settings' => array(),
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => $this->entityType,
'bundle' => $this->bundle,
'field_name' => 'body',
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceIntegrationTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceIntegrationTest.php
index c16d1bc..c450687 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceIntegrationTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceIntegrationTest.php
@@ -63,7 +63,7 @@ public function testSupportedEntityTypesAndWidgets() {
$this->fieldName = 'field_test_' . $referenced_entities[0]->getEntityTypeId();
// Create an Entity reference field.
- entity_reference_create_instance($this->entityType, $this->bundle, $this->fieldName, $this->fieldName, $referenced_entities[0]->getEntityTypeId(), 'default', array(), 2);
+ entity_reference_create_field($this->entityType, $this->bundle, $this->fieldName, $this->fieldName, $referenced_entities[0]->getEntityTypeId(), 'default', array(), 2);
// Test the default 'entity_reference_autocomplete' widget.
entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName)->save();
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceItemTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceItemTest.php
index d48df38..1ffa577 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceItemTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceItemTest.php
@@ -63,8 +63,8 @@ protected function setUp() {
$this->term->save();
// Use the util to create an instance.
- entity_reference_create_instance('entity_test', 'entity_test', 'field_test_taxonomy_term', 'Test content entity reference', 'taxonomy_term');
- entity_reference_create_instance('entity_test', 'entity_test', 'field_test_taxonomy_vocabulary', 'Test config entity reference', 'taxonomy_vocabulary');
+ entity_reference_create_field('entity_test', 'entity_test', 'field_test_taxonomy_term', 'Test content entity reference', 'taxonomy_term');
+ entity_reference_create_field('entity_test', 'entity_test', 'field_test_taxonomy_vocabulary', 'Test config entity reference', 'taxonomy_vocabulary');
}
/**
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceSelectionAccessTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceSelectionAccessTest.php
index d0f6449..c51bcb3 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceSelectionAccessTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceSelectionAccessTest.php
@@ -68,7 +68,7 @@ public function testNodeHandler() {
'cardinality' => '1',
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'test_bundle',
'settings' => array(
@@ -78,7 +78,7 @@ public function testNodeHandler() {
),
),
));
- $instance->save();
+ $field->save();
// Build a set of test data.
// Titles contain HTML-special characters to test escaping.
@@ -162,7 +162,7 @@ public function testNodeHandler() {
'result' => array(),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'Node handler');
+ $this->assertReferenceable($field, $referenceable_tests, 'Node handler');
// Test as an admin.
$admin_user = $this->drupalCreateUser(array('access content', 'bypass node access'));
@@ -191,7 +191,7 @@ public function testNodeHandler() {
),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'Node handler (admin)');
+ $this->assertReferenceable($field, $referenceable_tests, 'Node handler (admin)');
}
/**
@@ -210,7 +210,7 @@ public function testUserHandler() {
'cardinality' => '1',
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'test_bundle',
'settings' => array(
@@ -220,7 +220,7 @@ public function testUserHandler() {
),
),
));
- $instance->save();
+ $field->save();
// Build a set of test data.
$user_values = array(
@@ -296,7 +296,7 @@ public function testUserHandler() {
'result' => array(),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'User handler');
+ $this->assertReferenceable($field, $referenceable_tests, 'User handler');
\Drupal::currentUser()->setAccount($users['admin']);
$referenceable_tests = array(
@@ -335,7 +335,7 @@ public function testUserHandler() {
),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'User handler (admin)');
+ $this->assertReferenceable($field, $referenceable_tests, 'User handler (admin)');
}
/**
@@ -355,7 +355,7 @@ public function testCommentHandler() {
'cardinality' => '1',
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'test_bundle',
'settings' => array(
@@ -365,7 +365,7 @@ public function testCommentHandler() {
),
),
));
- $instance->save();
+ $field->save();
// Build a set of test data.
$node_values = array(
@@ -474,7 +474,7 @@ public function testCommentHandler() {
'result' => array(),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'Comment handler');
+ $this->assertReferenceable($field, $referenceable_tests, 'Comment handler');
// Test as a comment admin.
$admin_user = $this->drupalCreateUser(array('access content', 'access comments', 'administer comments'));
@@ -492,7 +492,7 @@ public function testCommentHandler() {
),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'Comment handler (comment admin)');
+ $this->assertReferenceable($field, $referenceable_tests, 'Comment handler (comment admin)');
// Test as a node and comment admin.
$admin_user = $this->drupalCreateUser(array('access content', 'access comments', 'administer comments', 'bypass node access'));
@@ -511,6 +511,6 @@ public function testCommentHandler() {
),
),
);
- $this->assertReferenceable($instance, $referenceable_tests, 'Comment handler (comment + node admin)');
+ $this->assertReferenceable($field, $referenceable_tests, 'Comment handler (comment + node admin)');
}
}
diff --git a/core/modules/entity_reference/src/Tests/EntityReferenceSelectionSortTest.php b/core/modules/entity_reference/src/Tests/EntityReferenceSelectionSortTest.php
index 3d76c20..5200800 100644
--- a/core/modules/entity_reference/src/Tests/EntityReferenceSelectionSortTest.php
+++ b/core/modules/entity_reference/src/Tests/EntityReferenceSelectionSortTest.php
@@ -38,7 +38,7 @@ public function testSort() {
'entity_types' => array('node'),
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'label' => 'Text Field',
'field_name' => 'field_text',
'entity_type' => 'node',
@@ -60,7 +60,7 @@ public function testSort() {
'cardinality' => 1,
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'entity_type' => 'entity_test',
'bundle' => 'test_bundle',
@@ -76,7 +76,7 @@ public function testSort() {
),
),
));
- $instance->save();
+ $field->save();
// Build a set of test data.
$node_values = array(
@@ -117,7 +117,7 @@ public function testSort() {
$normal_user = $this->drupalCreateUser(array('access content'));
\Drupal::currentUser()->setAccount($normal_user);
- $handler = $this->container->get('plugin.manager.entity_reference.selection')->getSelectionHandler($instance);
+ $handler = $this->container->get('plugin.manager.entity_reference.selection')->getSelectionHandler($field);
// Not only assert the result, but make sure the keys are sorted as
// expected.
@@ -129,11 +129,11 @@ public function testSort() {
$this->assertIdentical($result['article'], $expected_result, 'Query sorted by field returned expected values.');
// Assert sort by property.
- $instance->settings['handler_settings']['sort'] = array(
+ $field->settings['handler_settings']['sort'] = array(
'field' => 'nid',
'direction' => 'ASC',
);
- $handler = $this->container->get('plugin.manager.entity_reference.selection')->getSelectionHandler($instance);
+ $handler = $this->container->get('plugin.manager.entity_reference.selection')->getSelectionHandler($field);
$result = $handler->getReferenceableEntities();
$expected_result = array(
$nodes['published1']->id() => $node_labels['published1'],
diff --git a/core/modules/entity_reference/src/Tests/Views/EntityReferenceRelationshipTest.php b/core/modules/entity_reference/src/Tests/Views/EntityReferenceRelationshipTest.php
index ca44975..6e74fbc 100644
--- a/core/modules/entity_reference/src/Tests/Views/EntityReferenceRelationshipTest.php
+++ b/core/modules/entity_reference/src/Tests/Views/EntityReferenceRelationshipTest.php
@@ -9,7 +9,7 @@
use Drupal\Core\Field\FieldStorageDefinitionInterface;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\views\Tests\ViewTestData;
use Drupal\views\Tests\ViewUnitTestBase;
use Drupal\views\Views;
@@ -64,7 +64,7 @@ protected function setUp() {
));
$field_storage->save();
- $instance = FieldInstanceConfig::create(array(
+ $field = FieldConfig::create(array(
'entity_type' => 'entity_test',
'field_name' => 'field_test',
'bundle' => 'entity_test',
@@ -73,7 +73,7 @@ protected function setUp() {
'handler_settings' => array(),
),
));
- $instance->save();
+ $field->save();
// Create some test entities which link each other.
$entity_storage= \Drupal::entityManager()->getStorage('entity_test');
diff --git a/core/modules/entity_reference/src/Tests/Views/SelectionTest.php b/core/modules/entity_reference/src/Tests/Views/SelectionTest.php
index dbfe0f6..fef8460 100644
--- a/core/modules/entity_reference/src/Tests/Views/SelectionTest.php
+++ b/core/modules/entity_reference/src/Tests/Views/SelectionTest.php
@@ -45,7 +45,7 @@ public function testSelectionHandler() {
'cardinality' => '1',
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'test_bundle',
'settings' => array(
@@ -60,10 +60,10 @@ public function testSelectionHandler() {
),
),
));
- $instance->save();
+ $field->save();
// Get values from selection handler.
- $handler = $this->container->get('plugin.manager.entity_reference.selection')->getSelectionHandler($instance);
+ $handler = $this->container->get('plugin.manager.entity_reference.selection')->getSelectionHandler($field);
$result = $handler->getReferenceableEntities();
$success = FALSE;
diff --git a/core/modules/field/config/schema/field.schema.yml b/core/modules/field/config/schema/field.schema.yml
index 65156b5..2d7740c 100644
--- a/core/modules/field/config/schema/field.schema.yml
+++ b/core/modules/field/config/schema/field.schema.yml
@@ -48,9 +48,9 @@ field.storage.*.*:
- type: ignore
label: 'Index'
-field.instance.*.*.*:
+field.field.*.*.*:
type: field_config_base
- label: 'Field instance'
+ label: 'Field'
entity_form_display.field.hidden:
type: entity_field_form_display_base
diff --git a/core/modules/field/field.api.php b/core/modules/field/field.api.php
index 8af955f..3ac1d4c 100644
--- a/core/modules/field/field.api.php
+++ b/core/modules/field/field.api.php
@@ -294,19 +294,19 @@ function hook_field_purge_field_storage(\Drupal\field\Entity\FieldStorageConfig
}
/**
- * Acts when a field instance is being purged.
+ * Acts when a field is being purged.
*
- * In field_purge_instance(), after the instance definition has been removed
+ * In field_purge_field(), after the field definition has been removed
* from the the system, the entity storage has purged stored field data, and the
* field info cache has been cleared, this hook is invoked on all modules to
- * allow them to respond to the field instance being purged.
+ * allow them to respond to the field being purged.
*
- * @param $instance
- * The instance being purged.
+ * @param $field
+ * The field being purged.
*/
-function hook_field_purge_instance($instance) {
- db_delete('my_module_field_instance_info')
- ->condition('id', $instance['id'])
+function hook_field_purge_field(\Drupal\field\Entity\FieldConfig $field) {
+ db_delete('my_module_field_info')
+ ->condition('id', $field->id())
->execute();
}
diff --git a/core/modules/field/field.module b/core/modules/field/field.module
index 87ba4f7..05965e7 100644
--- a/core/modules/field/field.module
+++ b/core/modules/field/field.module
@@ -54,7 +54,7 @@
* and display formatters.
*
* - @link field_purge Field API bulk data deletion @endlink: Cleans up after
- * bulk deletion operations such as deletion of field or field_instance.
+ * bulk deletion operations such as deletion of field storage or field.
*/
/**
@@ -185,15 +185,15 @@ function field_entity_bundle_field_info(EntityTypeInterface $entity_type, $bundl
if ($entity_type->isFieldable()) {
// Query by filtering on the ID as this is more efficient than filtering
// on the entity_type property directly.
- $ids = \Drupal::entityQuery('field_instance_config')
+ $ids = \Drupal::entityQuery('field_config')
->condition('id', $entity_type->id() . '.' . $bundle . '.', 'STARTS_WITH')
->execute();
// Fetch all fields and key them by field name.
- $field_instance_configs = entity_load_multiple('field_instance_config', $ids);
+ $field_configs = entity_load_multiple('field_config', $ids);
$result = array();
- foreach ($field_instance_configs as $field_instance) {
- $result[$field_instance->getName()] = $field_instance;
+ foreach ($field_configs as $field) {
+ $result[$field->getName()] = $field;
}
return $result;
}
@@ -203,22 +203,22 @@ function field_entity_bundle_field_info(EntityTypeInterface $entity_type, $bundl
* Implements hook_entity_bundle_rename().
*/
function field_entity_bundle_rename($entity_type, $bundle_old, $bundle_new) {
- $instances = entity_load_multiple_by_properties('field_instance_config', array('entity_type' => $entity_type, 'bundle' => $bundle_old, 'include_deleted' => TRUE));
- foreach ($instances as $instance) {
- $id_new = $instance->entity_type . '.' . $bundle_new . '.' . $instance->field_name;
- $instance->set('id', $id_new);
- $instance->bundle = $bundle_new;
- // Save non-deleted instances.
- if (!$instance->isDeleted()) {
- $instance->allowBundleRename();
- $instance->save();
+ $fields = entity_load_multiple_by_properties('field_config', array('entity_type' => $entity_type, 'bundle' => $bundle_old, 'include_deleted' => TRUE));
+ foreach ($fields as $field) {
+ $id_new = $field->entity_type . '.' . $bundle_new . '.' . $field->field_name;
+ $field->set('id', $id_new);
+ $field->bundle = $bundle_new;
+ // Save non-deleted fields.
+ if (!$field->isDeleted()) {
+ $field->allowBundleRename();
+ $field->save();
}
- // Update deleted instances directly in the state storage.
+ // Update deleted fields directly in the state storage.
else {
$state = \Drupal::state();
- $deleted_instances = $state->get('field.instance.deleted') ?: array();
- $deleted_instances[$instance->uuid] = $instance->toArray();
- $state->set('field.instance.deleted', $deleted_instances);
+ $deleted_fields = $state->get('field.field.deleted') ?: array();
+ $deleted_fields[$field->uuid] = $field->toArray();
+ $state->set('field.field.deleted', $deleted_fields);
}
}
}
@@ -226,20 +226,18 @@ function field_entity_bundle_rename($entity_type, $bundle_old, $bundle_new) {
/**
* Implements hook_entity_bundle_delete().
*
- * This deletes the data for the field instances as well as the field instances
- * themselves. This function actually just marks the data and field instances as
- * deleted, leaving the garbage collection for a separate process, because it is
- * not always possible to delete this much data in a single page request
- * (particularly since for some field types, the deletion is more than just a
- * simple DELETE query).
+ * This deletes the data for the field as well as the field themselves. This
+ * function actually just marks the data and fields as deleted, leaving the
+ * garbage collection for a separate process, because it is not always
+ * possible to delete this much data in a single page request (particularly
+ * since for some field types, the deletion is more than just a simple DELETE
+ * query).
*/
function field_entity_bundle_delete($entity_type, $bundle) {
- // Get the instances on the bundle. entity_load_multiple_by_properties() must
- // be used here since field_info_instances() does not return instances for
- // disabled entity types or bundles.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('entity_type' => $entity_type, 'bundle' => $bundle));
- foreach ($instances as $instance) {
- $instance->delete();
+ // Get the fields on the bundle.
+ $fields = entity_load_multiple_by_properties('field_config', array('entity_type' => $entity_type, 'bundle' => $bundle));
+ foreach ($fields as $field) {
+ $field->delete();
}
}
diff --git a/core/modules/field/field.purge.inc b/core/modules/field/field.purge.inc
index 2676952..73de63f 100644
--- a/core/modules/field/field.purge.inc
+++ b/core/modules/field/field.purge.inc
@@ -8,6 +8,7 @@
use Drupal\Core\Field\FieldException;
use Drupal\field\Entity\FieldStorageConfig;
use Drupal\field\FieldStorageConfigInterface;
+use Drupal\field\FieldConfigInterface;
/**
* @defgroup field_purge Field API bulk data deletion
@@ -15,7 +16,7 @@
* Cleans up after Field API bulk deletion operations.
*
* Field API provides functions for deleting data attached to individual
- * entities as well as deleting entire fields or field instances in a single
+ * entities as well as deleting entire fields or field storages in a single
* operation.
*
* When a single entity is deleted, the Entity storage performs the
@@ -30,14 +31,14 @@
*
* Similar operations are performed on deletion of a single entity revision.
*
- * When a field, bundle, or field instance is deleted, it is not practical to
+ * When a bundle, field or field storage is deleted, it is not practical to
* perform those operations immediately on every affected entity in a single
* page request; there could be thousands or millions of them. Instead, the
- * appropriate field data items, instances, and/or fields are marked as deleted
- * so that subsequent load or query operations will not return them. Later, a
- * separate process cleans up, or "purges", the marked-as-deleted data by going
- * through the three-step process described above and, finally, removing deleted
- * field and instance records.
+ * appropriate field data items, fields, and/or field storages are marked as
+ * deleted so that subsequent load or query operations will not return them.
+ * Later, a separate process cleans up, or "purges", the marked-as-deleted data
+ * by going through the three-step process described above and, finally,
+ * removing deleted field storage and field records.
*
* Purging field data is made somewhat tricky by the fact that, while
* $entity->delete() has a complete entity to pass to the various deletion
@@ -50,22 +51,21 @@
* Field API resolves this problem by using stub entities during purge
* operations, containing only the information from the original entity that
* Field API knows about: entity type, ID, revision ID, and bundle. It also
- * contains the field data for whichever field instance is currently being
- * purged.
+ * contains the field data for whichever field is currently being purged.
*
* See @link field Field API @endlink for information about the other parts of
* the Field API.
*/
/**
- * Purges a batch of deleted Field API data, instances, or fields.
+ * Purges a batch of deleted Field API data, field storages, or fields.
*
* This function will purge deleted field data in batches. The batch size
* is defined as an argument to the function, and once each batch is finished,
* it continues with the next batch until all have completed. If a deleted field
- * instance with no remaining data records is found, the instance itself will
- * be purged. If a deleted field with no remaining field instances is found, the
- * field itself will be purged.
+ * with no remaining data records is found, the field itself will
+ * be purged. If a deleted field storage with no remaining fields is found, the
+ * field storage itself will be purged.
*
* @param $batch_size
* The maximum number of field data records to purge before returning.
@@ -80,11 +80,11 @@ function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
if ($field_storage_uuid) {
$properties['field_storage_uuid'] = $field_storage_uuid;
}
- $instances = entity_load_multiple_by_properties('field_instance_config', $properties);
+ $fields = entity_load_multiple_by_properties('field_config', $properties);
$info = \Drupal::entityManager()->getDefinitions();
- foreach ($instances as $instance) {
- $entity_type = $instance->entity_type;
+ foreach ($fields as $field) {
+ $entity_type = $field->entity_type;
// We cannot purge anything if the entity type is unknown (e.g. the
// providing module was uninstalled).
@@ -93,10 +93,10 @@ function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
continue;
}
- $count_purged = \Drupal::entityManager()->getStorage($entity_type)->purgeFieldData($instance, $batch_size);
+ $count_purged = \Drupal::entityManager()->getStorage($entity_type)->purgeFieldData($field, $batch_size);
if ($count_purged < $batch_size || $count_purged == 0) {
- // No field data remains for the instance, so we can remove it.
- field_purge_instance($instance);
+ // No field data remains for the field, so we can remove it.
+ field_purge_field($field);
}
$batch_size -= $count_purged;
// Only delete up to the maximum number of records.
@@ -105,8 +105,7 @@ function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
}
}
- // Retrieve all deleted field storages. Any that have no instances can be
- // purged.
+ // Retrieve all deleted field storages. Any that have no fields can be purged.
$deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
foreach ($deleted_storages as $field_storage) {
$field_storage = new FieldStorageConfig($field_storage);
@@ -122,45 +121,47 @@ function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
continue;
}
- $instances = entity_load_multiple_by_properties('field_instance_config', array('field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
- if (empty($instances)) {
+ $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+ if (empty($fields)) {
field_purge_field_storage($field_storage);
}
}
}
/**
- * Purges a field instance record from the database.
+ * Purges a field record from the database.
*
- * This function assumes all data for the instance has already been purged and
+ * This function assumes all data for the field has already been purged and
* should only be called by field_purge_batch().
*
- * @param $instance
- * The instance record to purge.
+ * @param $field
+ * The field record to purge.
*/
-function field_purge_instance($instance) {
+function field_purge_field(FieldConfigInterface $field) {
$state = \Drupal::state();
- $deleted_instances = $state->get('field.instance.deleted');
- unset($deleted_instances[$instance->uuid()]);
- $state->set('field.instance.deleted', $deleted_instances);
+ $deleted_fields = $state->get('field.field.deleted');
+ unset($deleted_fields[$field->uuid()]);
+ $state->set('field.field.deleted', $deleted_fields);
// Invoke external hooks after the cache is cleared for API consistency.
- \Drupal::moduleHandler()->invokeAll('field_purge_instance', array($instance));
+ \Drupal::moduleHandler()->invokeAll('field_purge_field', array($field));
}
/**
* Purges a field record from the database.
*
- * This function assumes all instances for the field has already been purged,
- * and should only be called by field_purge_batch().
+ * This function assumes all fields for the field storage has already been
+ * purged, and should only be called by field_purge_batch().
*
* @param \Drupal\field\FieldStorageConfigInterface $field_storage
* The field storage to purge.
+ *
+ * @throws Drupal\field\FieldException
*/
function field_purge_field_storage(FieldStorageConfigInterface $field_storage) {
- $instances = entity_load_multiple_by_properties('field_instance_config', array('field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
- if (count($instances) > 0) {
- throw new FieldException(t('Attempt to purge a field storage @field_name that still has instances.', array('@field_name' => $field_storage->getName())));
+ $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+ if (count($fields) > 0) {
+ throw new FieldException(t('Attempt to purge a field storage @field_name that still has fields.', array('@field_name' => $field_storage->getName())));
}
$state = \Drupal::state();
diff --git a/core/modules/field/field.views.inc b/core/modules/field/field.views.inc
index 3f68419..5ce9840 100644
--- a/core/modules/field/field.views.inc
+++ b/core/modules/field/field.views.inc
@@ -9,7 +9,7 @@
use Drupal\Core\Entity\ContentEntityDatabaseStorage;
use Drupal\Core\Entity\EntityStorageInterface;
use Drupal\field\FieldStorageConfigInterface;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
/**
* Implements hook_views_data().
@@ -74,19 +74,19 @@ function _field_views_is_sql_entity_type(FieldStorageConfigInterface $field_stor
/**
* Returns the label of a certain field.
*
- * Therefore it looks up in all bundles to find the most used instance.
+ * Therefore it looks up in all bundles to find the most used field.
*/
function field_views_field_label($entity_type, $field_name) {
$label_counter = array();
$all_labels = array();
- // Count the amount of instances per label per field.
+ // Count the amount of fields per label per field storage.
foreach (array_keys(\Drupal::entityManager()->getBundleInfo($entity_type)) as $bundle) {
- $bundle_instances = array_filter(\Drupal::entityManager()->getFieldDefinitions($entity_type, $bundle), function ($field_definition) {
- return $field_definition instanceof FieldInstanceConfigInterface;
+ $bundle_fields = array_filter(\Drupal::entityManager()->getFieldDefinitions($entity_type, $bundle), function ($field_definition) {
+ return $field_definition instanceof FieldConfigInterface;
});
- if (isset($bundle_instances[$field_name])) {
- $instance = $bundle_instances[$field_name];
- $label = $instance->getLabel();
+ if (isset($bundle_fields[$field_name])) {
+ $field = $bundle_fields[$field_name];
+ $label = $field->getLabel();
$label_counter[$label] = isset($label_counter[$label]) ? ++$label_counter[$label] : 1;
$all_labels[$label] = TRUE;
}
@@ -116,7 +116,7 @@ function field_views_field_default_views_data(FieldStorageConfigInterface $field
if (!\Drupal::service('plugin.manager.field.field_type')->hasDefinition($field_storage->getType())) {
return $data;
}
- // Check the field has instances.
+ // Check the field storage has fields.
if (!$field_storage->getBundles()) {
return $data;
}
@@ -223,7 +223,7 @@ function field_views_field_default_views_data(FieldStorageConfigInterface $field
$add_fields[] = ContentEntityDatabaseStorage::_fieldColumnName($field_storage, $column);
}
// Determine the label to use for the field. We don't have a label available
- // at the field level, so we just go through all instances and take the one
+ // at the field level, so we just go through all fields and take the one
// which is used the most frequently.
list($label, $all_labels) = field_views_field_label($entity_type_id, $field_name);
diff --git a/core/modules/field/src/ConfigImporterFieldPurger.php b/core/modules/field/src/ConfigImporterFieldPurger.php
index f762954..55294b2 100644
--- a/core/modules/field/src/ConfigImporterFieldPurger.php
+++ b/core/modules/field/src/ConfigImporterFieldPurger.php
@@ -87,7 +87,7 @@ protected static function initializeSandbox(array &$context, ConfigImporter $con
}
}
// Each field possibly needs one last field_purge_batch() call to remove the
- // last instance and the field itself.
+ // last field and the field storage itself.
$context['sandbox']['field']['steps_to_delete'] += count($fields);
$context['sandbox']['field']['current_progress'] = 0;
diff --git a/core/modules/field/src/Entity/FieldConfig.php b/core/modules/field/src/Entity/FieldConfig.php
new file mode 100644
index 0000000..7c5b761
--- /dev/null
+++ b/core/modules/field/src/Entity/FieldConfig.php
@@ -0,0 +1,533 @@
+save()); the default value is
+ * added if the $entity object provides no explicit entry (actual values or
+ * "the field is empty") for the field.
+ *
+ * The default value is expressed as a numerically indexed array of items,
+ * each item being an array of key/value pairs matching the set of 'columns'
+ * defined by the "field schema" for the field type, as exposed in
+ * hook_field_schema(). If the number of items exceeds the cardinality of the
+ * field, extraneous items will be ignored.
+ *
+ * This property is overlooked if the $default_value_function is non-empty.
+ *
+ * Example for a integer field:
+ * @code
+ * array(
+ * array('value' => 1),
+ * array('value' => 2),
+ * )
+ * @endcode
+ *
+ * @var array
+ */
+ public $default_value = array();
+
+ /**
+ * The name of a callback function that returns default values.
+ *
+ * The function will be called with the following arguments:
+ * - \Drupal\Core\Entity\ContentEntityInterface $entity
+ * The entity being created.
+ * - \Drupal\Core\Field\FieldDefinitionInterface $definition
+ * The field definition.
+ * It should return an array of default values, in the same format as the
+ * $default_value property.
+ *
+ * This property takes precedence on the list of fixed values specified in the
+ * $default_value property.
+ *
+ * @var string
+ */
+ public $default_value_function = '';
+
+ /**
+ * Flag indicating whether the field is deleted.
+ *
+ * The delete() method marks the field as "deleted" and removes the
+ * corresponding entry from the config storage, but keeps its definition in
+ * the state storage while field data is purged by a separate
+ * garbage-collection process.
+ *
+ * Deleted fields stay out of the regular entity lifecycle (notably, their
+ * values are not populated in loaded entities, and are not saved back).
+ *
+ * @var bool
+ */
+ public $deleted = FALSE;
+
+ /**
+ * The associated FieldStorageConfig entity.
+ *
+ * @var \Drupal\field\Entity\FieldStorageConfig
+ */
+ protected $fieldStorage;
+
+ /**
+ * Flag indicating whether the bundle name can be renamed or not.
+ *
+ * @var bool
+ */
+ protected $bundle_rename_allowed = FALSE;
+
+ /**
+ * The data definition of a field item.
+ *
+ * @var \Drupal\Core\Field\TypedData\FieldItemDataDefinition
+ */
+ protected $itemDefinition;
+
+ /**
+ * Constructs a FieldConfig object.
+ *
+ * In most cases, FieldConfig entities are created via
+ * entity_create('field_config', $values), where $values is the same
+ * parameter as in this constructor.
+ *
+ * @param array $values
+ * An array of properties, keyed by property name. The storage associated to
+ * the field can be specified either with:
+ * - field_storage: the FieldStorageConfigInterface object,
+ * or by referring to an existing field storage in the current configuration
+ * with:
+ * - field_name: The field name.
+ * - entity_type: The entity type.
+ * Additionally, a 'bundle' property is required to indicate the entity
+ * bundle to which the field is attached to. Other array elements will be
+ * used to set the corresponding properties on the class; see the class
+ * property documentation for details.
+ *
+ * @see entity_create()
+ */
+ public function __construct(array $values, $entity_type = 'field_config') {
+ // Allow either an injected FieldStorageConfig object, or a field_name and
+ // entity_type.
+ if (isset($values['field_storage'])) {
+ if (!$values['field_storage'] instanceof FieldStorageConfigInterface) {
+ throw new FieldException('Attempt to create a configurable field for a non-configurable field storage.');
+ }
+ $field_storage = $values['field_storage'];
+ $values['field_name'] = $field_storage->getName();
+ $values['entity_type'] = $field_storage->getTargetEntityTypeId();
+ // The internal property is fieldStorage, not field_storage.
+ unset($values['field_storage']);
+ $values['fieldStorage'] = $field_storage;
+ }
+ else {
+ if (empty($values['field_name'])) {
+ throw new FieldException('Attempt to create a field without a field_name.');
+ }
+ if (empty($values['entity_type'])) {
+ throw new FieldException(String::format('Attempt to create a field @field_name without an entity_type.', array('@field_name' => $values['field_name'])));
+ }
+ }
+ // 'bundle' is required in either case.
+ if (empty($values['bundle'])) {
+ throw new FieldException(String::format('Attempt to create a field @field_name without a bundle.', array('@field_name' => $values['field_name'])));
+ }
+
+ parent::__construct($values, $entity_type);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function id() {
+ return $this->entity_type . '.' . $this->bundle . '.' . $this->field_name;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function getName() {
+ return $this->field_name;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function postCreate(EntityStorageInterface $storage) {
+ parent::postCreate($storage);
+
+ // Validate that we have a valid storage for this field. This throws an
+ // exception if the storage is invalid.
+ $this->getFieldStorageDefinition();
+
+ // 'Label' defaults to the field name (mostly useful for fields created in
+ // tests).
+ if (empty($this->label)) {
+ $this->label = $this->getName();
+ }
+ }
+
+ /**
+ * Overrides \Drupal\Core\Entity\Entity::preSave().
+ *
+ * @throws \Drupal\Core\Field\FieldException
+ * If the field definition is invalid.
+ * @throws \Drupal\Core\Entity\EntityStorageException
+ * In case of failures at the configuration storage level.
+ */
+ public function preSave(EntityStorageInterface $storage) {
+ $entity_manager = \Drupal::entityManager();
+ $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
+
+ $storage_definition = $this->getFieldStorageDefinition();
+
+ if ($this->isNew()) {
+ // Set the default settings.
+ $this->settings += $field_type_manager->getDefaultFieldSettings($storage_definition->type);
+ // Notify the entity storage.
+ $entity_manager->getStorage($this->entity_type)->onFieldDefinitionCreate($this);
+ }
+ else {
+ // Some updates are always disallowed.
+ if ($this->entity_type != $this->original->entity_type) {
+ throw new FieldException("Cannot change an existing field's entity_type.");
+ }
+ if ($this->bundle != $this->original->bundle && empty($this->bundleRenameAllowed)) {
+ throw new FieldException("Cannot change an existing field's bundle.");
+ }
+ if ($storage_definition->uuid() != $this->original->getFieldStorageDefinition()->uuid()) {
+ throw new FieldException("Cannot change an existing field's storage.");
+ }
+ // Set the default settings.
+ $this->settings += $field_type_manager->getDefaultFieldSettings($storage_definition->type);
+ // Notify the entity storage.
+ $entity_manager->getStorage($this->entity_type)->onFieldDefinitionUpdate($this, $this->original);
+ }
+
+ parent::preSave($storage);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function calculateDependencies() {
+ parent::calculateDependencies();
+ // Mark the field_storage_config as a a dependency.
+ $this->addDependency('entity', $this->getFieldStorageDefinition()->getConfigDependencyName());
+ return $this->dependencies;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function postSave(EntityStorageInterface $storage, $update = TRUE) {
+ // Clear the cache.
+ \Drupal::entityManager()->clearCachedFieldDefinitions();
+
+ // Invalidate the render cache for all affected entities.
+ $entity_manager = \Drupal::entityManager();
+ $entity_type = $this->getFieldStorageDefinition()->getTargetEntityTypeId();
+ if ($entity_manager->hasHandler($entity_type, 'view_builder')) {
+ $entity_manager->getViewBuilder($entity_type)->resetCache();
+ }
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public static function preDelete(EntityStorageInterface $storage, array $fields) {
+ $state = \Drupal::state();
+
+ // Keep the field definitions in the state storage so we can use them
+ // later during field_purge_batch().
+ $deleted_fields = $state->get('field.field.deleted') ?: array();
+ foreach ($fields as $field) {
+ if (!$field->deleted) {
+ $config = $field->toArray();
+ $config['deleted'] = TRUE;
+ $config['field_storage_uuid'] = $field->getFieldStorageDefinition()->uuid();
+ $deleted_fields[$field->uuid()] = $config;
+ }
+ }
+ $state->set('field.field.deleted', $deleted_fields);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public static function postDelete(EntityStorageInterface $storage, array $fields) {
+ // Clear the cache upfront, to refresh the results of getBundles().
+ \Drupal::entityManager()->clearCachedFieldDefinitions();
+
+ // Notify the entity storage.
+ foreach ($fields as $field) {
+ if (!$field->deleted) {
+ \Drupal::entityManager()->getStorage($field->entity_type)->onFieldDefinitionDelete($field);
+ }
+ }
+
+ // If this is part of a configuration synchronization then the following
+ // configuration updates are not necessary.
+ $entity = reset($fields);
+ if ($entity->isSyncing()) {
+ return;
+ }
+
+ // Delete field storages that have no more fields.
+ $storages_to_delete = array();
+ foreach ($fields as $field) {
+ $storage_definition = $field->getFieldStorageDefinition();
+ if (!$field->deleted && empty($field->noFieldDelete) && !$field->isUninstalling() && count($storage_definition->getBundles()) == 0) {
+ // Key by field UUID to avoid deleting the same storage twice.
+ $storages_to_delete[$storage_definition->uuid()] = $storage_definition;
+ }
+ }
+ if ($storages_to_delete) {
+ \Drupal::entityManager()->getStorage('field_storage_config')->delete($storages_to_delete);
+ }
+
+ // Cleanup entity displays.
+ $displays_to_update = array();
+ foreach ($fields as $field) {
+ if (!$field->deleted) {
+ $view_modes = \Drupal::entityManager()->getViewModeOptions($field->entity_type, TRUE);
+ foreach (array_keys($view_modes) as $mode) {
+ $displays_to_update['entity_view_display'][$field->entity_type . '.' . $field->bundle . '.' . $mode][] = $field->getName();
+ }
+ $form_modes = \Drupal::entityManager()->getFormModeOptions($field->entity_type, TRUE);
+ foreach (array_keys($form_modes) as $mode) {
+ $displays_to_update['entity_form_display'][$field->entity_type . '.' . $field->bundle . '.' . $mode][] = $field->getName();
+ }
+ }
+ }
+ foreach ($displays_to_update as $type => $ids) {
+ foreach (entity_load_multiple($type, array_keys($ids)) as $id => $display) {
+ foreach ($ids[$id] as $field_name) {
+ $display->removeComponent($field_name);
+ }
+ $display->save();
+ }
+ }
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function linkTemplates() {
+ $link_templates = parent::linkTemplates();
+ if (\Drupal::moduleHandler()->moduleExists('field_ui')) {
+ $link_templates['edit-form'] = 'field_ui.field_edit_' . $this->entity_type;
+ $link_templates['storage-edit-form'] = 'field_ui.storage_edit_' . $this->entity_type;
+ $link_templates['delete-form'] = 'field_ui.delete_' . $this->entity_type;
+
+ if (isset($link_templates['drupal:config-translation-overview'])) {
+ $link_templates['drupal:config-translation-overview'] .= $link_templates['edit-form'];
+ }
+ }
+ return $link_templates;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function urlRouteParameters($rel) {
+ $parameters = parent::urlRouteParameters($rel);
+ $entity_type = \Drupal::entityManager()->getDefinition($this->entity_type);
+ $parameters[$entity_type->getBundleEntityType()] = $this->bundle;
+ return $parameters;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function isDeleted() {
+ return $this->deleted;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function getFieldStorageDefinition() {
+ if (!$this->fieldStorage) {
+ $fields = $this->entityManager()->getFieldStorageDefinitions($this->entity_type);
+ if (!isset($fields[$this->field_name])) {
+ throw new FieldException(String::format('Attempt to create field @field_name that does not have an associated storage entity type @entity_type.', array('@field_name' => $this->field_name, '@entity_type' => $this->entity_type)));
+ }
+ if (!$fields[$this->field_name] instanceof FieldStorageConfigInterface) {
+ throw new FieldException(String::format('Attempt to create a configurable field @field_name associated to a non-configurable storage.', array('@field_name' => $this->field_name, '@entity_type' => $this->entity_type)));
+ }
+ $this->fieldStorage = $fields[$this->field_name];
+ }
+
+ return $this->fieldStorage;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function isDisplayConfigurable($context) {
+ return TRUE;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function getDisplayOptions($display_context) {
+ // Hide configurable fields by default.
+ return array('type' => 'hidden');
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function isReadOnly() {
+ return FALSE;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function isComputed() {
+ return FALSE;
+ }
+
+ /**
+ * Loads a field config entity based on the entity type and field name.
+ *
+ * @param string $entity_type_id
+ * ID of the entity type.
+ * @param string $bundle
+ * Bundle name.
+ * @param string $field_name
+ * Name of the field.
+ *
+ * @return static
+ * The field config entity if one exists for the provided field
+ * name, otherwise NULL.
+ */
+ public static function loadByName($entity_type_id, $bundle, $field_name) {
+ return \Drupal::entityManager()->getStorage('field_config')->load($entity_type_id . '.' . $bundle . '.' . $field_name);
+ }
+
+}
diff --git a/core/modules/field/src/Entity/FieldInstanceConfig.php b/core/modules/field/src/Entity/FieldInstanceConfig.php
deleted file mode 100644
index 4a4239d..0000000
--- a/core/modules/field/src/Entity/FieldInstanceConfig.php
+++ /dev/null
@@ -1,354 +0,0 @@
-getName();
- $values['entity_type'] = $field_storage->getTargetEntityTypeId();
- // The internal property is fieldStorage, not field_storage.
- unset($values['field_storage']);
- $values['fieldStorage'] = $field_storage;
- }
- else {
- if (empty($values['field_name'])) {
- throw new FieldException('Attempt to create a field instance without a field_name.');
- }
- if (empty($values['entity_type'])) {
- throw new FieldException(String::format('Attempt to create a field instance @field_name without an entity_type.', array('@field_name' => $values['field_name'])));
- }
- }
- // 'bundle' is required in either case.
- if (empty($values['bundle'])) {
- throw new FieldException(String::format('Attempt to create a field instance @field_name without a bundle.', array('@field_name' => $values['field_name'])));
- }
-
- parent::__construct($values, $entity_type);
- }
-
- /**
- * {@inheritdoc}
- */
- public function postCreate(EntityStorageInterface $storage) {
- parent::postCreate($storage);
-
- // Validate that we have a valid storage for this instance. This throws an
- // exception if the storage is invalid.
- $this->getFieldStorageDefinition();
-
- // 'Label' defaults to the field name (mostly useful for field instances
- // created in tests).
- if (empty($this->label)) {
- $this->label = $this->getName();
- }
- }
-
- /**
- * Overrides \Drupal\Core\Entity\Entity::preSave().
- *
- * @throws \Drupal\Core\Field\FieldException
- * If the field instance definition is invalid.
- * @throws \Drupal\Core\Entity\EntityStorageException
- * In case of failures at the configuration storage level.
- */
- public function preSave(EntityStorageInterface $storage) {
- $entity_manager = \Drupal::entityManager();
- $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
-
- $storage_definition = $this->getFieldStorageDefinition();
-
- if ($this->isNew()) {
- // Set the default instance settings.
- $this->settings += $field_type_manager->getDefaultInstanceSettings($storage_definition->type);
- // Notify the entity storage.
- $entity_manager->getStorage($this->entity_type)->onFieldDefinitionCreate($this);
- }
- else {
- // Some updates are always disallowed.
- if ($this->entity_type != $this->original->entity_type) {
- throw new FieldException("Cannot change an existing instance's entity_type.");
- }
- if ($this->bundle != $this->original->bundle && empty($this->bundleRenameAllowed)) {
- throw new FieldException("Cannot change an existing instance's bundle.");
- }
- if ($storage_definition->uuid() != $this->original->getFieldStorageDefinition()->uuid()) {
- throw new FieldException("Cannot change an existing instance's storage.");
- }
- // Set the default instance settings.
- $this->settings += $field_type_manager->getDefaultInstanceSettings($storage_definition->type);
- // Notify the entity storage.
- $entity_manager->getStorage($this->entity_type)->onFieldDefinitionUpdate($this, $this->original);
- }
-
- parent::preSave($storage);
- }
-
- /**
- * {@inheritdoc}
- */
- public function calculateDependencies() {
- parent::calculateDependencies();
- // Mark the field_storage_config as a a dependency.
- $this->addDependency('entity', $this->getFieldStorageDefinition()->getConfigDependencyName());
- return $this->dependencies;
- }
-
- /**
- * {@inheritdoc}
- */
- public static function preDelete(EntityStorageInterface $storage, array $instances) {
- $state = \Drupal::state();
-
- // Keep the instance definitions in the state storage so we can use them
- // later during field_purge_batch().
- $deleted_instances = $state->get('field.instance.deleted') ?: array();
- foreach ($instances as $instance) {
- if (!$instance->deleted) {
- $config = $instance->toArray();
- $config['deleted'] = TRUE;
- $config['field_storage_uuid'] = $instance->getFieldStorageDefinition()->uuid();
- $deleted_instances[$instance->uuid()] = $config;
- }
- }
- $state->set('field.instance.deleted', $deleted_instances);
- }
-
- /**
- * {@inheritdoc}
- */
- public static function postDelete(EntityStorageInterface $storage, array $instances) {
- // Clear the cache upfront, to refresh the results of getBundles().
- \Drupal::entityManager()->clearCachedFieldDefinitions();
-
- // Notify the entity storage.
- foreach ($instances as $instance) {
- if (!$instance->deleted) {
- \Drupal::entityManager()->getStorage($instance->entity_type)->onFieldDefinitionDelete($instance);
- }
- }
-
- // If this is part of a configuration synchronization then the following
- // configuration updates are not necessary.
- $entity = reset($instances);
- if ($entity->isSyncing()) {
- return;
- }
-
- // Delete field storages that have no more instances.
- $storages_to_delete = array();
- foreach ($instances as $instance) {
- $storage_definition = $instance->getFieldStorageDefinition();
- if (!$instance->deleted && empty($instance->noFieldDelete) && !$instance->isUninstalling() && count($storage_definition->getBundles()) == 0) {
- // Key by field UUID to avoid deleting the same storage twice.
- $storages_to_delete[$storage_definition->uuid()] = $storage_definition;
- }
- }
- if ($storages_to_delete) {
- \Drupal::entityManager()->getStorage('field_storage_config')->delete($storages_to_delete);
- }
-
- // Cleanup entity displays.
- $displays_to_update = array();
- foreach ($instances as $instance) {
- if (!$instance->deleted) {
- $view_modes = \Drupal::entityManager()->getViewModeOptions($instance->entity_type, TRUE);
- foreach (array_keys($view_modes) as $mode) {
- $displays_to_update['entity_view_display'][$instance->entity_type . '.' . $instance->bundle . '.' . $mode][] = $instance->getName();
- }
- $form_modes = \Drupal::entityManager()->getFormModeOptions($instance->entity_type, TRUE);
- foreach (array_keys($form_modes) as $mode) {
- $displays_to_update['entity_form_display'][$instance->entity_type . '.' . $instance->bundle . '.' . $mode][] = $instance->getName();
- }
- }
- }
- foreach ($displays_to_update as $type => $ids) {
- foreach (entity_load_multiple($type, array_keys($ids)) as $id => $display) {
- foreach ($ids[$id] as $field_name) {
- $display->removeComponent($field_name);
- }
- $display->save();
- }
- }
- }
-
- /**
- * {@inheritdoc}
- */
- protected function linkTemplates() {
- $link_templates = parent::linkTemplates();
- if (\Drupal::moduleHandler()->moduleExists('field_ui')) {
- $link_templates['edit-form'] = 'field_ui.instance_edit_' . $this->entity_type;
- $link_templates['storage-edit-form'] = 'field_ui.storage_edit_' . $this->entity_type;
- $link_templates['delete-form'] = 'field_ui.delete_' . $this->entity_type;
-
- if (isset($link_templates['drupal:config-translation-overview'])) {
- $link_templates['drupal:config-translation-overview'] .= $link_templates['edit-form'];
- }
- }
- return $link_templates;
- }
-
- /**
- * {@inheritdoc}
- */
- protected function urlRouteParameters($rel) {
- $parameters = parent::urlRouteParameters($rel);
- $entity_type = \Drupal::entityManager()->getDefinition($this->entity_type);
- $parameters[$entity_type->getBundleEntityType()] = $this->bundle;
- return $parameters;
- }
-
- /**
- * {@inheritdoc}
- */
- public function isDeleted() {
- return $this->deleted;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getFieldStorageDefinition() {
- if (!$this->fieldStorage) {
- $fields = $this->entityManager()->getFieldStorageDefinitions($this->entity_type);
- if (!isset($fields[$this->field_name])) {
- throw new FieldException(String::format('Attempt to create an instance of field @field_name that does not exist on entity type @entity_type.', array('@field_name' => $this->field_name, '@entity_type' => $this->entity_type)));
- }
- if (!$fields[$this->field_name] instanceof FieldStorageConfigInterface) {
- throw new FieldException(String::format('Attempt to create a configurable instance of non-configurable field @field_name.', array('@field_name' => $this->field_name, '@entity_type' => $this->entity_type)));
- }
- $this->fieldStorage = $fields[$this->field_name];
- }
-
- return $this->fieldStorage;
- }
-
- /**
- * {@inheritdoc}
- */
- public function isDisplayConfigurable($context) {
- return TRUE;
- }
-
- /**
- * {@inheritdoc}
- */
- public function getDisplayOptions($display_context) {
- // Hide configurable fields by default.
- return array('type' => 'hidden');
- }
-
- /**
- * {@inheritdoc}
- */
- public function isReadOnly() {
- return FALSE;
- }
-
- /**
- * {@inheritdoc}
- */
- public function isComputed() {
- return FALSE;
- }
-
- /**
- * Loads a field config entity based on the entity type and field name.
- *
- * @param string $entity_type_id
- * ID of the entity type.
- * @param string $bundle
- * Bundle name.
- * @param string $field_name
- * Name of the field.
- *
- * @return static
- * The field instance config entity if one exists for the provided field
- * name, otherwise NULL.
- */
- public static function loadByName($entity_type_id, $bundle, $field_name) {
- return \Drupal::entityManager()->getStorage('field_instance_config')->load($entity_type_id . '.' . $bundle . '.' . $field_name);
- }
-
-}
diff --git a/core/modules/field/src/Entity/FieldStorageConfig.php b/core/modules/field/src/Entity/FieldStorageConfig.php
index f6953b3..55be5f3 100644
--- a/core/modules/field/src/Entity/FieldStorageConfig.php
+++ b/core/modules/field/src/Entity/FieldStorageConfig.php
@@ -123,8 +123,8 @@ class FieldStorageConfig extends ConfigEntityBase implements FieldStorageConfigI
* If TRUE, some actions not available though the UI (but are still possible
* through direct API manipulation):
* - field settings cannot be changed,
- * - new instances cannot be created
- * - existing instances cannot be deleted.
+ * - new fields cannot be created
+ * - existing fields cannot be deleted.
* Defaults to FALSE.
*
* @var bool
@@ -360,39 +360,39 @@ public function postSave(EntityStorageInterface $storage, $update = TRUE) {
/**
* {@inheritdoc}
*/
- public static function preDelete(EntityStorageInterface $storage, array $fields) {
+ public static function preDelete(EntityStorageInterface $storage, array $field_storages) {
$state = \Drupal::state();
- $instance_storage = \Drupal::entityManager()->getStorage('field_instance_config');
+ $field_config_storage = \Drupal::entityManager()->getStorage('field_config');
- // Delete instances first. Note: when deleting a field through
- // FieldInstanceConfig::postDelete(), the instances have been deleted already, so
- // no instances will be found here.
- $instance_ids = array();
- foreach ($fields as $field) {
- if (!$field->deleted) {
- foreach ($field->getBundles() as $bundle) {
- $instance_ids[] = "{$field->entity_type}.$bundle.{$field->name}";
+ // Delete fields first. Note: when deleting a field storage through
+ // FieldConfig::postDelete(), the fields have been deleted already, so
+ // no fields will be found here.
+ $field_ids = array();
+ foreach ($field_storages as $field_storage) {
+ if (!$field_storage->deleted) {
+ foreach ($field_storage->getBundles() as $bundle) {
+ $field_ids[] = "{$field_storage->entity_type}.$bundle.{$field_storage->name}";
}
}
}
- if ($instance_ids) {
- $instances = $instance_storage->loadMultiple($instance_ids);
+ if ($field_ids) {
+ $fields = $field_config_storage->loadMultiple($field_ids);
// Tag the objects to preserve recursive deletion of the field.
- foreach ($instances as $instance) {
- $instance->noFieldDelete = TRUE;
+ foreach ($fields as $field) {
+ $field->noFieldDelete = TRUE;
}
- $instance_storage->delete($instances);
+ $field_config_storage->delete($fields);
}
// Keep the field definitions in the state storage so we can use them later
// during field_purge_batch().
$deleted_storages = $state->get('field.storage.deleted') ?: array();
- foreach ($fields as $field) {
- if (!$field->deleted) {
- $config = $field->toArray();
+ foreach ($field_storages as $field_storage) {
+ if (!$field_storage->deleted) {
+ $config = $field_storage->toArray();
$config['deleted'] = TRUE;
- $config['bundles'] = $field->getBundles();
- $deleted_storages[$field->uuid()] = $config;
+ $config['bundles'] = $field_storage->getBundles();
+ $deleted_storages[$field_storage->uuid()] = $config;
}
}
@@ -499,8 +499,8 @@ public function getType() {
public function getSettings() {
// @todo FieldTypePluginManager maintains its own static cache. However, do
// some CPU and memory profiling to see if it's worth statically caching
- // $field_type_info, or the default field and instance settings, within
- // $this.
+ // $field_type_info, or the default field storage and field settings,
+ // within $this.
$field_type_manager = \Drupal::service('plugin.manager.field.field_type');
$settings = $field_type_manager->getDefaultSettings($this->type);
diff --git a/core/modules/field/src/FieldInstanceConfigAccessControlHandler.php b/core/modules/field/src/FieldConfigAccessControlHandler.php
similarity index 66%
rename from core/modules/field/src/FieldInstanceConfigAccessControlHandler.php
rename to core/modules/field/src/FieldConfigAccessControlHandler.php
index 6b21783..c502466 100644
--- a/core/modules/field/src/FieldInstanceConfigAccessControlHandler.php
+++ b/core/modules/field/src/FieldConfigAccessControlHandler.php
@@ -2,7 +2,7 @@
/**
* @file
- * Contains \Drupal\field\FieldInstanceConfigAccessControlHandler.
+ * Contains \Drupal\field\FieldConfigAccessControlHandler.
*/
namespace Drupal\field;
@@ -12,11 +12,11 @@
use Drupal\Core\Session\AccountInterface;
/**
- * Defines the access control handler for the field instance entity type.
+ * Defines the access control handler for the field entity type.
*
- * @see \Drupal\field\Entity\FieldInstanceConfig
+ * @see \Drupal\field\Entity\FieldConfig
*/
-class FieldInstanceConfigAccessControlHandler extends EntityAccessControlHandler {
+class FieldConfigAccessControlHandler extends EntityAccessControlHandler {
/**
* {@inheritdoc}
diff --git a/core/modules/field/src/FieldConfigInterface.php b/core/modules/field/src/FieldConfigInterface.php
new file mode 100644
index 0000000..5a8dfdb
--- /dev/null
+++ b/core/modules/field/src/FieldConfigInterface.php
@@ -0,0 +1,26 @@
+get()) {
return TRUE;
@@ -94,47 +101,47 @@ public function importDelete($name, Config $new_config, Config $old_config) {
* {@inheritdoc}
*/
public function loadByProperties(array $conditions = array()) {
- // Include deleted instances if specified in the $conditions parameters.
+ // Include deleted fields if specified in the $conditions parameters.
$include_deleted = isset($conditions['include_deleted']) ? $conditions['include_deleted'] : FALSE;
unset($conditions['include_deleted']);
- $instances = array();
+ $fields = array();
- // Get instances stored in configuration. If we are explicitly looking for
- // deleted instances only, this can be skipped, because they will be
+ // Get fields stored in configuration. If we are explicitly looking for
+ // deleted fields only, this can be skipped, because they will be
// retrieved from state below.
if (empty($conditions['deleted'])) {
if (isset($conditions['entity_type']) && isset($conditions['bundle']) && isset($conditions['field_name'])) {
// Optimize for the most frequent case where we do have a specific ID.
$id = $conditions['entity_type'] . '.' . $conditions['bundle'] . '.' . $conditions['field_name'];
- $instances = $this->loadMultiple(array($id));
+ $fields = $this->loadMultiple(array($id));
}
else {
- // No specific ID, we need to examine all existing instances.
- $instances = $this->loadMultiple();
+ // No specific ID, we need to examine all existing fields.
+ $fields = $this->loadMultiple();
}
}
- // Merge deleted instances (stored in state) if needed.
+ // Merge deleted fields (stored in state) if needed.
if ($include_deleted || !empty($conditions['deleted'])) {
- $deleted_instances = $this->state->get('field.instance.deleted') ?: array();
+ $deleted_fields = $this->state->get('field.field.deleted') ?: array();
$deleted_storages = $this->state->get('field.storage.deleted') ?: array();
- foreach ($deleted_instances as $id => $config) {
- // If the field itself is deleted, inject it directly in the instance.
+ foreach ($deleted_fields as $id => $config) {
+ // If the field storage itself is deleted, inject it directly in the field.
if (isset($deleted_storages[$config['field_storage_uuid']])) {
$config['field_storage'] = $this->entityManager->getStorage('field_storage_config')->create($deleted_storages[$config['field_storage_uuid']]);
}
- $instances[$id] = $this->create($config);
+ $fields[$id] = $this->create($config);
}
}
- // Collect matching instances.
- $matching_instances = array();
- foreach ($instances as $instance) {
+ // Collect matching fields.
+ $matching_fields = array();
+ foreach ($fields as $field) {
// Some conditions are checked against the field.
- $field_storage = $instance->getFieldStorageDefinition();
+ $field_storage = $field->getFieldStorageDefinition();
- // Only keep the instance if it matches all conditions.
+ // Only keep the field if it matches all conditions.
foreach ($conditions as $key => $value) {
// Extract the actual value against which the condition is checked.
switch ($key) {
@@ -148,27 +155,27 @@ public function loadByProperties(array $conditions = array()) {
break;
case 'uuid';
- $checked_value = $instance->uuid();
+ $checked_value = $field->uuid();
break;
default:
- $checked_value = $instance->$key;
+ $checked_value = $field->$key;
break;
}
- // Skip to the next instance as soon as one condition does not match.
+ // Skip to the next field as soon as one condition does not match.
if ($checked_value != $value) {
continue 2;
}
}
- // When returning deleted instances, key the results by UUID since they
- // can include several instances with the same ID.
- $key = $include_deleted ? $instance->uuid() : $instance->id();
- $matching_instances[$key] = $instance;
+ // When returning deleted fields, key the results by UUID since they
+ // can include several fields with the same ID.
+ $key = $include_deleted ? $field->uuid() : $field->id();
+ $matching_fields[$key] = $field;
}
- return $matching_instances;
+ return $matching_fields;
}
}
diff --git a/core/modules/field/src/FieldInstanceConfigInterface.php b/core/modules/field/src/FieldInstanceConfigInterface.php
deleted file mode 100644
index 3026b4f..0000000
--- a/core/modules/field/src/FieldInstanceConfigInterface.php
+++ /dev/null
@@ -1,26 +0,0 @@
-randomMachineName());
- $this->field = FieldStorageConfig::create(array(
+ $this->field_storage = FieldStorageConfig::create(array(
'name' => $field_name,
'entity_type' => 'entity_test',
'type' => 'boolean',
@@ -73,15 +73,15 @@ function testBooleanField() {
'off_label' => $off,
),
));
- $this->field->save();
- $this->instance = FieldInstanceConfig::create(array(
+ $this->field_storage->save();
+ $this->field = FieldConfig::create(array(
'field_name' => $field_name,
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
'label' => $label,
'required' => TRUE,
));
- $this->instance->save();
+ $this->field->save();
// Create a form display for the default form mode.
entity_get_form_display('entity_test', 'entity_test', 'default')
@@ -132,7 +132,7 @@ function testBooleanField() {
$this->drupalGet('entity_test/add');
$this->assertFieldByName("{$field_name}[value]", '', 'Widget found.');
$this->assertNoRaw($on);
- $this->assertText($this->instance->label());
+ $this->assertText($this->field->label());
// Go to the form display page and check if the default settings works as
// expected.
diff --git a/core/modules/field/src/Tests/Boolean/BooleanItemTest.php b/core/modules/field/src/Tests/Boolean/BooleanItemTest.php
index f9198b1..dfa8d4c 100644
--- a/core/modules/field/src/Tests/Boolean/BooleanItemTest.php
+++ b/core/modules/field/src/Tests/Boolean/BooleanItemTest.php
@@ -24,13 +24,13 @@ class BooleanItemTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create an boolean field and instance for validation.
+ // Create a boolean field and storage for validation.
entity_create('field_storage_config', array(
'name' => 'field_boolean',
'entity_type' => 'entity_test',
'type' => 'boolean',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => 'entity_test',
'field_name' => 'field_boolean',
'bundle' => 'entity_test',
diff --git a/core/modules/field/src/Tests/BulkDeleteTest.php b/core/modules/field/src/Tests/BulkDeleteTest.php
index ee099a8..e492ff5 100644
--- a/core/modules/field/src/Tests/BulkDeleteTest.php
+++ b/core/modules/field/src/Tests/BulkDeleteTest.php
@@ -9,10 +9,10 @@
use Drupal\Core\Entity\ContentEntityDatabaseStorage;
use Drupal\Core\Entity\EntityInterface;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
/**
- * Bulk delete fields and instances, and clean up afterwards.
+ * Bulk delete storages and fields, and clean up afterwards.
*
* @group field
*/
@@ -105,7 +105,7 @@ protected function setUp() {
entity_test_create_bundle($name, $desc);
}
- // Create two fields.
+ // Create two field storages.
$field_storage = entity_create('field_storage_config', array(
'name' => 'bf_1',
'entity_type' => $this->entity_type,
@@ -123,11 +123,11 @@ protected function setUp() {
$field_storage->save();
$this->fieldStorages[] = $field_storage;
- // For each bundle, create an instance of each field, and 10
- // entities with values for each field.
+ // For each bundle, create each field, and 10 entities with values for the
+ // fields.
foreach ($this->bundles as $bundle) {
foreach ($this->fieldStorages as $field_storage) {
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => $bundle,
))->save();
@@ -148,14 +148,14 @@ protected function setUp() {
}
/**
- * Verify that deleting an instance leaves the field data items in
- * the database and that the appropriate Field API functions can
- * operate on the deleted data and instance.
+ * Verify that deleting a field leaves the field data items in the database
+ * and that the appropriate Field API functions can operate on the deleted
+ * data and field definition.
*
- * This tests how EntityFieldQuery interacts with field instance deletion and
- * could be moved to FieldCrudTestCase, but depends on this class's setUp().
+ * This tests how EntityFieldQuery interacts with field deletion and could be
+ * moved to FieldCrudTestCase, but depends on this class's setUp().
*/
- function testDeleteFieldInstance() {
+ function testDeleteField() {
$bundle = reset($this->bundles);
$field_storage = reset($this->fieldStorages);
$field_name = $field_storage->name;
@@ -167,15 +167,15 @@ function testDeleteFieldInstance() {
->execute();
$this->assertEqual(count($found), 10, 'Correct number of entities found before deleting');
- // Delete the instance.
- $instance = FieldInstanceConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
- $instance->delete();
+ // Delete the field.
+ $field = FieldConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
+ $field->delete();
- // The instance still exists, deleted.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
- $this->assertEqual(count($instances), 1, 'There is one deleted instance');
- $instance = $instances[$instance->uuid()];
- $this->assertEqual($instance->bundle, $bundle, 'The deleted instance is for the correct bundle');
+ // The field still exists, deleted.
+ $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+ $this->assertEqual(count($fields), 1, 'There is one deleted field');
+ $field = $fields[$field->uuid()];
+ $this->assertEqual($field->bundle, $bundle, 'The deleted field is for the correct bundle');
// Check that the actual stored content did not change during delete.
$schema = ContentEntityDatabaseStorage::_fieldSqlSchema($field_storage);
@@ -207,19 +207,19 @@ function testDeleteFieldInstance() {
}
/**
- * Verify that field data items and instances are purged when an
- * instance is deleted.
+ * Verify that field data items and fields are purged when a field storage is
+ * deleted.
*/
- function testPurgeInstance() {
+ function testPurgeField() {
// Start recording hook invocations.
field_test_memorize();
$bundle = reset($this->bundles);
$field_storage = reset($this->fieldStorages);
- // Delete the instance.
- $instance = FieldInstanceConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
- $instance->delete();
+ // Delete the field.
+ $field = FieldConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
+ $field->delete();
// No field hooks were called.
$mem = field_test_memorize();
@@ -249,26 +249,26 @@ function testPurgeInstance() {
}
$this->checkHooksInvocations($hooks, $actual_hooks);
- // The instance still exists, deleted.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
- $this->assertEqual(count($instances), 1, 'There is one deleted instance');
+ // The field still exists, deleted.
+ $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+ $this->assertEqual(count($fields), 1, 'There is one deleted field');
- // Purge the instance.
+ // Purge the field.
field_purge_batch($batch_size);
- // The instance is gone.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
- $this->assertEqual(count($instances), 0, 'The instance is gone');
+ // The field is gone.
+ $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+ $this->assertEqual(count($fields), 0, 'The field is gone');
// The field storage still exists, not deleted, because it has a second
- // instance.
+ // field.
$storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
$this->assertTrue(isset($storages[$field_storage->uuid()]), 'The field storage exists and is not deleted');
}
/**
* Verify that field storages are preserved and purged correctly as multiple
- * instances are deleted and purged.
+ * fields are deleted and purged.
*/
function testPurgeFieldStorage() {
// Start recording hook invocations.
@@ -276,10 +276,10 @@ function testPurgeFieldStorage() {
$field_storage = reset($this->fieldStorages);
- // Delete the first instance.
+ // Delete the first field.
$bundle = reset($this->bundles);
- $instance = FieldInstanceConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
- $instance->delete();
+ $field = FieldConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
+ $field->delete();
// Assert that FieldItemInterface::delete() was not called yet.
$mem = field_test_memorize();
@@ -299,24 +299,24 @@ function testPurgeFieldStorage() {
}
$this->checkHooksInvocations($hooks, $actual_hooks);
- // The instance still exists, deleted.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('uuid' => $instance->uuid(), 'include_deleted' => TRUE));
- $this->assertTrue(isset($instances[$instance->uuid()]) && $instances[$instance->uuid()]->deleted, 'The instance exists and is deleted');
+ // The field still exists, deleted.
+ $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+ $this->assertTrue(isset($fields[$field->uuid()]) && $fields[$field->uuid()]->deleted, 'The field exists and is deleted');
- // Purge again to purge the instance.
+ // Purge again to purge the field.
field_purge_batch(0);
- // The instance is gone.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('uuid' => $instance->uuid(), 'include_deleted' => TRUE));
- $this->assertEqual(count($instances), 0, 'The instance is purged.');
+ // The field is gone.
+ $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+ $this->assertEqual(count($fields), 0, 'The field is purged.');
// The field storage still exists, not deleted.
$storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
$this->assertTrue(isset($storages[$field_storage->uuid()]) && !$storages[$field_storage->uuid()]->deleted, 'The field storage exists and is not deleted');
- // Delete the second instance.
+ // Delete the second field.
$bundle = next($this->bundles);
- $instance = FieldInstanceConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
- $instance->delete();
+ $field = FieldConfig::loadByName($this->entity_type, $bundle, $field_storage->name);
+ $field->delete();
// Assert that FieldItemInterface::delete() was not called yet.
$mem = field_test_memorize();
@@ -334,18 +334,18 @@ function testPurgeFieldStorage() {
}
$this->checkHooksInvocations($hooks, $actual_hooks);
- // The field storage and instance still exist, deleted.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('uuid' => $instance->uuid(), 'include_deleted' => TRUE));
- $this->assertTrue(isset($instances[$instance->uuid()]) && $instances[$instance->uuid()]->deleted, 'The instance exists and is deleted');
+ // The field and the storage still exist, deleted.
+ $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+ $this->assertTrue(isset($fields[$field->uuid()]) && $fields[$field->uuid()]->deleted, 'The field exists and is deleted');
$storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
$this->assertTrue(isset($storages[$field_storage->uuid()]) && $storages[$field_storage->uuid()]->deleted, 'The field storage exists and is deleted');
- // Purge again to purge the instance and the field storage.
+ // Purge again to purge the field and the storage.
field_purge_batch(0);
- // The field storage and instance are gone.
- $instances = entity_load_multiple_by_properties('field_instance_config', array('uuid' => $instance->uuid(), 'include_deleted' => TRUE));
- $this->assertEqual(count($instances), 0, 'The instance is purged.');
+ // The field and the storage are gone.
+ $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+ $this->assertEqual(count($fields), 0, 'The field is purged.');
$storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
$this->assertEqual(count($storages), 0, 'The field storage is purged.');
}
diff --git a/core/modules/field/src/Tests/ConfigFieldDefinitionTest.php b/core/modules/field/src/Tests/ConfigFieldDefinitionTest.php
index 7841c2b..44e8c89 100644
--- a/core/modules/field/src/Tests/ConfigFieldDefinitionTest.php
+++ b/core/modules/field/src/Tests/ConfigFieldDefinitionTest.php
@@ -40,15 +40,15 @@ class ConfigFieldDefinitionTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create a field and instance of type 'test_field', on the 'entity_test'
+ // Create a field and a storage of type 'test_field', on the 'entity_test'
// entity type.
$this->entityType = 'entity_test';
$this->bundle = 'entity_test';
- $this->createFieldWithInstance('', $this->entityType, $this->bundle);
+ $this->createFieldWithStorage('', $this->entityType, $this->bundle);
$this->entityManager = $this->container->get('entity.manager');
- // Create a second instance on 'entity_test_rev'.
- $this->createFieldWithInstance('_rev', 'entity_test_rev', 'entity_test_rev');
+ // Create a second field on 'entity_test_rev'.
+ $this->createFieldWithStorage('_rev', 'entity_test_rev', 'entity_test_rev');
}
/**
@@ -56,10 +56,10 @@ protected function setUp() {
*/
public function testBundleFieldDefinition() {
$definitions = $this->entityManager->getFieldDefinitions($this->entityType, $this->bundle);
- $this->assertTrue(isset($definitions[$this->fieldTestData->instance->getName()]));
- $this->assertTrue($definitions[$this->fieldTestData->instance->getName()] instanceof FieldDefinitionInterface);
- // Make sure no field for the instance on another entity type is exposed.
- $this->assertFalse(isset($definitions[$this->fieldTestData->instance_rev->getName()]));
+ $this->assertTrue(isset($definitions[$this->fieldTestData->field->getName()]));
+ $this->assertTrue($definitions[$this->fieldTestData->field->getName()] instanceof FieldDefinitionInterface);
+ // Make sure fields on other entity types are not exposed.
+ $this->assertFalse(isset($definitions[$this->fieldTestData->field_rev->getName()]));
}
/**
@@ -67,11 +67,10 @@ public function testBundleFieldDefinition() {
*/
public function testFieldStorageDefinition() {
$field_storage_definitions = $this->entityManager->getFieldStorageDefinitions($this->entityType);
- $this->assertTrue(isset($field_storage_definitions[$this->fieldTestData->instance->getName()]));
- $this->assertTrue($field_storage_definitions[$this->fieldTestData->instance->getName()] instanceof FieldStorageDefinitionInterface);
- // Make sure no storage field for the instance on another entity type is
- // exposed.
- $this->assertFalse(isset($field_storage_definitions[$this->fieldTestData->instance_rev->getName()]));
+ $this->assertTrue(isset($field_storage_definitions[$this->fieldTestData->field->getName()]));
+ $this->assertTrue($field_storage_definitions[$this->fieldTestData->field->getName()] instanceof FieldStorageDefinitionInterface);
+ // Make sure storages on other entity types are not exposed.
+ $this->assertFalse(isset($field_storage_definitions[$this->fieldTestData->field_rev->getName()]));
}
}
diff --git a/core/modules/field/src/Tests/CrudTest.php b/core/modules/field/src/Tests/CrudTest.php
index ec9b4d7..34061f8 100644
--- a/core/modules/field/src/Tests/CrudTest.php
+++ b/core/modules/field/src/Tests/CrudTest.php
@@ -212,13 +212,13 @@ function testRead() {
$fields = entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['name'], 'type' => 'foo'));
$this->assertTrue(empty($fields), 'No field was found.');
- // Create an instance of the field.
- $instance_definition = array(
+ // Create a field from the field storage.
+ $field_definition = array(
'field_name' => $field_storage_definition['name'],
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
);
- entity_create('field_instance_config', $instance_definition)->save();
+ entity_create('field_config', $field_definition)->save();
}
/**
@@ -278,67 +278,67 @@ function testDelete() {
// TODO: Also test deletion of the data stored in the field ?
// Create two fields (so we can test that only one is deleted).
- $field = array(
+ $field_storage_definition = array(
'name' => 'field_1',
'type' => 'test_field',
'entity_type' => 'entity_test',
);
- entity_create('field_storage_config', $field)->save();
- $another_field = array(
+ entity_create('field_storage_config', $field_storage_definition)->save();
+ $another_field_storage_definition = array(
'name' => 'field_2',
'type' => 'test_field',
'entity_type' => 'entity_test',
);
- entity_create('field_storage_config', $another_field)->save();
+ entity_create('field_storage_config', $another_field_storage_definition)->save();
- // Create instances for each.
- $instance_definition = array(
- 'field_name' => $field['name'],
+ // Create fields for each.
+ $field_definition = array(
+ 'field_name' => $field_storage_definition['name'],
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
);
- entity_create('field_instance_config', $instance_definition)->save();
- $another_instance_definition = $instance_definition;
- $another_instance_definition['field_name'] = $another_field['name'];
- entity_create('field_instance_config', $another_instance_definition)->save();
+ entity_create('field_config', $field_definition)->save();
+ $another_field_definition = $field_definition;
+ $another_field_definition['field_name'] = $another_field_storage_definition['name'];
+ entity_create('field_config', $another_field_definition)->save();
// Test that the first field is not deleted, and then delete it.
- $field_storage = current(entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field['name'], 'include_deleted' => TRUE)));
- $this->assertTrue(!empty($field_storage) && empty($field_storage->deleted), 'A new field is not marked for deletion.');
- FieldStorageConfig::loadByName('entity_test', $field['name'])->delete();
+ $field_storage = current(entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['name'], 'include_deleted' => TRUE)));
+ $this->assertTrue(!empty($field_storage) && empty($field_storage->deleted), 'A new storage is not marked for deletion.');
+ FieldStorageConfig::loadByName('entity_test', $field_storage_definition['name'])->delete();
// Make sure that the field is marked as deleted when it is specifically
// loaded.
- $field_storage = current(entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field['name'], 'include_deleted' => TRUE)));
- $this->assertTrue(!empty($field_storage->deleted), 'A deleted field is marked for deletion.');
+ $field_storage = current(entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['name'], 'include_deleted' => TRUE)));
+ $this->assertTrue(!empty($field_storage->deleted), 'A deleted storage is marked for deletion.');
- // Make sure that this field's instance is marked as deleted when it is
+ // Make sure that this field is marked as deleted when it is
// specifically loaded.
- $instance = current(entity_load_multiple_by_properties('field_instance_config', array('entity_type' => 'entity_test', 'field_name' => $instance_definition['field_name'], 'bundle' => $instance_definition['bundle'], 'include_deleted' => TRUE)));
- $this->assertTrue(!empty($instance->deleted), 'An instance for a deleted field is marked for deletion.');
+ $field = current(entity_load_multiple_by_properties('field_config', array('entity_type' => 'entity_test', 'field_name' => $field_definition['field_name'], 'bundle' => $field_definition['bundle'], 'include_deleted' => TRUE)));
+ $this->assertTrue(!empty($field->deleted), 'A field whose storage was deleted is marked for deletion.');
+
+ // Try to load the storage normally and make sure it does not show up.
+ $field_storage = entity_load('field_storage_config', 'entity_test.' . $field_storage_definition['name']);
+ $this->assertTrue(empty($field_storage), 'A deleted storage is not loaded by default.');
// Try to load the field normally and make sure it does not show up.
- $field_storage = entity_load('field_storage_config', 'entity_test.' . $field['name']);
- $this->assertTrue(empty($field_storage), 'A deleted field is not loaded by default.');
+ $field = entity_load('field_config', 'entity_test.' . '.' . $field_definition['bundle'] . '.' . $field_definition['field_name']);
+ $this->assertTrue(empty($field), 'A field whose storage was deleted is not loaded by default.');
- // Try to load the instance normally and make sure it does not show up.
- $instance = entity_load('field_instance_config', 'entity_test.' . '.' . $instance_definition['bundle'] . '.' . $instance_definition['field_name']);
- $this->assertTrue(empty($instance), 'An instance for a deleted field is not loaded by default.');
-
- // Make sure the other field (and its field instance) are not deleted.
- $another_field_storage = entity_load('field_storage_config', 'entity_test.' . $another_field['name']);
- $this->assertTrue(!empty($another_field_storage) && empty($another_field_storage->deleted), 'A non-deleted field is not marked for deletion.');
- $another_instance = entity_load('field_instance_config', 'entity_test.' . $another_instance_definition['bundle'] . '.' . $another_instance_definition['field_name']);
- $this->assertTrue(!empty($another_instance) && empty($another_instance->deleted), 'An instance of a non-deleted field is not marked for deletion.');
+ // Make sure the other field and its storage are not deleted.
+ $another_field_storage = entity_load('field_storage_config', 'entity_test.' . $another_field_storage_definition['name']);
+ $this->assertTrue(!empty($another_field_storage) && empty($another_field_storage->deleted), 'A non-deleted storage is not marked for deletion.');
+ $another_field = entity_load('field_config', 'entity_test.' . $another_field_definition['bundle'] . '.' . $another_field_definition['field_name']);
+ $this->assertTrue(!empty($another_field) && empty($another_field->deleted), 'A field whose storage was not deleted is not marked for deletion.');
// Try to create a new field the same name as a deleted field and
// write data into it.
- entity_create('field_storage_config', $field)->save();
- entity_create('field_instance_config', $instance_definition)->save();
- $field_storage = entity_load('field_storage_config', 'entity_test.' . $field['name']);
- $this->assertTrue(!empty($field_storage) && empty($field_storage->deleted), 'A new field with a previously used name is created.');
- $instance = entity_load('field_instance_config', 'entity_test.' . $instance_definition['bundle'] . '.' . $instance_definition['field_name'] );
- $this->assertTrue(!empty($instance) && empty($instance->deleted), 'A new instance for a previously used field name is created.');
+ entity_create('field_storage_config', $field_storage_definition)->save();
+ entity_create('field_config', $field_definition)->save();
+ $field_storage = entity_load('field_storage_config', 'entity_test.' . $field_storage_definition['name']);
+ $this->assertTrue(!empty($field_storage) && empty($field_storage->deleted), 'A new storage with a previously used name is created.');
+ $field = entity_load('field_config', 'entity_test.' . $field_definition['bundle'] . '.' . $field_definition['field_name'] );
+ $this->assertTrue(!empty($field) && empty($field->deleted), 'A new field for a previously used field name is created.');
// Save an entity with data for the field
$entity = entity_create('entity_test');
@@ -386,12 +386,12 @@ function testUpdate() {
'cardinality' => $cardinality,
));
$field_storage->save();
- $instance = entity_create('field_instance_config', array(
+ $field = entity_create('field_config', array(
'field_storage' => $field_storage,
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
));
- $instance->save();
+ $field->save();
do {
$entity = entity_create('entity_test');
diff --git a/core/modules/field/src/Tests/DisplayApiTest.php b/core/modules/field/src/Tests/DisplayApiTest.php
index 623419b..1a1abfd 100644
--- a/core/modules/field/src/Tests/DisplayApiTest.php
+++ b/core/modules/field/src/Tests/DisplayApiTest.php
@@ -59,7 +59,7 @@ class DisplayApiTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create a field and instance.
+ // Create a field and its storage.
$this->field_name = 'test_field';
$this->label = $this->randomMachineName();
$this->cardinality = 4;
@@ -70,7 +70,7 @@ protected function setUp() {
'type' => 'test_field',
'cardinality' => $this->cardinality,
);
- $instance = array(
+ $field = array(
'field_name' => $this->field_name,
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
@@ -93,14 +93,14 @@ protected function setUp() {
);
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
// Create a display for the default view mode.
- entity_get_display($instance['entity_type'], $instance['bundle'], 'default')
+ entity_get_display($field['entity_type'], $field['bundle'], 'default')
->setComponent($this->field_name, $this->display_options['default'])
->save();
// Create a display for the teaser view mode.
entity_create('view_mode', array('id' => 'entity_test.teaser', 'targetEntityType' => 'entity_test'))->save();
- entity_get_display($instance['entity_type'], $instance['bundle'], 'teaser')
+ entity_get_display($field['entity_type'], $field['bundle'], 'teaser')
->setComponent($this->field_name, $this->display_options['teaser'])
->save();
@@ -242,8 +242,7 @@ function testFieldItemView() {
$this->assertText($setting . '|' . $value['value'] . '|' . ($value['value'] + 1), format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
}
- // View mode: check that display settings specified in the instance are
- // used.
+ // View mode: check that display settings specified in the field are used.
$setting = $this->display_options['teaser']['settings']['test_formatter_setting'];
foreach ($this->values as $delta => $value) {
$item = $this->entity->{$this->field_name}[$delta];
diff --git a/core/modules/field/src/Tests/Email/EmailFieldTest.php b/core/modules/field/src/Tests/Email/EmailFieldTest.php
index 738c2d7..4b67c79 100644
--- a/core/modules/field/src/Tests/Email/EmailFieldTest.php
+++ b/core/modules/field/src/Tests/Email/EmailFieldTest.php
@@ -31,11 +31,11 @@ class EmailFieldTest extends WebTestBase {
protected $fieldStorage;
/**
- * The instance used in this test class.
+ * The field used in this test class.
*
- * @var \Drupal\field\Entity\FieldInstanceConfig
+ * @var \Drupal\field\Entity\FieldConfig
*/
- protected $instance;
+ protected $field;
protected function setUp() {
parent::setUp();
@@ -60,11 +60,11 @@ function testEmailField() {
'type' => 'email',
));
$this->fieldStorage->save();
- $this->instance = entity_create('field_instance_config', array(
+ $this->field = entity_create('field_config', array(
'field_storage' => $this->fieldStorage,
'bundle' => 'entity_test',
));
- $this->instance->save();
+ $this->field->save();
// Create a form display for the default form mode.
entity_get_form_display('entity_test', 'entity_test', 'default')
diff --git a/core/modules/field/src/Tests/Email/EmailItemTest.php b/core/modules/field/src/Tests/Email/EmailItemTest.php
index 1ec0a08..6389b7d 100644
--- a/core/modules/field/src/Tests/Email/EmailItemTest.php
+++ b/core/modules/field/src/Tests/Email/EmailItemTest.php
@@ -21,13 +21,13 @@ class EmailItemTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create an email field and instance for validation.
+ // Create an email field storage and field for validation.
entity_create('field_storage_config', array(
'name' => 'field_email',
'entity_type' => 'entity_test',
'type' => 'email',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => 'entity_test',
'field_name' => 'field_email',
'bundle' => 'entity_test',
diff --git a/core/modules/field/src/Tests/FieldAccessTest.php b/core/modules/field/src/Tests/FieldAccessTest.php
index 2a38031..2c36cab 100644
--- a/core/modules/field/src/Tests/FieldAccessTest.php
+++ b/core/modules/field/src/Tests/FieldAccessTest.php
@@ -51,12 +51,12 @@ protected function setUp() {
'type' => 'text',
);
entity_create('field_storage_config', $field_storage)->save();
- $instance = array(
+ $field = array(
'field_name' => $field_storage['name'],
'entity_type' => 'node',
'bundle' => $content_type,
);
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
// Assign display properties for the 'default' and 'teaser' view modes.
foreach (array('default', 'teaser') as $view_mode) {
diff --git a/core/modules/field/src/Tests/FieldAttachOtherTest.php b/core/modules/field/src/Tests/FieldAttachOtherTest.php
index ec5dd88..01e8a0c 100644
--- a/core/modules/field/src/Tests/FieldAttachOtherTest.php
+++ b/core/modules/field/src/Tests/FieldAttachOtherTest.php
@@ -21,14 +21,14 @@ class FieldAttachOtherTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
$this->installEntitySchema('entity_test_rev');
- $this->createFieldWithInstance();
+ $this->createFieldWithStorage();
}
/**
* Test rendering fields with EntityDisplay build().
*/
function testEntityDisplayBuild() {
- $this->createFieldWithInstance('_2');
+ $this->createFieldWithStorage('_2');
$entity_type = 'entity_test';
$entity_init = entity_create($entity_type);
@@ -66,11 +66,11 @@ function testEntityDisplayBuild() {
// View all fields.
$content = $display->build($entity);
$this->render($content);
- $this->assertRaw($this->fieldTestData->instance->getLabel(), "First field's label is displayed.");
+ $this->assertRaw($this->fieldTestData->field->getLabel(), "First field's label is displayed.");
foreach ($values as $delta => $value) {
$this->assertRaw("$formatter_setting|{$value['value']}", "Value $delta is displayed, formatter settings are applied.");
}
- $this->assertRaw($this->fieldTestData->instance_2->getLabel(), "Second field's label is displayed.");
+ $this->assertRaw($this->fieldTestData->field_2->getLabel(), "Second field's label is displayed.");
foreach ($values_2 as $delta => $value) {
$this->assertRaw("$formatter_setting_2|{$value['value']}", "Value $delta is displayed, formatter settings are applied.");
}
@@ -81,14 +81,14 @@ function testEntityDisplayBuild() {
$display->setComponent($this->fieldTestData->field_name, $display_options);
$content = $display->build($entity);
$this->render($content);
- $this->assertNoRaw($this->fieldTestData->instance->getLabel(), "Hidden label: label is not displayed.");
+ $this->assertNoRaw($this->fieldTestData->field->getLabel(), "Hidden label: label is not displayed.");
// Field hidden.
$entity = clone($entity_init);
$display->removeComponent($this->fieldTestData->field_name);
$content = $display->build($entity);
$this->render($content);
- $this->assertNoRaw($this->fieldTestData->instance->getLabel(), "Hidden field: label is not displayed.");
+ $this->assertNoRaw($this->fieldTestData->field->getLabel(), "Hidden field: label is not displayed.");
foreach ($values as $delta => $value) {
$this->assertNoRaw("$formatter_setting|{$value['value']}", "Hidden field: value $delta is not displayed.");
}
@@ -164,7 +164,7 @@ function testEntityDisplayViewMultiple() {
*/
function testEntityCache() {
// Initialize random values and a test entity.
- $entity_init = entity_create('entity_test', array('type' => $this->fieldTestData->instance->bundle));
+ $entity_init = entity_create('entity_test', array('type' => $this->fieldTestData->field->bundle));
$values = $this->_generateTestFieldValues($this->fieldTestData->field_storage->getCardinality());
// Non-cacheable entity type.
@@ -183,7 +183,7 @@ function testEntityCache() {
// Cacheable entity type.
$entity_type = 'entity_test_rev';
- $this->createFieldWithInstance('_2', $entity_type);
+ $this->createFieldWithStorage('_2', $entity_type);
$entity_init = entity_create($entity_type, array(
'type' => $entity_type,
@@ -244,19 +244,19 @@ function testEntityCache() {
* widgets show up.
*/
function testEntityFormDisplayBuildForm() {
- $this->createFieldWithInstance('_2');
+ $this->createFieldWithStorage('_2');
$entity_type = 'entity_test';
- $entity = entity_create($entity_type, array('id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->instance->bundle));
+ $entity = entity_create($entity_type, array('id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->field->bundle));
// Test generating widgets for all fields.
- $display = entity_get_form_display($entity_type, $this->fieldTestData->instance->bundle, 'default');
+ $display = entity_get_form_display($entity_type, $this->fieldTestData->field->bundle, 'default');
$form = array();
$form_state = new FormState();
$display->buildForm($entity, $form, $form_state);
- $this->assertEqual($form[$this->fieldTestData->field_name]['widget']['#title'], $this->fieldTestData->instance->getLabel(), "First field's form title is {$this->fieldTestData->instance->getLabel()}");
- $this->assertEqual($form[$this->fieldTestData->field_name_2]['widget']['#title'], $this->fieldTestData->instance_2->getLabel(), "Second field's form title is {$this->fieldTestData->instance_2->getLabel()}");
+ $this->assertEqual($form[$this->fieldTestData->field_name]['widget']['#title'], $this->fieldTestData->field->getLabel(), "First field's form title is {$this->fieldTestData->field->getLabel()}");
+ $this->assertEqual($form[$this->fieldTestData->field_name_2]['widget']['#title'], $this->fieldTestData->field_2->getLabel(), "Second field's form title is {$this->fieldTestData->field_2->getLabel()}");
for ($delta = 0; $delta < $this->fieldTestData->field_storage->getCardinality(); $delta++) {
// field_test_widget uses 'textfield'
$this->assertEqual($form[$this->fieldTestData->field_name]['widget'][$delta]['value']['#type'], 'textfield', "First field's form delta $delta widget is textfield");
@@ -267,7 +267,7 @@ function testEntityFormDisplayBuildForm() {
}
// Test generating widgets for all fields.
- $display = entity_get_form_display($entity_type, $this->fieldTestData->instance->bundle, 'default');
+ $display = entity_get_form_display($entity_type, $this->fieldTestData->field->bundle, 'default');
foreach ($display->getComponents() as $name => $options) {
if ($name != $this->fieldTestData->field_name_2) {
$display->removeComponent($name);
@@ -278,7 +278,7 @@ function testEntityFormDisplayBuildForm() {
$display->buildForm($entity, $form, $form_state);
$this->assertFalse(isset($form[$this->fieldTestData->field_name]), 'The first field does not exist in the form');
- $this->assertEqual($form[$this->fieldTestData->field_name_2]['widget']['#title'], $this->fieldTestData->instance_2->getLabel(), "Second field's form title is {$this->fieldTestData->instance_2->getLabel()}");
+ $this->assertEqual($form[$this->fieldTestData->field_name_2]['widget']['#title'], $this->fieldTestData->field_2->getLabel(), "Second field's form title is {$this->fieldTestData->field_2->getLabel()}");
for ($delta = 0; $delta < $this->fieldTestData->field_storage_2->getCardinality(); $delta++) {
// field_test_widget uses 'textfield'
$this->assertEqual($form[$this->fieldTestData->field_name_2]['widget'][$delta]['value']['#type'], 'textfield', "Second field's form delta $delta widget is textfield");
@@ -289,13 +289,13 @@ function testEntityFormDisplayBuildForm() {
* Tests \Drupal\Core\Entity\Display\EntityFormDisplayInterface::extractFormValues().
*/
function testEntityFormDisplayExtractFormValues() {
- $this->createFieldWithInstance('_2');
+ $this->createFieldWithStorage('_2');
$entity_type = 'entity_test';
- $entity_init = entity_create($entity_type, array('id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->instance->bundle));
+ $entity_init = entity_create($entity_type, array('id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->field->bundle));
// Build the form for all fields.
- $display = entity_get_form_display($entity_type, $this->fieldTestData->instance->bundle, 'default');
+ $display = entity_get_form_display($entity_type, $this->fieldTestData->field->bundle, 'default');
$form = array();
$form_state = new FormState();
$display->buildForm($entity_init, $form, $form_state);
diff --git a/core/modules/field/src/Tests/FieldAttachStorageTest.php b/core/modules/field/src/Tests/FieldAttachStorageTest.php
index 42c607b..dbcdfaa 100644
--- a/core/modules/field/src/Tests/FieldAttachStorageTest.php
+++ b/core/modules/field/src/Tests/FieldAttachStorageTest.php
@@ -6,7 +6,7 @@
*/
namespace Drupal\field\Tests;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
/**
* Tests storage-related Field Attach API functions.
@@ -29,7 +29,7 @@ protected function setUp() {
*/
function testFieldAttachSaveLoad() {
$entity_type = 'entity_test_rev';
- $this->createFieldWithInstance('', $entity_type);
+ $this->createFieldWithStorage('', $entity_type);
$cardinality = $this->fieldTestData->field_storage->getCardinality();
// TODO : test empty values filtering and "compression" (store consecutive deltas).
@@ -102,7 +102,7 @@ function testFieldAttachLoadMultiple() {
$field_storage->save();
$field_ids[$i] = $field_storage->uuid();
foreach ($field_bundles_map[$i] as $bundle) {
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_name' => $field_names[$i],
'entity_type' => $entity_type,
'bundle' => $bundles[$bundle],
@@ -145,7 +145,7 @@ function testFieldAttachLoadMultiple() {
*/
function testFieldAttachSaveEmptyData() {
$entity_type = 'entity_test';
- $this->createFieldWithInstance('', $entity_type);
+ $this->createFieldWithStorage('', $entity_type);
$entity_init = entity_create($entity_type, array('id' => 1));
@@ -191,15 +191,15 @@ function testFieldAttachSaveEmptyData() {
*/
function testFieldAttachSaveEmptyDataDefaultValue() {
$entity_type = 'entity_test_rev';
- $this->createFieldWithInstance('', $entity_type);
+ $this->createFieldWithStorage('', $entity_type);
// Add a default value function.
- $this->fieldTestData->instance->default_value_function = 'field_test_default_value';
- $this->fieldTestData->instance->save();
+ $this->fieldTestData->field->default_value_function = 'field_test_default_value';
+ $this->fieldTestData->field->save();
// Verify that fields are populated with default values.
$entity_init = entity_create($entity_type, array('id' => 1, 'revision_id' => 1));
- $default = field_test_default_value($entity_init, $this->fieldTestData->instance);
+ $default = field_test_default_value($entity_init, $this->fieldTestData->field);
$this->assertEqual($entity_init->{$this->fieldTestData->field_name}->getValue(), $default, 'Default field value correctly populated.');
// Insert: Field is NULL.
@@ -220,9 +220,9 @@ function testFieldAttachSaveEmptyDataDefaultValue() {
*/
function testFieldAttachDelete() {
$entity_type = 'entity_test_rev';
- $this->createFieldWithInstance('', $entity_type);
+ $this->createFieldWithStorage('', $entity_type);
$cardinality = $this->fieldTestData->field_storage->getCardinality();
- $entity = entity_create($entity_type, array('type' => $this->fieldTestData->instance->bundle));
+ $entity = entity_create($entity_type, array('type' => $this->fieldTestData->field->bundle));
$vids = array();
// Create revision 0
@@ -278,19 +278,19 @@ function testFieldAttachDelete() {
*/
function testEntityCreateRenameBundle() {
$entity_type = 'entity_test_rev';
- $this->createFieldWithInstance('', $entity_type);
+ $this->createFieldWithStorage('', $entity_type);
$cardinality = $this->fieldTestData->field_storage->getCardinality();
// Create a new bundle.
$new_bundle = 'test_bundle_' . drupal_strtolower($this->randomMachineName());
entity_test_create_bundle($new_bundle, NULL, $entity_type);
- // Add an instance to that bundle.
- $this->fieldTestData->instance_definition['bundle'] = $new_bundle;
- entity_create('field_instance_config', $this->fieldTestData->instance_definition)->save();
+ // Add a field to that bundle.
+ $this->fieldTestData->field_definition['bundle'] = $new_bundle;
+ entity_create('field_config', $this->fieldTestData->field_definition)->save();
// Save an entity with data in the field.
- $entity = entity_create($entity_type, array('type' => $this->fieldTestData->instance->bundle));
+ $entity = entity_create($entity_type, array('type' => $this->fieldTestData->field->bundle));
$values = $this->_generateTestFieldValues($cardinality);
$entity->{$this->fieldTestData->field_name} = $values;
@@ -300,11 +300,11 @@ function testEntityCreateRenameBundle() {
// Rename the bundle.
$new_bundle = 'test_bundle_' . drupal_strtolower($this->randomMachineName());
- entity_test_rename_bundle($this->fieldTestData->instance_definition['bundle'], $new_bundle, $entity_type);
+ entity_test_rename_bundle($this->fieldTestData->field_definition['bundle'], $new_bundle, $entity_type);
- // Check that the instance definition has been updated.
- $this->fieldTestData->instance = FieldInstanceConfig::loadByName($entity_type, $new_bundle, $this->fieldTestData->field_name);
- $this->assertIdentical($this->fieldTestData->instance->bundle, $new_bundle, "Bundle name has been updated in the instance.");
+ // Check that the field definition has been updated.
+ $this->fieldTestData->field = FieldConfig::loadByName($entity_type, $new_bundle, $this->fieldTestData->field_name);
+ $this->assertIdentical($this->fieldTestData->field->bundle, $new_bundle, "Bundle name has been updated in the field.");
// Verify the field data is present on load.
$controller = $this->container->get('entity.manager')->getStorage($entity->getEntityTypeId());
@@ -318,15 +318,15 @@ function testEntityCreateRenameBundle() {
*/
function testEntityDeleteBundle() {
$entity_type = 'entity_test_rev';
- $this->createFieldWithInstance('', $entity_type);
+ $this->createFieldWithStorage('', $entity_type);
// Create a new bundle.
$new_bundle = 'test_bundle_' . drupal_strtolower($this->randomMachineName());
entity_test_create_bundle($new_bundle, NULL, $entity_type);
- // Add an instance to that bundle.
- $this->fieldTestData->instance_definition['bundle'] = $new_bundle;
- entity_create('field_instance_config', $this->fieldTestData->instance_definition)->save();
+ // Add a field to that bundle.
+ $this->fieldTestData->field_definition['bundle'] = $new_bundle;
+ entity_create('field_config', $this->fieldTestData->field_definition)->save();
// Create a second field for the test bundle
$field_name = drupal_strtolower($this->randomMachineName() . '_field_name');
@@ -337,18 +337,18 @@ function testEntityDeleteBundle() {
'cardinality' => 1,
);
entity_create('field_storage_config', $field_storage)->save();
- $instance = array(
+ $field = array(
'field_name' => $field_name,
'entity_type' => $entity_type,
- 'bundle' => $this->fieldTestData->instance->bundle,
+ 'bundle' => $this->fieldTestData->field->bundle,
'label' => $this->randomMachineName() . '_label',
'description' => $this->randomMachineName() . '_description',
'weight' => mt_rand(0, 127),
);
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
// Save an entity with data for both fields
- $entity = entity_create($entity_type, array('type' => $this->fieldTestData->instance->bundle));
+ $entity = entity_create($entity_type, array('type' => $this->fieldTestData->field->bundle));
$values = $this->_generateTestFieldValues($this->fieldTestData->field_storage->getCardinality());
$entity->{$this->fieldTestData->field_name} = $values;
$entity->{$field_name} = $this->_generateTestFieldValues(1);
@@ -359,7 +359,7 @@ function testEntityDeleteBundle() {
$this->assertEqual(count($entity->{$field_name}), 1, 'Second field got loaded');
// Delete the bundle.
- entity_test_delete_bundle($this->fieldTestData->instance->bundle, $entity_type);
+ entity_test_delete_bundle($this->fieldTestData->field->bundle, $entity_type);
// Verify no data gets loaded
$controller = $this->container->get('entity.manager')->getStorage($entity->getEntityTypeId());
@@ -369,9 +369,9 @@ function testEntityDeleteBundle() {
$this->assertTrue(empty($entity->{$this->fieldTestData->field_name}), 'No data for first field');
$this->assertTrue(empty($entity->{$field_name}), 'No data for second field');
- // Verify that the instances are gone.
- $this->assertFalse(entity_load('field_instance_config', 'entity_test.' . $this->fieldTestData->instance->bundle . '.' . $this->fieldTestData->field_name), "First field is deleted");
- $this->assertFalse(entity_load('field_instance_config', 'entity_test.' . $instance['bundle']. '.' . $field_name), "Second field is deleted");
+ // Verify that the fields are gone.
+ $this->assertFalse(entity_load('field_config', 'entity_test.' . $this->fieldTestData->field->bundle . '.' . $this->fieldTestData->field_name), "First field is deleted");
+ $this->assertFalse(entity_load('field_config', 'entity_test.' . $field['bundle']. '.' . $field_name), "Second field is deleted");
}
}
diff --git a/core/modules/field/src/Tests/FieldCrudTest.php b/core/modules/field/src/Tests/FieldCrudTest.php
new file mode 100644
index 0000000..9e682ff
--- /dev/null
+++ b/core/modules/field/src/Tests/FieldCrudTest.php
@@ -0,0 +1,221 @@
+fieldStorageDefinition = array(
+ 'name' => drupal_strtolower($this->randomMachineName()),
+ 'entity_type' => 'entity_test',
+ 'type' => 'test_field',
+ );
+ $this->fieldStorage = entity_create('field_storage_config', $this->fieldStorageDefinition);
+ $this->fieldStorage->save();
+ $this->fieldDefinition = array(
+ 'field_name' => $this->fieldStorage->getName(),
+ 'entity_type' => 'entity_test',
+ 'bundle' => 'entity_test',
+ );
+ }
+
+ // TODO : test creation with
+ // - a full fledged $field structure, check that all the values are there
+ // - a minimal $field structure, check all default values are set
+ // defer actual $field comparison to a helper function, used for the two cases above,
+ // and for testUpdateField
+
+ /**
+ * Test the creation of a field.
+ */
+ function testCreateField() {
+ $field = entity_create('field_config', $this->fieldDefinition);
+ $field->save();
+
+ // Read the configuration. Check against raw configuration data rather than
+ // the loaded ConfigEntity, to be sure we check that the defaults are
+ // applied on write.
+ $config = \Drupal::config('field.field.' . $field->id())->get();
+ $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
+
+ // Check that default values are set.
+ $this->assertEqual($config['required'], FALSE, 'Required defaults to false.');
+ $this->assertIdentical($config['label'], $this->fieldDefinition['field_name'], 'Label defaults to field name.');
+ $this->assertIdentical($config['description'], '', 'Description defaults to empty string.');
+
+ // Check that default settings are set.
+ $this->assertEqual($config['settings'], $field_type_manager->getDefaultFieldSettings($this->fieldStorageDefinition['type']) , 'Default field settings have been written.');
+
+ // Check that the denormalized 'field_type' was properly written.
+ $this->assertEqual($config['field_type'], $this->fieldStorageDefinition['type']);
+
+ // Guarantee that the field/bundle combination is unique.
+ try {
+ entity_create('field_config', $this->fieldDefinition)->save();
+ $this->fail(t('Cannot create two fields with the same field / bundle combination.'));
+ }
+ catch (EntityStorageException $e) {
+ $this->pass(t('Cannot create two fields with the same field / bundle combination.'));
+ }
+
+ // Check that the specified field exists.
+ try {
+ $this->fieldDefinition['field_name'] = $this->randomMachineName();
+ entity_create('field_config', $this->fieldDefinition)->save();
+ $this->fail(t('Cannot create a field with a non-existing storage.'));
+ }
+ catch (FieldException $e) {
+ $this->pass(t('Cannot create a field with a non-existing storage.'));
+ }
+
+ // TODO: test other failures.
+ }
+
+ /**
+ * Test reading back a field definition.
+ */
+ function testReadField() {
+ entity_create('field_config', $this->fieldDefinition)->save();
+
+ // Read the field back.
+ $field = entity_load('field_config', 'entity_test.' . $this->fieldDefinition['bundle'] . '.' . $this->fieldDefinition['field_name']);
+ $this->assertTrue($this->fieldDefinition['field_name'] == $field->getName(), 'The field was properly read.');
+ $this->assertTrue($this->fieldDefinition['entity_type'] == $field->entity_type, 'The field was properly read.');
+ $this->assertTrue($this->fieldDefinition['bundle'] == $field->bundle, 'The field was properly read.');
+ }
+
+ /**
+ * Test the update of a field.
+ */
+ function testUpdateField() {
+ entity_create('field_config', $this->fieldDefinition)->save();
+
+ // Check that basic changes are saved.
+ $field = entity_load('field_config', 'entity_test.' . $this->fieldDefinition['bundle'] . '.' . $this->fieldDefinition['field_name']);
+ $field->required = !$field->isRequired();
+ $field->label = $this->randomMachineName();
+ $field->description = $this->randomMachineName();
+ $field->settings['test_field_setting'] = $this->randomMachineName();
+ $field->save();
+
+ $field_new = entity_load('field_config', 'entity_test.' . $this->fieldDefinition['bundle'] . '.' . $this->fieldDefinition['field_name']);
+ $this->assertEqual($field->isRequired(), $field_new->isRequired(), '"required" change is saved');
+ $this->assertEqual($field->getLabel(), $field_new->getLabel(), '"label" change is saved');
+ $this->assertEqual($field->getDescription(), $field_new->getDescription(), '"description" change is saved');
+
+ // TODO: test failures.
+ }
+
+ /**
+ * Test the deletion of a field.
+ */
+ function testDeleteField() {
+ // TODO: Test deletion of the data stored in the field also.
+ // Need to check that data for a 'deleted' field / storage doesn't get loaded
+ // Need to check data marked deleted is cleaned on cron (not implemented yet...)
+
+ // Create two fields for the same field storage so we can test that only one
+ // is deleted.
+ entity_create('field_config', $this->fieldDefinition)->save();
+ $another_field_definition = $this->fieldDefinition;
+ $another_field_definition['bundle'] .= '_another_bundle';
+ entity_test_create_bundle($another_field_definition['bundle']);
+ entity_create('field_config', $another_field_definition)->save();
+
+ // Test that the first field is not deleted, and then delete it.
+ $field = current(entity_load_multiple_by_properties('field_config', array('entity_type' => 'entity_test', 'field_name' => $this->fieldDefinition['field_name'], 'bundle' => $this->fieldDefinition['bundle'], 'include_deleted' => TRUE)));
+ $this->assertTrue(!empty($field) && empty($field->deleted), 'A new field is not marked for deletion.');
+ $field->delete();
+
+ // Make sure the field is marked as deleted when it is specifically loaded.
+ $field = current(entity_load_multiple_by_properties('field_config', array('entity_type' => 'entity_test', 'field_name' => $this->fieldDefinition['field_name'], 'bundle' => $this->fieldDefinition['bundle'], 'include_deleted' => TRUE)));
+ $this->assertTrue(!empty($field->deleted), 'A deleted field is marked for deletion.');
+
+ // Try to load the field normally and make sure it does not show up.
+ $field = entity_load('field_config', 'entity_test.' . '.' . $this->fieldDefinition['bundle'] . '.' . $this->fieldDefinition['field_name']);
+ $this->assertTrue(empty($field), 'A deleted field is not loaded by default.');
+
+ // Make sure the other field is not deleted.
+ $another_field = entity_load('field_config', 'entity_test.' . $another_field_definition['bundle'] . '.' . $another_field_definition['field_name']);
+ $this->assertTrue(!empty($another_field) && empty($another_field->deleted), 'A non-deleted field is not marked for deletion.');
+ }
+
+ /**
+ * Tests the cross deletion behavior between field storages and fields.
+ */
+ function testDeleteFieldCrossDeletion() {
+ $field_definition_2 = $this->fieldDefinition;
+ $field_definition_2['bundle'] .= '_another_bundle';
+ entity_test_create_bundle($field_definition_2['bundle']);
+
+ // Check that deletion of a field storage deletes its fields.
+ $field_storage = $this->fieldStorage;
+ entity_create('field_config', $this->fieldDefinition)->save();
+ entity_create('field_config', $field_definition_2)->save();
+ $field_storage->delete();
+ $this->assertFalse(FieldConfig::loadByName('entity_test', $this->fieldDefinition['bundle'], $field_storage->name));
+ $this->assertFalse(FieldConfig::loadByName('entity_test', $field_definition_2['bundle'], $field_storage->name));
+
+ // Chack that deletion of the last field deletes the storage.
+ $field_storage = entity_create('field_storage_config', $this->fieldStorageDefinition);
+ $field_storage->save();
+ $field = entity_create('field_config', $this->fieldDefinition);
+ $field->save();
+ $field_2 = entity_create('field_config', $field_definition_2);
+ $field_2->save();
+ $field->delete();
+ $this->assertTrue(FieldStorageConfig::loadByName('entity_test', $field_storage->name));
+ $field_2->delete();
+ $this->assertFalse(FieldStorageConfig::loadByName('entity_test', $field_storage->name));
+
+ // Check that deletion of all fields using a storage simultaneously deletes
+ // the storage.
+ $field_storage = entity_create('field_storage_config', $this->fieldStorageDefinition);
+ $field_storage->save();
+ $field = entity_create('field_config', $this->fieldDefinition);
+ $field->save();
+ $field_2 = entity_create('field_config', $field_definition_2);
+ $field_2->save();
+ $this->container->get('entity.manager')->getStorage('field_config')->delete(array($field, $field_2));
+ $this->assertFalse(FieldStorageConfig::loadByName('entity_test', $field_storage->name));
+ }
+
+}
diff --git a/core/modules/field/src/Tests/FieldDataCountTest.php b/core/modules/field/src/Tests/FieldDataCountTest.php
index 1a57fc9..90e0400 100644
--- a/core/modules/field/src/Tests/FieldDataCountTest.php
+++ b/core/modules/field/src/Tests/FieldDataCountTest.php
@@ -46,7 +46,7 @@ public function testEntityCountAndHasData() {
'cardinality' => 2,
));
$field_storage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
))->save();
diff --git a/core/modules/field/src/Tests/FieldImportChangeTest.php b/core/modules/field/src/Tests/FieldImportChangeTest.php
index fce8d0e..6188846 100644
--- a/core/modules/field/src/Tests/FieldImportChangeTest.php
+++ b/core/modules/field/src/Tests/FieldImportChangeTest.php
@@ -8,7 +8,7 @@
namespace Drupal\field\Tests;
/**
- * Update field and instances during config change method invocation.
+ * Update field storage and fields during config change method invocation.
*
* @group field
*/
@@ -22,12 +22,12 @@ class FieldImportChangeTest extends FieldUnitTestBase {
public static $modules = array('field_test_config');
/**
- * Tests importing an updated field instance.
+ * Tests importing an updated field.
*/
function testImportChange() {
- $field_id = 'field_test_import';
- $instance_id = "entity_test.entity_test.$field_id";
- $instance_config_name = "field.instance.$instance_id";
+ $field_storage_id = 'field_test_import';
+ $field_id = "entity_test.entity_test.$field_storage_id";
+ $field_config_name = "field.field.$field_id";
// Import default config.
$this->installConfig(array('field_test_config'));
@@ -36,17 +36,17 @@ function testImportChange() {
$this->copyConfig($active, $staging);
// Save as files in the the staging directory.
- $instance = $active->read($instance_config_name);
+ $field = $active->read($field_config_name);
$new_label = 'Test update import field';
- $instance['label'] = $new_label;
- $staging->write($instance_config_name, $instance);
+ $field['label'] = $new_label;
+ $staging->write($field_config_name, $field);
// Import the content of the staging directory.
$this->configImporter()->import();
// Check that the updated config was correctly imported.
- $instance = entity_load('field_instance_config', $instance_id);
- $this->assertEqual($instance->getLabel(), $new_label, 'Instance label updated');
+ $field = entity_load('field_config', $field_id);
+ $this->assertEqual($field->getLabel(), $new_label, 'field label updated');
}
}
diff --git a/core/modules/field/src/Tests/FieldImportCreateTest.php b/core/modules/field/src/Tests/FieldImportCreateTest.php
index 4c56087..c07d8bf 100644
--- a/core/modules/field/src/Tests/FieldImportCreateTest.php
+++ b/core/modules/field/src/Tests/FieldImportCreateTest.php
@@ -8,59 +8,59 @@
namespace Drupal\field\Tests;
/**
- * Create field and instances during config create method invocation.
+ * Create field storages and fields during config create method invocation.
*
* @group field
*/
class FieldImportCreateTest extends FieldUnitTestBase {
/**
- * Tests creating fields and instances during default config import.
+ * Tests creating field storages and fields during default config import.
*/
function testImportCreateDefault() {
$field_name = 'field_test_import';
- $field_id = "entity_test.$field_name";
- $instance_id = "entity_test.entity_test.$field_name";
+ $field_storage_id = "entity_test.$field_name";
+ $field_id = "entity_test.entity_test.$field_name";
$field_name_2 = 'field_test_import_2';
- $field_id_2 = "entity_test.$field_name_2";
- $instance_id_2a = "entity_test.entity_test.$field_name_2";
- $instance_id_2b = "entity_test.test_bundle.$field_name_2";
+ $field_storage_id_2 = "entity_test.$field_name_2";
+ $field_id_2a = "entity_test.entity_test.$field_name_2";
+ $field_id_2b = "entity_test.test_bundle.$field_name_2";
- // Check that the fields and instances do not exist yet.
- $this->assertFalse(entity_load('field_storage_config', $field_id));
- $this->assertFalse(entity_load('field_instance_config', $instance_id));
- $this->assertFalse(entity_load('field_storage_config', $field_id_2));
- $this->assertFalse(entity_load('field_instance_config', $instance_id_2a));
- $this->assertFalse(entity_load('field_instance_config', $instance_id_2b));
+ // Check that the field storages and fields do not exist yet.
+ $this->assertFalse(entity_load('field_storage_config', $field_storage_id));
+ $this->assertFalse(entity_load('field_config', $field_id));
+ $this->assertFalse(entity_load('field_storage_config', $field_storage_id_2));
+ $this->assertFalse(entity_load('field_config', $field_id_2a));
+ $this->assertFalse(entity_load('field_config', $field_id_2b));
// Create a second bundle for the 'Entity test' entity type.
entity_test_create_bundle('test_bundle');
- // Enable field_test_config module and check that the field and instance
+ // Enable field_test_config module and check that the field and storage
// shipped in the module's default config were created.
\Drupal::moduleHandler()->install(array('field_test_config'));
- // A field with one instance.
- $field_storage = entity_load('field_storage_config', $field_id);
+ // A field storage with one single field.
+ $field_storage = entity_load('field_storage_config', $field_storage_id);
$this->assertTrue($field_storage, 'The field was created.');
- $instance = entity_load('field_instance_config', $instance_id);
- $this->assertTrue($instance, 'The field instance was deleted.');
+ $field = entity_load('field_config', $field_id);
+ $this->assertTrue($field, 'The field was deleted.');
- // A field with multiple instances.
- $field_storage_2 = entity_load('field_storage_config', $field_id_2);
+ // A field storage with two fields.
+ $field_storage_2 = entity_load('field_storage_config', $field_storage_id_2);
$this->assertTrue($field_storage_2, 'The second field was created.');
- $this->assertTrue($instance->bundle, 'test_bundle', 'The second field instance was created on bundle test_bundle.');
- $this->assertTrue($instance->bundle, 'test_bundle_2', 'The second field instance was created on bundle test_bundle_2.');
+ $this->assertTrue($field->bundle, 'test_bundle', 'The second field was created on bundle test_bundle.');
+ $this->assertTrue($field->bundle, 'test_bundle_2', 'The second field was created on bundle test_bundle_2.');
- // Tests field instances.
- $ids = \Drupal::entityQuery('field_instance_config')
+ // Tests fields.
+ $ids = \Drupal::entityQuery('field_config')
->condition('entity_type', 'entity_test')
->condition('bundle', 'entity_test')
->execute();
$this->assertEqual(count($ids), 2);
$this->assertTrue(isset($ids['entity_test.entity_test.field_test_import']));
$this->assertTrue(isset($ids['entity_test.entity_test.field_test_import_2']));
- $ids = \Drupal::entityQuery('field_instance_config')
+ $ids = \Drupal::entityQuery('field_config')
->condition('entity_type', 'entity_test')
->condition('bundle', 'test_bundle')
->execute();
@@ -69,24 +69,24 @@ function testImportCreateDefault() {
}
/**
- * Tests creating fields and instances during config import.
+ * Tests creating field storages and fields during config import.
*/
function testImportCreate() {
- // One field with one field instance.
+ // A field storage with one single field.
$field_name = 'field_test_import_staging';
- $field_id = "entity_test.$field_name";
- $instance_id = "entity_test.entity_test.$field_name";
- $field_storage_config_name = "field.storage.$field_id";
- $instance_config_name = "field.instance.$instance_id";
+ $field_storage_id = "entity_test.$field_name";
+ $field_id = "entity_test.entity_test.$field_name";
+ $field_storage_config_name = "field.storage.$field_storage_id";
+ $field_config_name = "field.field.$field_id";
- // One field with two field instances.
+ // A field storage with two fields.
$field_name_2 = 'field_test_import_staging_2';
- $field_id_2 = "entity_test.$field_name_2";
- $instance_id_2a = "entity_test.test_bundle.$field_name_2";
- $instance_id_2b = "entity_test.test_bundle_2.$field_name_2";
- $field_storage_config_name_2 = "field.storage.$field_id_2";
- $instance_config_name_2a = "field.instance.$instance_id_2a";
- $instance_config_name_2b = "field.instance.$instance_id_2b";
+ $field_storage_id_2 = "entity_test.$field_name_2";
+ $field_id_2a = "entity_test.test_bundle.$field_name_2";
+ $field_id_2b = "entity_test.test_bundle_2.$field_name_2";
+ $field_storage_config_name_2 = "field.storage.$field_storage_id_2";
+ $field_config_name_2a = "field.field.$field_id_2a";
+ $field_config_name_2b = "field.field.$field_id_2b";
$active = $this->container->get('config.storage');
$staging = $this->container->get('config.storage.staging');
@@ -96,25 +96,25 @@ function testImportCreate() {
$src_dir = drupal_get_path('module', 'field_test_config') . '/staging';
$target_dir = $this->configDirectories[CONFIG_STAGING_DIRECTORY];
$this->assertTrue(file_unmanaged_copy("$src_dir/$field_storage_config_name.yml", "$target_dir/$field_storage_config_name.yml"));
- $this->assertTrue(file_unmanaged_copy("$src_dir/$instance_config_name.yml", "$target_dir/$instance_config_name.yml"));
+ $this->assertTrue(file_unmanaged_copy("$src_dir/$field_config_name.yml", "$target_dir/$field_config_name.yml"));
$this->assertTrue(file_unmanaged_copy("$src_dir/$field_storage_config_name_2.yml", "$target_dir/$field_storage_config_name_2.yml"));
- $this->assertTrue(file_unmanaged_copy("$src_dir/$instance_config_name_2a.yml", "$target_dir/$instance_config_name_2a.yml"));
- $this->assertTrue(file_unmanaged_copy("$src_dir/$instance_config_name_2b.yml", "$target_dir/$instance_config_name_2b.yml"));
+ $this->assertTrue(file_unmanaged_copy("$src_dir/$field_config_name_2a.yml", "$target_dir/$field_config_name_2a.yml"));
+ $this->assertTrue(file_unmanaged_copy("$src_dir/$field_config_name_2b.yml", "$target_dir/$field_config_name_2b.yml"));
// Import the content of the staging directory.
$this->configImporter()->import();
- // Check that the field and instance were created.
- $field_storage = entity_load('field_storage_config', $field_id);
- $this->assertTrue($field_storage, 'Test import field from staging exists');
- $instance = entity_load('field_instance_config', $instance_id);
- $this->assertTrue($instance, 'Test import field instance from staging exists');
- $field_storage = entity_load('field_storage_config', $field_id_2);
- $this->assertTrue($field_storage, 'Test import field 2 from staging exists');
- $instance = entity_load('field_instance_config', $instance_id_2a);
- $this->assertTrue($instance, 'Test import field instance 2a from staging exists');
- $instance = entity_load('field_instance_config', $instance_id_2b);
- $this->assertTrue($instance, 'Test import field instance 2b from staging exists');
+ // Check that the field and storage were created.
+ $field_storage = entity_load('field_storage_config', $field_storage_id);
+ $this->assertTrue($field_storage, 'Test import storage field from staging exists');
+ $field = entity_load('field_config', $field_id);
+ $this->assertTrue($field, 'Test import field from staging exists');
+ $field_storage = entity_load('field_storage_config', $field_storage_id_2);
+ $this->assertTrue($field_storage, 'Test import storage field 2 from staging exists');
+ $field = entity_load('field_config', $field_id_2a);
+ $this->assertTrue($field, 'Test import field 2a from staging exists');
+ $field = entity_load('field_config', $field_id_2b);
+ $this->assertTrue($field, 'Test import field 2b from staging exists');
}
}
diff --git a/core/modules/field/src/Tests/FieldImportDeleteTest.php b/core/modules/field/src/Tests/FieldImportDeleteTest.php
index 4b077d3..5019e49 100644
--- a/core/modules/field/src/Tests/FieldImportDeleteTest.php
+++ b/core/modules/field/src/Tests/FieldImportDeleteTest.php
@@ -10,7 +10,7 @@
use Drupal\Component\Utility\String;
/**
- * Delete field and instances during config delete method invocation.
+ * Delete field storages and fields during config delete method invocation.
*
* @group field
*/
@@ -24,29 +24,29 @@ class FieldImportDeleteTest extends FieldUnitTestBase {
public static $modules = array('field_test_config');
/**
- * Tests deleting fields and instances as part of config import.
+ * Tests deleting field storages and fields as part of config import.
*/
public function testImportDelete() {
// At this point there are 5 field configuration objects in the active
// storage.
// - field.storage.entity_test.field_test_import
// - field.storage.entity_test.field_test_import_2
- // - field.instance.entity_test.entity_test.field_test_import
- // - field.instance.entity_test.entity_test.field_test_import_2
- // - field.instance.entity_test.test_bundle.field_test_import_2
+ // - field.field.entity_test.entity_test.field_test_import
+ // - field.field.entity_test.entity_test.field_test_import_2
+ // - field.field.entity_test.test_bundle.field_test_import_2
$field_name = 'field_test_import';
$field_storage_id = "entity_test.$field_name";
$field_name_2 = 'field_test_import_2';
$field_storage_id_2 = "entity_test.$field_name_2";
- $instance_id = "entity_test.entity_test.$field_name";
- $instance_id_2a = "entity_test.entity_test.$field_name_2";
- $instance_id_2b = "entity_test.test_bundle.$field_name_2";
+ $field_id = "entity_test.entity_test.$field_name";
+ $field_id_2a = "entity_test.entity_test.$field_name_2";
+ $field_id_2b = "entity_test.test_bundle.$field_name_2";
$field_storage_config_name = "field.storage.$field_storage_id";
$field_storage_config_name_2 = "field.storage.$field_storage_id_2";
- $instance_config_name = "field.instance.$instance_id";
- $instance_config_name_2a = "field.instance.$instance_id_2a";
- $instance_config_name_2b = "field.instance.$instance_id_2b";
+ $field_config_name = "field.field.$field_id";
+ $field_config_name_2a = "field.field.$field_id_2a";
+ $field_config_name_2b = "field.field.$field_id_2b";
// Create a second bundle for the 'Entity test' entity type.
entity_test_create_bundle('test_bundle');
@@ -61,37 +61,37 @@ public function testImportDelete() {
$active = $this->container->get('config.storage');
$staging = $this->container->get('config.storage.staging');
$this->copyConfig($active, $staging);
- $this->assertTrue($staging->delete($field_storage_config_name), String::format('Deleted field: !field', array('!field' => $field_storage_config_name)));
- $this->assertTrue($staging->delete($field_storage_config_name_2), String::format('Deleted field: !field', array('!field' => $field_storage_config_name_2)));
- $this->assertTrue($staging->delete($instance_config_name), String::format('Deleted field instance: !field_instance', array('!field_instance' => $instance_config_name)));
- $this->assertTrue($staging->delete($instance_config_name_2a), String::format('Deleted field instance: !field_instance', array('!field_instance' => $instance_config_name_2a)));
- $this->assertTrue($staging->delete($instance_config_name_2b), String::format('Deleted field instance: !field_instance', array('!field_instance' => $instance_config_name_2b)));
+ $this->assertTrue($staging->delete($field_storage_config_name), String::format('Deleted field storage: !field_storage', array('!field_storage' => $field_storage_config_name)));
+ $this->assertTrue($staging->delete($field_storage_config_name_2), String::format('Deleted field storage: !field_storage', array('!field_storage' => $field_storage_config_name_2)));
+ $this->assertTrue($staging->delete($field_config_name), String::format('Deleted field: !field', array('!field' => $field_config_name)));
+ $this->assertTrue($staging->delete($field_config_name_2a), String::format('Deleted field: !field', array('!field' => $field_config_name_2a)));
+ $this->assertTrue($staging->delete($field_config_name_2b), String::format('Deleted field: !field', array('!field' => $field_config_name_2b)));
$deletes = $this->configImporter()->getUnprocessedConfiguration('delete');
- $this->assertEqual(count($deletes), 5, 'Importing configuration will delete 3 field instances and 2 fields.');
+ $this->assertEqual(count($deletes), 5, 'Importing configuration will delete 3 fields and 2 field storages.');
// Import the content of the staging directory.
$this->configImporter()->import();
- // Check that the fields and instances are gone.
+ // Check that the field storages and fields are gone.
$field_storage = entity_load('field_storage_config', $field_storage_id, TRUE);
- $this->assertFalse($field_storage, 'The field was deleted.');
+ $this->assertFalse($field_storage, 'The field storage was deleted.');
$field_storage_2 = entity_load('field_storage_config', $field_storage_id_2, TRUE);
- $this->assertFalse($field_storage_2, 'The second field was deleted.');
- $instance = entity_load('field_instance_config', $instance_id, TRUE);
- $this->assertFalse($instance, 'The field instance was deleted.');
- $instance_2a = entity_load('field_instance_config', $instance_id_2a, TRUE);
- $this->assertFalse($instance_2a, 'The second field instance on test bundle was deleted.');
- $instance_2b = entity_load('field_instance_config', $instance_id_2b, TRUE);
- $this->assertFalse($instance_2b, 'The second field instance on test bundle 2 was deleted.');
+ $this->assertFalse($field_storage_2, 'The second field storage was deleted.');
+ $field = entity_load('field_config', $field_id, TRUE);
+ $this->assertFalse($field, 'The field was deleted.');
+ $field_2a = entity_load('field_config', $field_id_2a, TRUE);
+ $this->assertFalse($field_2a, 'The second field on test bundle was deleted.');
+ $field_2b = entity_load('field_config', $field_id_2b, TRUE);
+ $this->assertFalse($field_2b, 'The second field on test bundle 2 was deleted.');
// Check that all config files are gone.
$active = $this->container->get('config.storage');
$this->assertIdentical($active->listAll($field_storage_config_name), array());
$this->assertIdentical($active->listAll($field_storage_config_name_2), array());
- $this->assertIdentical($active->listAll($instance_config_name), array());
- $this->assertIdentical($active->listAll($instance_config_name_2a), array());
- $this->assertIdentical($active->listAll($instance_config_name_2b), array());
+ $this->assertIdentical($active->listAll($field_config_name), array());
+ $this->assertIdentical($active->listAll($field_config_name_2a), array());
+ $this->assertIdentical($active->listAll($field_config_name_2b), array());
// Check that the storage definition is preserved in state.
$deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
diff --git a/core/modules/field/src/Tests/FieldImportDeleteUninstallTest.php b/core/modules/field/src/Tests/FieldImportDeleteUninstallTest.php
index a02c3d0..975a6cb 100644
--- a/core/modules/field/src/Tests/FieldImportDeleteUninstallTest.php
+++ b/core/modules/field/src/Tests/FieldImportDeleteUninstallTest.php
@@ -8,8 +8,8 @@
namespace Drupal\field\Tests;
/**
- * Delete field and instances during config synchronization and uninstall module
- * that provides the field type.
+ * Delete field storages and fields during config synchronization and uninstall
+ * module that provides the field type.
*
* @group field
* @see \Drupal\field\ConfigImporterFieldPurger
@@ -34,7 +34,7 @@ protected function setUp() {
}
/**
- * Tests deleting fields and instances as part of config import.
+ * Tests deleting field storages and fields as part of config import.
*/
public function testImportDeleteUninstall() {
// Create a field to delete to prove that
@@ -46,19 +46,19 @@ public function testImportDeleteUninstall() {
'type' => 'integer',
));
$unrelated_field_storage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $unrelated_field_storage,
'bundle' => 'entity_test',
))->save();
- // Create a telephone field and instance for validation.
+ // Create a telephone field for validation.
$field_storage = entity_create('field_storage_config', array(
'name' => 'field_test',
'entity_type' => 'entity_test',
'type' => 'telephone',
));
$field_storage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
))->save();
@@ -92,7 +92,7 @@ public function testImportDeleteUninstall() {
// Stage the field deletion
$staging->delete('field.storage.entity_test.field_test');
- $staging->delete('field.instance.entity_test.entity_test.field_test');
+ $staging->delete('field.field.entity_test.entity_test.field_test');
$steps = $this->configImporter()->initialize();
$this->assertIdentical($steps[0], array('\Drupal\field\ConfigImporterFieldPurger', 'process'), 'The additional process configuration synchronization step has been added.');
@@ -109,10 +109,11 @@ public function testImportDeleteUninstall() {
}
/**
- * Tests purging already deleted fields and instances during a config import.
+ * Tests purging already deleted field storages and fields during a config
+ * import.
*/
public function testImportAlreadyDeletedUninstall() {
- // Create a telephone field and instance for validation.
+ // Create a telephone field for validation.
$field_storage = entity_create('field_storage_config', array(
'name' => 'field_test',
'entity_type' => 'entity_test',
@@ -120,7 +121,7 @@ public function testImportAlreadyDeletedUninstall() {
));
$field_storage->save();
$field_storage_uuid = $field_storage->uuid();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
))->save();
diff --git a/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php b/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
index 67dc92d..61091ad 100644
--- a/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
+++ b/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
@@ -8,8 +8,8 @@
namespace Drupal\field\Tests;
/**
- * Delete field and instances during config synchronization and uninstall module
- * that provides the field type through the UI.
+ * Delete field storages and fields during config synchronization and uninstall
+ * module that provides the field type through the UI.
*
* @group field
* @see \Drupal\field\ConfigImporterFieldPurger
@@ -33,29 +33,29 @@ protected function setUp() {
}
/**
- * Tests deleting fields and instances as part of config import.
+ * Tests deleting field storages and fields as part of config import.
*/
public function testImportDeleteUninstall() {
- // Create a telephone field and instance.
+ // Create a telephone field.
$field_storage = entity_create('field_storage_config', array(
'name' => 'field_tel',
'entity_type' => 'entity_test',
'type' => 'telephone',
));
$field_storage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'entity_test',
))->save();
- // Create a text field and instance.
+ // Create a text field.
$text_field_storage = entity_create('field_storage_config', array(
'name' => 'field_text',
'entity_type' => 'entity_test',
'type' => 'text',
));
$text_field_storage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $text_field_storage,
'bundle' => 'entity_test',
))->save();
@@ -90,7 +90,7 @@ public function testImportDeleteUninstall() {
// Stage the field deletion
$staging->delete('field.storage.entity_test.field_tel');
- $staging->delete('field.instance.entity_test.entity_test.field_tel');
+ $staging->delete('field.field.entity_test.entity_test.field_tel');
$this->drupalGet('admin/config/development/configuration');
// Test that the message for one field being purged during a configuration
// synchronization is correct.
diff --git a/core/modules/field/src/Tests/FieldInstanceCrudTest.php b/core/modules/field/src/Tests/FieldInstanceCrudTest.php
deleted file mode 100644
index a59917a..0000000
--- a/core/modules/field/src/Tests/FieldInstanceCrudTest.php
+++ /dev/null
@@ -1,222 +0,0 @@
-fieldStorageDefinition = array(
- 'name' => drupal_strtolower($this->randomMachineName()),
- 'entity_type' => 'entity_test',
- 'type' => 'test_field',
- );
- $this->fieldStorage = entity_create('field_storage_config', $this->fieldStorageDefinition);
- $this->fieldStorage->save();
- $this->instanceDefinition = array(
- 'field_name' => $this->fieldStorage->getName(),
- 'entity_type' => 'entity_test',
- 'bundle' => 'entity_test',
- );
- }
-
- // TODO : test creation with
- // - a full fledged $instance structure, check that all the values are there
- // - a minimal $instance structure, check all default values are set
- // defer actual $instance comparison to a helper function, used for the two cases above,
- // and for testUpdateFieldInstance
-
- /**
- * Test the creation of a field instance.
- */
- function testCreateFieldInstance() {
- $instance = entity_create('field_instance_config', $this->instanceDefinition);
- $instance->save();
-
- // Read the configuration. Check against raw configuration data rather than
- // the loaded ConfigEntity, to be sure we check that the defaults are
- // applied on write.
- $config = \Drupal::config('field.instance.' . $instance->id())->get();
- $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
-
- // Check that default values are set.
- $this->assertEqual($config['required'], FALSE, 'Required defaults to false.');
- $this->assertIdentical($config['label'], $this->instanceDefinition['field_name'], 'Label defaults to field name.');
- $this->assertIdentical($config['description'], '', 'Description defaults to empty string.');
-
- // Check that default settings are set.
- $this->assertEqual($config['settings'], $field_type_manager->getDefaultInstanceSettings($this->fieldStorageDefinition['type']) , 'Default instance settings have been written.');
-
- // Check that the denormalized 'field_type' was properly written.
- $this->assertEqual($config['field_type'], $this->fieldStorageDefinition['type']);
-
- // Guarantee that the field/bundle combination is unique.
- try {
- entity_create('field_instance_config', $this->instanceDefinition)->save();
- $this->fail(t('Cannot create two instances with the same field / bundle combination.'));
- }
- catch (EntityStorageException $e) {
- $this->pass(t('Cannot create two instances with the same field / bundle combination.'));
- }
-
- // Check that the specified field exists.
- try {
- $this->instanceDefinition['field_name'] = $this->randomMachineName();
- entity_create('field_instance_config', $this->instanceDefinition)->save();
- $this->fail(t('Cannot create an instance of a non-existing field.'));
- }
- catch (FieldException $e) {
- $this->pass(t('Cannot create an instance of a non-existing field.'));
- }
-
- // TODO: test other failures.
- }
-
- /**
- * Test reading back an instance definition.
- */
- function testReadFieldInstance() {
- entity_create('field_instance_config', $this->instanceDefinition)->save();
-
- // Read the instance back.
- $instance = entity_load('field_instance_config', 'entity_test.' . $this->instanceDefinition['bundle'] . '.' . $this->instanceDefinition['field_name']);
- $this->assertTrue($this->instanceDefinition['field_name'] == $instance->getName(), 'The field was properly read.');
- $this->assertTrue($this->instanceDefinition['entity_type'] == $instance->entity_type, 'The field was properly read.');
- $this->assertTrue($this->instanceDefinition['bundle'] == $instance->bundle, 'The field was properly read.');
- }
-
- /**
- * Test the update of a field instance.
- */
- function testUpdateFieldInstance() {
- entity_create('field_instance_config', $this->instanceDefinition)->save();
-
- // Check that basic changes are saved.
- $instance = entity_load('field_instance_config', 'entity_test.' . $this->instanceDefinition['bundle'] . '.' . $this->instanceDefinition['field_name']);
- $instance->required = !$instance->isRequired();
- $instance->label = $this->randomMachineName();
- $instance->description = $this->randomMachineName();
- $instance->settings['test_instance_setting'] = $this->randomMachineName();
- $instance->save();
-
- $instance_new = entity_load('field_instance_config', 'entity_test.' . $this->instanceDefinition['bundle'] . '.' . $this->instanceDefinition['field_name']);
- $this->assertEqual($instance->isRequired(), $instance_new->isRequired(), '"required" change is saved');
- $this->assertEqual($instance->getLabel(), $instance_new->getLabel(), '"label" change is saved');
- $this->assertEqual($instance->getDescription(), $instance_new->getDescription(), '"description" change is saved');
-
- // TODO: test failures.
- }
-
- /**
- * Test the deletion of a field instance.
- */
- function testDeleteFieldInstance() {
- // TODO: Test deletion of the data stored in the field also.
- // Need to check that data for a 'deleted' field / instance doesn't get loaded
- // Need to check data marked deleted is cleaned on cron (not implemented yet...)
-
- // Create two instances for the same field so we can test that only one
- // is deleted.
- entity_create('field_instance_config', $this->instanceDefinition)->save();
- $another_instance_definition = $this->instanceDefinition;
- $another_instance_definition['bundle'] .= '_another_bundle';
- entity_test_create_bundle($another_instance_definition['bundle']);
- entity_create('field_instance_config', $another_instance_definition)->save();
-
- // Test that the first instance is not deleted, and then delete it.
- $instance = current(entity_load_multiple_by_properties('field_instance_config', array('entity_type' => 'entity_test', 'field_name' => $this->instanceDefinition['field_name'], 'bundle' => $this->instanceDefinition['bundle'], 'include_deleted' => TRUE)));
- $this->assertTrue(!empty($instance) && empty($instance->deleted), 'A new field instance is not marked for deletion.');
- $instance->delete();
-
- // Make sure the instance is marked as deleted when the instance is
- // specifically loaded.
- $instance = current(entity_load_multiple_by_properties('field_instance_config', array('entity_type' => 'entity_test', 'field_name' => $this->instanceDefinition['field_name'], 'bundle' => $this->instanceDefinition['bundle'], 'include_deleted' => TRUE)));
- $this->assertTrue(!empty($instance->deleted), 'A deleted field instance is marked for deletion.');
-
- // Try to load the instance normally and make sure it does not show up.
- $instance = entity_load('field_instance_config', 'entity_test.' . '.' . $this->instanceDefinition['bundle'] . '.' . $this->instanceDefinition['field_name']);
- $this->assertTrue(empty($instance), 'A deleted field instance is not loaded by default.');
-
- // Make sure the other field instance is not deleted.
- $another_instance = entity_load('field_instance_config', 'entity_test.' . $another_instance_definition['bundle'] . '.' . $another_instance_definition['field_name']);
- $this->assertTrue(!empty($another_instance) && empty($another_instance->deleted), 'A non-deleted field instance is not marked for deletion.');
- }
-
- /**
- * Tests the cross deletion behavior between fields and instances.
- */
- function testDeleteFieldInstanceCrossDeletion() {
- $instance_definition_2 = $this->instanceDefinition;
- $instance_definition_2['bundle'] .= '_another_bundle';
- entity_test_create_bundle($instance_definition_2['bundle']);
-
- // Check that deletion of a field deletes its instances.
- $field_storage = $this->fieldStorage;
- entity_create('field_instance_config', $this->instanceDefinition)->save();
- entity_create('field_instance_config', $instance_definition_2)->save();
- $field_storage->delete();
- $this->assertFalse(FieldInstanceConfig::loadByName('entity_test', $this->instanceDefinition['bundle'], $field_storage->name));
- $this->assertFalse(FieldInstanceConfig::loadByName('entity_test', $instance_definition_2['bundle'], $field_storage->name));
-
- // Chack that deletion of the last instance deletes the field.
- $field_storage = entity_create('field_storage_config', $this->fieldStorageDefinition);
- $field_storage->save();
- $instance = entity_create('field_instance_config', $this->instanceDefinition);
- $instance->save();
- $instance_2 = entity_create('field_instance_config', $instance_definition_2);
- $instance_2->save();
- $instance->delete();
- $this->assertTrue(FieldStorageConfig::loadByName('entity_test', $field_storage->name));
- $instance_2->delete();
- $this->assertFalse(FieldStorageConfig::loadByName('entity_test', $field_storage->name));
-
- // Check that deletion of all instances of the same field simultaneously
- // deletes the field.
- $field_storage = entity_create('field_storage_config', $this->fieldStorageDefinition);
- $field_storage->save();
- $instance = entity_create('field_instance_config', $this->instanceDefinition);
- $instance->save();
- $instance_2 = entity_create('field_instance_config', $instance_definition_2);
- $instance_2->save();
- $this->container->get('entity.manager')->getStorage('field_instance_config')->delete(array($instance, $instance_2));
- $this->assertFalse(FieldStorageConfig::loadByName('entity_test', $field_storage->name));
- }
-
-}
diff --git a/core/modules/field/src/Tests/FieldTypePluginManagerTest.php b/core/modules/field/src/Tests/FieldTypePluginManagerTest.php
index f079d3e..14a9d61 100644
--- a/core/modules/field/src/Tests/FieldTypePluginManagerTest.php
+++ b/core/modules/field/src/Tests/FieldTypePluginManagerTest.php
@@ -21,8 +21,8 @@ function testDefaultSettings() {
$field_type_manager = \Drupal::service('plugin.manager.field.field_type');
foreach (array('test_field', 'shape', 'hidden_test_field') as $type) {
$definition = $field_type_manager->getDefinition($type);
- $this->assertIdentical($field_type_manager->getDefaultSettings($type), $definition['class']::defaultSettings(), format_string("field settings service returns %type's field settings", array('%type' => $type)));
- $this->assertIdentical($field_type_manager->getDefaultInstanceSettings($type), $definition['class']::defaultInstanceSettings(), format_string("field instance settings service returns %type's field instance settings", array('%type' => $type)));
+ $this->assertIdentical($field_type_manager->getDefaultSettings($type), $definition['class']::defaultSettings(), format_string("%type storage settings were returned", array('%type' => $type)));
+ $this->assertIdentical($field_type_manager->getDefaultFieldSettings($type), $definition['class']::defaultFieldSettings(), format_string(" %type field settings were returned", array('%type' => $type)));
}
}
diff --git a/core/modules/field/src/Tests/FieldUnitTestBase.php b/core/modules/field/src/Tests/FieldUnitTestBase.php
index 66ba2a0..0b0fdd0 100644
--- a/core/modules/field/src/Tests/FieldUnitTestBase.php
+++ b/core/modules/field/src/Tests/FieldUnitTestBase.php
@@ -24,16 +24,16 @@
public static $modules = array('user', 'entity', 'system', 'field', 'text', 'entity_test', 'field_test');
/**
- * Bag of created fields and instances.
+ * Bag of created field storages and fields.
*
- * Allows easy access to test field/instance names/IDs/objects via:
- * - $this->fields->field_name[suffix]
- * - $this->fields->field_storage[suffix]
- * - $this->fields->field_storage_uuid[suffix]
- * - $this->fields->instance[suffix]
- * - $this->fields->instance_definition[suffix]
+ * Allows easy access to test field storage/field names/IDs/objects via:
+ * - $this->fieldTestData->field_name[suffix]
+ * - $this->fieldTestData->field_storage[suffix]
+ * - $this->fieldTestData->field_storage_uuid[suffix]
+ * - $this->fieldTestData->field[suffix]
+ * - $this->fieldTestData->field_definition[suffix]
*
- * @see \Drupal\field\Tests\FieldUnitTestBase::createFieldWithInstance()
+ * @see \Drupal\field\Tests\FieldUnitTestBase::createFieldWithStorage()
*
* @var \ArrayObject
*/
@@ -56,27 +56,27 @@ protected function setUp() {
}
/**
- * Create a field and an instance of it.
+ * Create a field and an associated field storage.
*
* @param string $suffix
* (optional) A string that should only contain characters that are valid in
* PHP variable names as well.
* @param string $entity_type
- * (optional) The entity type on which the instance should be created.
+ * (optional) The entity type on which the field should be created.
* Defaults to "entity_test".
* @param string $bundle
- * (optional) The entity type on which the instance should be created.
+ * (optional) The entity type on which the field should be created.
* Defaults to the default bundle of the entity type.
*/
- protected function createFieldWithInstance($suffix = '', $entity_type = 'entity_test', $bundle = NULL) {
+ protected function createFieldWithStorage($suffix = '', $entity_type = 'entity_test', $bundle = NULL) {
if (empty($bundle)) {
$bundle = $entity_type;
}
$field_name = 'field_name' . $suffix;
$field_storage = 'field_storage' . $suffix;
$field_storage_uuid = 'field_storage_uuid' . $suffix;
- $instance = 'instance' . $suffix;
- $instance_definition = 'instance_definition' . $suffix;
+ $field = 'field' . $suffix;
+ $field_definition = 'field_definition' . $suffix;
$this->fieldTestData->$field_name = drupal_strtolower($this->randomMachineName() . '_field_name' . $suffix);
$this->fieldTestData->$field_storage = entity_create('field_storage_config', array(
@@ -87,17 +87,17 @@ protected function createFieldWithInstance($suffix = '', $entity_type = 'entity_
));
$this->fieldTestData->$field_storage->save();
$this->fieldTestData->$field_storage_uuid = $this->fieldTestData->$field_storage->uuid();
- $this->fieldTestData->$instance_definition = array(
+ $this->fieldTestData->$field_definition = array(
'field_storage' => $this->fieldTestData->$field_storage,
'bundle' => $bundle,
'label' => $this->randomMachineName() . '_label',
'description' => $this->randomMachineName() . '_description',
'settings' => array(
- 'test_instance_setting' => $this->randomMachineName(),
+ 'test_field_setting' => $this->randomMachineName(),
),
);
- $this->fieldTestData->$instance = entity_create('field_instance_config', $this->fieldTestData->$instance_definition);
- $this->fieldTestData->$instance->save();
+ $this->fieldTestData->$field = entity_create('field_config', $this->fieldTestData->$field_definition);
+ $this->fieldTestData->$field->save();
entity_get_form_display($entity_type, $bundle, 'default')
->setComponent($this->fieldTestData->$field_name, array(
diff --git a/core/modules/field/src/Tests/FieldValidationTest.php b/core/modules/field/src/Tests/FieldValidationTest.php
index 7795684..4454c23 100644
--- a/core/modules/field/src/Tests/FieldValidationTest.php
+++ b/core/modules/field/src/Tests/FieldValidationTest.php
@@ -7,8 +7,6 @@
namespace Drupal\field\Tests;
-use Drupal\field\Tests\FieldUnitTestBase;
-
/**
* Tests field validation.
*
@@ -34,11 +32,11 @@ class FieldValidationTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create a field and instance of type 'test_field', on the 'entity_test'
+ // Create a field and storage of type 'test_field', on the 'entity_test'
// entity type.
$this->entityType = 'entity_test';
$this->bundle = 'entity_test';
- $this->createFieldWithInstance('', $this->entityType, $this->bundle);
+ $this->createFieldWithStorage('', $this->entityType, $this->bundle);
// Create an 'entity_test' entity.
$this->entity = entity_create($this->entityType, array(
@@ -63,7 +61,7 @@ function testCardinalityConstraint() {
// Check that the expected constraint violations are reported.
$this->assertEqual(count($violations), 1);
$this->assertEqual($violations[0]->getPropertyPath(), '');
- $this->assertEqual($violations[0]->getMessage(), t('%name: this field cannot hold more than @count values.', array('%name' => $this->fieldTestData->instance->getLabel(), '@count' => $cardinality)));
+ $this->assertEqual($violations[0]->getMessage(), t('%name: this field cannot hold more than @count values.', array('%name' => $this->fieldTestData->field->getLabel(), '@count' => $cardinality)));
}
/**
@@ -85,7 +83,7 @@ function testFieldConstraints() {
}
else {
$value = -1;
- $expected_violations[$delta . '.value'][] = t('%name does not accept the value -1.', array('%name' => $this->fieldTestData->instance->getLabel()));
+ $expected_violations[$delta . '.value'][] = t('%name does not accept the value -1.', array('%name' => $this->fieldTestData->field->getLabel()));
}
$entity->{$this->fieldTestData->field_name}->get($delta)->set('value', $value);
}
diff --git a/core/modules/field/src/Tests/FormTest.php b/core/modules/field/src/Tests/FormTest.php
index bea7e14..ea0ad65 100644
--- a/core/modules/field/src/Tests/FormTest.php
+++ b/core/modules/field/src/Tests/FormTest.php
@@ -47,11 +47,11 @@ class FormTest extends FieldTestBase {
protected $fieldStorageUnlimited;
/**
- * An array of values defining a field instance.
+ * An array of values defining a field.
*
* @var array
*/
- protected $instance;
+ protected $field;
protected function setUp() {
parent::setUp();
@@ -77,14 +77,14 @@ protected function setUp() {
'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
);
- $this->instance = array(
+ $this->field = array(
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
'label' => $this->randomMachineName() . '_label',
'description' => '[site:name]_description',
'weight' => mt_rand(0, 127),
'settings' => array(
- 'test_instance_setting' => $this->randomMachineName(),
+ 'test_field_setting' => $this->randomMachineName(),
),
);
}
@@ -92,10 +92,10 @@ protected function setUp() {
function testFieldFormSingle() {
$field_storage = $this->fieldStorageSingle;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
+ $this->field['field_name'] = $field_name;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name)
->save();
@@ -119,7 +119,7 @@ function testFieldFormSingle() {
"{$field_name}[0][value]" => -1
);
$this->drupalPostForm(NULL, $edit, t('Save'));
- $this->assertRaw(t('%name does not accept the value -1.', array('%name' => $this->instance['label'])), 'Field validation fails with invalid input.');
+ $this->assertRaw(t('%name does not accept the value -1.', array('%name' => $this->field['label'])), 'Field validation fails with invalid input.');
// TODO : check that the correct field is flagged for error.
// Create an entity
@@ -174,12 +174,12 @@ function testFieldFormSingle() {
function testFieldFormDefaultValue() {
$field_storage = $this->fieldStorageSingle;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
+ $this->field['field_name'] = $field_name;
$default = rand(1, 127);
- $this->instance['default_value'] = array(array('value' => $default));
+ $this->field['default_value'] = array(array('value' => $default));
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name)
->save();
@@ -205,18 +205,18 @@ function testFieldFormDefaultValue() {
function testFieldFormSingleRequired() {
$field_storage = $this->fieldStorageSingle;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
- $this->instance['required'] = TRUE;
+ $this->field['field_name'] = $field_name;
+ $this->field['required'] = TRUE;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name)
->save();
// Submit with missing required value.
$edit = array();
$this->drupalPostForm('entity_test/add', $edit, t('Save'));
- $this->assertRaw(t('!name field is required.', array('!name' => $this->instance['label'])), 'Required field with no value fails validation');
+ $this->assertRaw(t('!name field is required.', array('!name' => $this->field['label'])), 'Required field with no value fails validation');
// Create an entity
$value = mt_rand(1, 127);
@@ -240,7 +240,7 @@ function testFieldFormSingleRequired() {
"{$field_name}[0][value]" => $value,
);
$this->drupalPostForm('entity_test/manage/' . $id, $edit, t('Save'));
- $this->assertRaw(t('!name field is required.', array('!name' => $this->instance['label'])), 'Required field with no value fails validation');
+ $this->assertRaw(t('!name field is required.', array('!name' => $this->field['label'])), 'Required field with no value fails validation');
}
// function testFieldFormMultiple() {
@@ -248,16 +248,16 @@ function testFieldFormSingleRequired() {
// $field_name = $this->field['field_name'];
// $this->instance['field_name'] = $field_name;
// entity_create('field_storage_config', $this->field)->save();
-// entity_create('field_instance_config', $this->instance)->save();
+// entity_create('field_config', $this->instance)->save();
// }
function testFieldFormUnlimited() {
$field_storage = $this->fieldStorageUnlimited;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
+ $this->field['field_name'] = $field_name;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name)
->save();
@@ -340,10 +340,10 @@ function testFieldFormMultivalueWithRequiredRadio() {
// Create a multivalue test field.
$field_storage = $this->fieldStorageUnlimited;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
+ $this->field['field_name'] = $field_name;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name)
->save();
@@ -356,15 +356,15 @@ function testFieldFormMultivalueWithRequiredRadio() {
'allowed_values' => array('yes' => 'yes', 'no' => 'no'),
),
))->save();
- $instance = array(
+ $field = array(
'field_name' => 'required_radio_test',
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
'required' => TRUE,
);
- entity_create('field_instance_config', $instance)->save();
- entity_get_form_display($instance['entity_type'], $instance['bundle'], 'default')
- ->setComponent($instance['field_name'], array(
+ entity_create('field_config', $field)->save();
+ entity_get_form_display($field['entity_type'], $field['bundle'], 'default')
+ ->setComponent($field['field_name'], array(
'type' => 'options_buttons',
))
->save();
@@ -387,10 +387,10 @@ function testFieldFormMultivalueWithRequiredRadio() {
function testFieldFormJSAddMore() {
$field_storage = $this->fieldStorageUnlimited;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
+ $this->field['field_name'] = $field_name;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name)
->save();
@@ -444,14 +444,14 @@ function testFieldFormJSAddMore() {
* Tests widgets handling multiple values.
*/
function testFieldFormMultipleWidget() {
- // Create a field with fixed cardinality and an instance using a multiple
- // widget.
+ // Create a field with fixed cardinality, configure the form to use a
+ // "multiple" widget.
$field_storage = $this->fieldStorageMultiple;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
+ $this->field['field_name'] = $field_name;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
->setComponent($field_name, array(
'type' => 'test_field_widget_multiple',
))
@@ -496,12 +496,12 @@ function testFieldFormAccess() {
$field_storage = $this->fieldStorageSingle;
$field_storage['entity_type'] = $entity_type;
$field_name = $field_storage['name'];
- $instance = $this->instance;
- $instance['field_name'] = $field_name;
- $instance['entity_type'] = $entity_type;
- $instance['bundle'] = $entity_type;
+ $field = $this->field;
+ $field['field_name'] = $field_name;
+ $field['entity_type'] = $entity_type;
+ $field['bundle'] = $entity_type;
entity_create('field_storage_config', $field_storage)->save();
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
entity_get_form_display($entity_type, $entity_type, 'default')
->setComponent($field_name)
->save();
@@ -514,15 +514,15 @@ function testFieldFormAccess() {
'type' => 'test_field',
);
$field_name_no_access = $field_storage_no_access['name'];
- $instance_no_access = array(
+ $field_no_access = array(
'field_name' => $field_name_no_access,
'entity_type' => $entity_type,
'bundle' => $entity_type,
'default_value' => array(0 => array('value' => 99)),
);
entity_create('field_storage_config', $field_storage_no_access)->save();
- entity_create('field_instance_config', $instance_no_access)->save();
- entity_get_form_display($instance_no_access['entity_type'], $instance_no_access['bundle'], 'default')
+ entity_create('field_config', $field_no_access)->save();
+ entity_get_form_display($field_no_access['entity_type'], $field_no_access['bundle'], 'default')
->setComponent($field_name_no_access)
->save();
@@ -585,13 +585,13 @@ function testHiddenField() {
$field_storage = $this->fieldStorageSingle;
$field_storage['entity_type'] = $entity_type;
$field_name = $field_storage['name'];
- $this->instance['field_name'] = $field_name;
- $this->instance['default_value'] = array(0 => array('value' => 99));
- $this->instance['entity_type'] = $entity_type;
- $this->instance['bundle'] = $entity_type;
+ $this->field['field_name'] = $field_name;
+ $this->field['default_value'] = array(0 => array('value' => 99));
+ $this->field['entity_type'] = $entity_type;
+ $this->field['bundle'] = $entity_type;
entity_create('field_storage_config', $field_storage)->save();
- $this->instance = entity_create('field_instance_config', $this->instance);
- $this->instance->save();
+ $this->field = entity_create('field_config', $this->field);
+ $this->field->save();
// We explicitly do not assign a widget in a form display, so the field
// stays hidden in forms.
@@ -608,12 +608,12 @@ function testHiddenField() {
$entity = entity_load($entity_type, $id);
$this->assertEqual($entity->{$field_name}->value, 99, 'Default value was saved');
- // Update the instance to remove the default value and switch to the
- // default widget.
- $this->instance->default_value = NULL;
- $this->instance->save();
- entity_get_form_display($entity_type, $this->instance->bundle, 'default')
- ->setComponent($this->instance->getName(), array(
+ // Update the field to remove the default value, and switch to the default
+ // widget.
+ $this->field->default_value = NULL;
+ $this->field->save();
+ entity_get_form_display($entity_type, $this->field->bundle, 'default')
+ ->setComponent($this->field->getName(), array(
'type' => 'test_field_widget',
))
->save();
@@ -632,8 +632,8 @@ function testHiddenField() {
$this->assertEqual($entity->{$field_name}->value, $value, 'Field value was updated');
// Set the field back to hidden.
- entity_get_form_display($entity_type, $this->instance->bundle, 'default')
- ->removeComponent($this->instance->getName())
+ entity_get_form_display($entity_type, $this->field->bundle, 'default')
+ ->removeComponent($this->field->getName())
->save();
// Create a new revision.
diff --git a/core/modules/field/src/Tests/NestedFormTest.php b/core/modules/field/src/Tests/NestedFormTest.php
index e1d6096..6f0605a 100644
--- a/core/modules/field/src/Tests/NestedFormTest.php
+++ b/core/modules/field/src/Tests/NestedFormTest.php
@@ -40,14 +40,14 @@ protected function setUp() {
'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
);
- $this->instance = array(
+ $this->field = array(
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
'label' => $this->randomMachineName() . '_label',
'description' => '[site:name]_description',
'weight' => mt_rand(0, 127),
'settings' => array(
- 'test_instance_setting' => $this->randomMachineName(),
+ 'test_field_setting' => $this->randomMachineName(),
),
);
}
@@ -56,20 +56,20 @@ protected function setUp() {
* Tests Field API form integration within a subform.
*/
function testNestedFieldForm() {
- // Add two instances on the 'entity_test'
+ // Add two fields on the 'entity_test'
entity_create('field_storage_config', $this->fieldStorageSingle)->save();
entity_create('field_storage_config', $this->fieldStorageUnlimited)->save();
- $this->instance['field_name'] = 'field_single';
- $this->instance['label'] = 'Single field';
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
- ->setComponent($this->instance['field_name'])
+ $this->field['field_name'] = 'field_single';
+ $this->field['label'] = 'Single field';
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
+ ->setComponent($this->field['field_name'])
->save();
- $this->instance['field_name'] = 'field_unlimited';
- $this->instance['label'] = 'Unlimited field';
- entity_create('field_instance_config', $this->instance)->save();
- entity_get_form_display($this->instance['entity_type'], $this->instance['bundle'], 'default')
- ->setComponent($this->instance['field_name'])
+ $this->field['field_name'] = 'field_unlimited';
+ $this->field['label'] = 'Unlimited field';
+ entity_create('field_config', $this->field)->save();
+ entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
+ ->setComponent($this->field['field_name'])
->save();
// Create two entities.
diff --git a/core/modules/field/src/Tests/Number/NumberFieldTest.php b/core/modules/field/src/Tests/Number/NumberFieldTest.php
index 82b69d2..2e5217c 100644
--- a/core/modules/field/src/Tests/Number/NumberFieldTest.php
+++ b/core/modules/field/src/Tests/Number/NumberFieldTest.php
@@ -51,7 +51,7 @@ function testNumberDecimalField() {
'precision' => 8, 'scale' => 4, 'decimal_separator' => '.',
)
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_name' => $field_name,
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
@@ -141,7 +141,7 @@ function testNumberIntegerField() {
'type' => 'integer',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_name' => $field_name,
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
@@ -245,7 +245,7 @@ function testNumberFloatField() {
'type' => 'float',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_name' => $field_name,
'entity_type' => 'entity_test',
'bundle' => 'entity_test',
@@ -350,7 +350,7 @@ function testNumberFormatter() {
'type' => 'integer',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_name' => $float_field,
'entity_type' => 'node',
'bundle' => $type,
@@ -360,7 +360,7 @@ function testNumberFormatter() {
),
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_name' => $integer_field,
'entity_type' => 'node',
'bundle' => $type,
diff --git a/core/modules/field/src/Tests/Number/NumberItemTest.php b/core/modules/field/src/Tests/Number/NumberItemTest.php
index 4b66ad6..21fbe69 100644
--- a/core/modules/field/src/Tests/Number/NumberItemTest.php
+++ b/core/modules/field/src/Tests/Number/NumberItemTest.php
@@ -28,14 +28,14 @@ class NumberItemTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create number fields and instances for validation.
+ // Create number field storages and fields for validation.
foreach (array('integer', 'float', 'decimal') as $type) {
entity_create('field_storage_config', array(
'name' => 'field_' . $type,
'entity_type' => 'entity_test',
'type' => $type,
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => 'entity_test',
'field_name' => 'field_' . $type,
'bundle' => 'entity_test',
diff --git a/core/modules/field/src/Tests/ShapeItemTest.php b/core/modules/field/src/Tests/ShapeItemTest.php
index dc05d66..4b9671c 100644
--- a/core/modules/field/src/Tests/ShapeItemTest.php
+++ b/core/modules/field/src/Tests/ShapeItemTest.php
@@ -34,13 +34,13 @@ class ShapeItemTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create an field field and instance for validation.
+ // Create a 'shape' field and storage for validation.
entity_create('field_storage_config', array(
'name' => $this->field_name,
'entity_type' => 'entity_test',
'type' => 'shape',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => 'entity_test',
'field_name' => $this->field_name,
'bundle' => 'entity_test',
diff --git a/core/modules/field/src/Tests/TestItemTest.php b/core/modules/field/src/Tests/TestItemTest.php
index e72b46b..a433c00 100644
--- a/core/modules/field/src/Tests/TestItemTest.php
+++ b/core/modules/field/src/Tests/TestItemTest.php
@@ -35,13 +35,13 @@ class TestItemTest extends FieldUnitTestBase {
protected function setUp() {
parent::setUp();
- // Create an field field and instance for validation.
+ // Create a 'test_field' field and storage for validation.
entity_create('field_storage_config', array(
'name' => $this->field_name,
'entity_type' => 'entity_test',
'type' => 'test_field',
))->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'entity_type' => 'entity_test',
'field_name' => $this->field_name,
'bundle' => 'entity_test',
diff --git a/core/modules/field/src/Tests/TranslationTest.php b/core/modules/field/src/Tests/TranslationTest.php
index 50c31aa..17caf02 100644
--- a/core/modules/field/src/Tests/TranslationTest.php
+++ b/core/modules/field/src/Tests/TranslationTest.php
@@ -43,6 +43,13 @@ class TranslationTest extends FieldUnitTestBase {
/**
+ * An array defining the field storage to use in this test.
+ *
+ * @var array
+ */
+ protected $field_storage_definition;
+
+ /**
* An array defining the field to use in this test.
*
* @var array
@@ -50,13 +57,6 @@ class TranslationTest extends FieldUnitTestBase {
protected $field_definition;
/**
- * An array defining the field instance to use in this test.
- *
- * @var array
- */
- protected $instance_definition;
-
- /**
* The field storage to use in this test.
*
* @var \Drupal\field\Entity\FieldStorageConfig
@@ -64,11 +64,11 @@ class TranslationTest extends FieldUnitTestBase {
protected $fieldStorage;
/**
- * The field instance to use in this test.
+ * The field to use in this test.
*
- * @var \Drupal\field\Entity\FieldInstanceConfig
+ * @var \Drupal\field\Entity\FieldConfig
*/
- protected $instance;
+ protected $field;
protected function setUp() {
parent::setUp();
@@ -79,22 +79,22 @@ protected function setUp() {
$this->entity_type = 'entity_test';
- $this->field_definition = array(
+ $this->field_storage_definition = array(
'name' => $this->field_name,
'entity_type' => $this->entity_type,
'type' => 'test_field',
'cardinality' => 4,
'translatable' => TRUE,
);
- $this->fieldStorage = entity_create('field_storage_config', $this->field_definition);
+ $this->fieldStorage = entity_create('field_storage_config', $this->field_storage_definition);
$this->fieldStorage->save();
- $this->instance_definition = array(
+ $this->field_definition = array(
'field_storage' => $this->fieldStorage,
'bundle' => 'entity_test',
);
- $this->instance = entity_create('field_instance_config', $this->instance_definition);
- $this->instance->save();
+ $this->field = entity_create('field_config', $this->field_definition);
+ $this->field->save();
for ($i = 0; $i < 3; ++$i) {
$language = new Language(array(
@@ -117,7 +117,7 @@ function testTranslatableFieldSaveLoad() {
// Prepare the field translations.
$entity_type_id = 'entity_test';
field_test_entity_info_translatable($entity_type_id, TRUE);
- $entity = entity_create($entity_type_id, array('type' => $this->instance->bundle));
+ $entity = entity_create($entity_type_id, array('type' => $this->field->bundle));
$field_translations = array();
$available_langcodes = array_keys($this->container->get('language_manager')->getLanguages());
$entity->langcode->value = reset($available_langcodes);
@@ -140,22 +140,22 @@ function testTranslatableFieldSaveLoad() {
// Test default values.
$field_name_default = drupal_strtolower($this->randomMachineName() . '_field_name');
- $field_definition = $this->field_definition;
- $field_definition['name'] = $field_name_default;
- $field_storage = entity_create('field_storage_config', $field_definition);
+ $field_storage_definition = $this->field_storage_definition;
+ $field_storage_definition['name'] = $field_name_default;
+ $field_storage = entity_create('field_storage_config', $field_storage_definition);
$field_storage->save();
- $instance_definition = $this->instance_definition;
- $instance_definition['field_storage'] = $field_storage;
- $instance_definition['default_value'] = array(array('value' => rand(1, 127)));
- $instance = entity_create('field_instance_config', $instance_definition);
- $instance->save();
+ $field_definition = $this->field_definition;
+ $field_definition['field_storage'] = $field_storage;
+ $field_definition['default_value'] = array(array('value' => rand(1, 127)));
+ $field = entity_create('field_config', $field_definition);
+ $field->save();
$translation_langcodes = array_slice($available_langcodes, 0, 2);
asort($translation_langcodes);
$translation_langcodes = array_values($translation_langcodes);
- $values = array('type' => $instance->bundle, 'langcode' => $translation_langcodes[0]);
+ $values = array('type' => $field->bundle, 'langcode' => $translation_langcodes[0]);
$entity = entity_create($entity_type_id, $values);
foreach ($translation_langcodes as $langcode) {
$values[$this->field_name][$langcode] = $this->_generateTestFieldValues($this->fieldStorage->getCardinality());
@@ -169,11 +169,11 @@ function testTranslatableFieldSaveLoad() {
// @todo Test every translation once the Entity Translation API allows for
// multilingual defaults.
$langcode = $entity->language()->id;
- $this->assertEqual($entity->getTranslation($langcode)->{$field_name_default}->getValue(), $instance->default_value, format_string('Default value correctly populated for language %language.', array('%language' => $langcode)));
+ $this->assertEqual($entity->getTranslation($langcode)->{$field_name_default}->getValue(), $field->default_value, format_string('Default value correctly populated for language %language.', array('%language' => $langcode)));
// Check that explicit empty values are not overridden with default values.
foreach (array(NULL, array()) as $empty_items) {
- $values = array('type' => $instance->bundle, 'langcode' => $translation_langcodes[0]);
+ $values = array('type' => $field->bundle, 'langcode' => $translation_langcodes[0]);
$entity = entity_create($entity_type_id, $values);
foreach ($translation_langcodes as $langcode) {
$values[$this->field_name][$langcode] = $this->_generateTestFieldValues($this->fieldStorage->getCardinality());
diff --git a/core/modules/field/src/Tests/TranslationWebTest.php b/core/modules/field/src/Tests/TranslationWebTest.php
index 6646072..4a13e2e 100644
--- a/core/modules/field/src/Tests/TranslationWebTest.php
+++ b/core/modules/field/src/Tests/TranslationWebTest.php
@@ -45,33 +45,33 @@ class TranslationWebTest extends FieldTestBase {
protected $fieldStorage;
/**
- * The field instance to use in this test.
+ * The field to use in this test.
*
- * @var \Drupal\field\Entity\FieldInstanceConfig
+ * @var \Drupal\field\Entity\FieldConfig
*/
- protected $instance;
+ protected $field;
protected function setUp() {
parent::setUp();
$this->field_name = drupal_strtolower($this->randomMachineName() . '_field_name');
- $field = array(
+ $field_storage = array(
'name' => $this->field_name,
'entity_type' => $this->entity_type,
'type' => 'test_field',
'cardinality' => 4,
'translatable' => TRUE,
);
- entity_create('field_storage_config', $field)->save();
+ entity_create('field_storage_config', $field_storage)->save();
$this->fieldStorage = entity_load('field_storage_config', $this->entity_type . '.' . $this->field_name);
- $instance = array(
+ $field = array(
'field_storage' => $this->fieldStorage,
'bundle' => $this->entity_type,
);
- entity_create('field_instance_config', $instance)->save();
- $this->instance = entity_load('field_instance_config', $this->entity_type . '.' . $instance['bundle'] . '.' . $this->field_name);
+ entity_create('field_config', $field)->save();
+ $this->field = entity_load('field_config', $this->entity_type . '.' . $field['bundle'] . '.' . $this->field_name);
entity_get_form_display($this->entity_type, $this->entity_type, 'default')
->setComponent($this->field_name)
diff --git a/core/modules/field/src/Tests/Views/ApiDataTest.php b/core/modules/field/src/Tests/Views/ApiDataTest.php
index 7631e29..b53c136 100644
--- a/core/modules/field/src/Tests/Views/ApiDataTest.php
+++ b/core/modules/field/src/Tests/Views/ApiDataTest.php
@@ -18,15 +18,15 @@ class ApiDataTest extends FieldTestBase {
protected function setUp() {
parent::setUp();
- $field_names = $this->setUpFields(1);
+ $field_names = $this->setUpFieldStorages(1);
// Attach the field to nodes only.
- $instance = array(
+ $field = array(
'field_name' => $field_names[0],
'entity_type' => 'node',
'bundle' => 'page',
);
- entity_create('field_instance_config', $instance)->save();
+ entity_create('field_config', $field)->save();
// Now create some example nodes/users for the view result.
for ($i = 0; $i < 5; $i++) {
diff --git a/core/modules/field/src/Tests/Views/FieldTestBase.php b/core/modules/field/src/Tests/Views/FieldTestBase.php
index 43222e0..9362ca6 100644
--- a/core/modules/field/src/Tests/Views/FieldTestBase.php
+++ b/core/modules/field/src/Tests/Views/FieldTestBase.php
@@ -42,12 +42,12 @@
public $fieldStorages;
/**
- * Stores the instances of the fields. They have
- * the same keys as the fields.
+ * Stores the fields of the field storage. They have the same keys as the
+ * field storages.
*
* @var array
*/
- public $instances;
+ public $fields;
protected function setUp() {
parent::setUp();
@@ -61,7 +61,7 @@ protected function setUp() {
ViewTestData::createTestViews(get_class($this), array('field_test_views'));
}
- function setUpFields($amount = 3) {
+ function setUpFieldStorages($amount = 3) {
// Create three fields.
$field_names = array();
for ($i = 0; $i < $amount; $i++) {
@@ -76,13 +76,13 @@ function setUpFields($amount = 3) {
return $field_names;
}
- function setUpInstances($bundle = 'page') {
+ function setUpFields($bundle = 'page') {
foreach ($this->fieldStorages as $key => $field_storage) {
- $this->instances[$key] = entity_create('field_instance_config', array(
+ $this->fields[$key] = entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => $bundle,
));
- $this->instances[$key]->save();
+ $this->fields[$key]->save();
}
}
diff --git a/core/modules/field/src/Tests/Views/FieldUITest.php b/core/modules/field/src/Tests/Views/FieldUITest.php
index c38aaee..022cb52 100644
--- a/core/modules/field/src/Tests/Views/FieldUITest.php
+++ b/core/modules/field/src/Tests/Views/FieldUITest.php
@@ -47,8 +47,8 @@ protected function setUp() {
$this->account = $this->drupalCreateUser(array('administer views'));
$this->drupalLogin($this->account);
+ $this->setUpFieldStorages();
$this->setUpFields();
- $this->setUpInstances();
}
/**
diff --git a/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php b/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php
index e575a02..8f7da9f 100644
--- a/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php
+++ b/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php
@@ -39,7 +39,7 @@ protected function setUp() {
parent::setUp();
// Setup basic fields.
- $this->setUpFields(3);
+ $this->setUpFieldStorages(3);
// Setup a field with cardinality > 1.
$this->fieldStorages[3] = entity_create('field_storage_config', array(
@@ -58,7 +58,7 @@ protected function setUp() {
));
$this->fieldStorages[4]->save();
- $this->setUpInstances();
+ $this->setUpFields();
// Create some nodes.
$this->nodes = array();
diff --git a/core/modules/field/src/Tests/reEnableModuleFieldTest.php b/core/modules/field/src/Tests/reEnableModuleFieldTest.php
index dcbd20a..c7bdcf6 100644
--- a/core/modules/field/src/Tests/reEnableModuleFieldTest.php
+++ b/core/modules/field/src/Tests/reEnableModuleFieldTest.php
@@ -49,7 +49,7 @@ function testReEnabledField() {
'type' => 'telephone',
));
$field_storage->save();
- entity_create('field_instance_config', array(
+ entity_create('field_config', array(
'field_storage' => $field_storage,
'bundle' => 'article',
'label' => 'Telephone Number',
diff --git a/core/modules/field/tests/modules/field_test/field_test.module b/core/modules/field/tests/modules/field_test/field_test.module
index 499c883..e805c0f 100644
--- a/core/modules/field/tests/modules/field_test/field_test.module
+++ b/core/modules/field/tests/modules/field_test/field_test.module
@@ -128,7 +128,7 @@ function field_test_field_widget_form_alter(&$element, FormStateInterface $form_
break;
}
// Set a message if this is for the form displayed to set default value for
- // the field instance.
+ // the field.
if ($context['default']) {
drupal_set_message('From hook_field_widget_form_alter(): Default form is true.');
}
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php
index 5234964..f8a5a60 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php
@@ -39,11 +39,11 @@ public static function defaultSettings() {
/**
* {@inheritdoc}
*/
- public static function defaultInstanceSettings() {
+ public static function defaultFieldSettings() {
return array(
- 'test_instance_setting' => 'dummy test string',
+ 'test_field_setting' => 'dummy test string',
'test_cached_data' => FALSE,
- ) + parent::defaultInstanceSettings();
+ ) + parent::defaultFieldSettings();
}
/**
@@ -92,13 +92,13 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_
/**
* {@inheritdoc}
*/
- public function instanceSettingsForm(array $form, FormStateInterface $form_state) {
- $form['test_instance_setting'] = array(
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
+ $form['test_field_setting'] = array(
'#type' => 'textfield',
- '#title' => t('Field test field instance setting'),
- '#default_value' => $this->getSetting('test_instance_setting'),
+ '#title' => t('Field test field setting'),
+ '#default_value' => $this->getSetting('test_field_setting'),
'#required' => FALSE,
- '#description' => t('A dummy form element to simulate field instance setting.'),
+ '#description' => t('A dummy form element to simulate field setting.'),
);
return $form;
diff --git a/core/modules/field/tests/modules/field_test_config/config/install/field.instance.entity_test.entity_test.field_test_import.yml b/core/modules/field/tests/modules/field_test_config/config/install/field.field.entity_test.entity_test.field_test_import.yml
similarity index 100%
rename from core/modules/field/tests/modules/field_test_config/config/install/field.instance.entity_test.entity_test.field_test_import.yml
rename to core/modules/field/tests/modules/field_test_config/config/install/field.field.entity_test.entity_test.field_test_import.yml
diff --git a/core/modules/field/tests/modules/field_test_config/config/install/field.instance.entity_test.entity_test.field_test_import_2.yml b/core/modules/field/tests/modules/field_test_config/config/install/field.field.entity_test.entity_test.field_test_import_2.yml
similarity index 100%
rename from core/modules/field/tests/modules/field_test_config/config/install/field.instance.entity_test.entity_test.field_test_import_2.yml
rename to core/modules/field/tests/modules/field_test_config/config/install/field.field.entity_test.entity_test.field_test_import_2.yml
diff --git a/core/modules/field/tests/modules/field_test_config/config/install/field.instance.entity_test.test_bundle.field_test_import_2.yml b/core/modules/field/tests/modules/field_test_config/config/install/field.field.entity_test.test_bundle.field_test_import_2.yml
similarity index 100%
rename from core/modules/field/tests/modules/field_test_config/config/install/field.instance.entity_test.test_bundle.field_test_import_2.yml
rename to core/modules/field/tests/modules/field_test_config/config/install/field.field.entity_test.test_bundle.field_test_import_2.yml
diff --git a/core/modules/field/tests/modules/field_test_config/staging/field.instance.entity_test.entity_test.field_test_import_staging.yml b/core/modules/field/tests/modules/field_test_config/staging/field.field.entity_test.entity_test.field_test_import_staging.yml
similarity index 100%
rename from core/modules/field/tests/modules/field_test_config/staging/field.instance.entity_test.entity_test.field_test_import_staging.yml
rename to core/modules/field/tests/modules/field_test_config/staging/field.field.entity_test.entity_test.field_test_import_staging.yml
diff --git a/core/modules/field/tests/modules/field_test_config/staging/field.instance.entity_test.test_bundle.field_test_import_staging_2.yml b/core/modules/field/tests/modules/field_test_config/staging/field.field.entity_test.test_bundle.field_test_import_staging_2.yml
similarity index 100%
rename from core/modules/field/tests/modules/field_test_config/staging/field.instance.entity_test.test_bundle.field_test_import_staging_2.yml
rename to core/modules/field/tests/modules/field_test_config/staging/field.field.entity_test.test_bundle.field_test_import_staging_2.yml
diff --git a/core/modules/field/tests/modules/field_test_config/staging/field.instance.entity_test.test_bundle_2.field_test_import_staging_2.yml b/core/modules/field/tests/modules/field_test_config/staging/field.field.entity_test.test_bundle_2.field_test_import_staging_2.yml
similarity index 100%
rename from core/modules/field/tests/modules/field_test_config/staging/field.instance.entity_test.test_bundle_2.field_test_import_staging_2.yml
rename to core/modules/field/tests/modules/field_test_config/staging/field.field.entity_test.test_bundle_2.field_test_import_staging_2.yml
diff --git a/core/modules/field/tests/src/FieldInstanceConfigEntityUnitTest.php b/core/modules/field/tests/src/FieldConfigEntityUnitTest.php
similarity index 88%
rename from core/modules/field/tests/src/FieldInstanceConfigEntityUnitTest.php
rename to core/modules/field/tests/src/FieldConfigEntityUnitTest.php
index 56f2857..7a4e22c 100644
--- a/core/modules/field/tests/src/FieldInstanceConfigEntityUnitTest.php
+++ b/core/modules/field/tests/src/FieldConfigEntityUnitTest.php
@@ -2,21 +2,21 @@
/**
* @file
- * Contains \Drupal\field\Tests\FieldInstanceConfigEntityUnitTest.
+ * Contains \Drupal\field\Tests\FieldConfigEntityUnitTest.
*/
namespace Drupal\field\Tests;
use Drupal\Core\Language\LanguageInterface;
use Drupal\Core\DependencyInjection\ContainerBuilder;
-use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\field\Entity\FieldConfig;
use Drupal\Tests\UnitTestCase;
/**
- * @coversDefaultClass \Drupal\field\Entity\FieldInstanceConfig
+ * @coversDefaultClass \Drupal\field\Entity\FieldConfig
* @group field
*/
-class FieldInstanceConfigEntityUnitTest extends UnitTestCase {
+class FieldConfigEntityUnitTest extends UnitTestCase {
/**
* The entity type used for testing.
@@ -125,13 +125,13 @@ public function testCalculateDependencies() {
->method('getConfigDependencyName')
->will($this->returnValue('field.storage.test_entity_type.test_field'));
- $instance = new FieldInstanceConfig(array(
+ $field = new FieldConfig(array(
'field_name' => $this->fieldStorage->getName(),
'entity_type' => 'test_entity_type',
'bundle' => 'test_bundle',
'field_type' => 'test_field',
), $this->entityTypeId);
- $dependencies = $instance->calculateDependencies();
+ $dependencies = $field->calculateDependencies();
$this->assertContains('field.storage.test_entity_type.test_field', $dependencies['entity']);
$this->assertContains('test.test_entity_type.id', $dependencies['entity']);
}
@@ -140,7 +140,7 @@ public function testCalculateDependencies() {
* @covers ::toArray()
*/
public function testToArray() {
- $instance = new FieldInstanceConfig(array(
+ $field = new FieldConfig(array(
'field_name' => $this->fieldStorage->getName(),
'entity_type' => 'test_entity_type',
'bundle' => 'test_bundle',
@@ -165,9 +165,9 @@ public function testToArray() {
'field_type' => 'test_field',
);
$this->entityManager->expects($this->any())
- ->method('getDefinition')
- ->with($this->entityTypeId)
- ->will($this->returnValue($this->entityType));
+ ->method('getDefinition')
+ ->with($this->entityTypeId)
+ ->will($this->returnValue($this->entityType));
$this->entityType->expects($this->once())
->method('getKey')
->with('id')
@@ -176,7 +176,7 @@ public function testToArray() {
->method('getDefinition')
->will($this->returnValue(array('mapping' => array_fill_keys(array_keys($expected), ''))));
- $export = $instance->toArray();
+ $export = $field->toArray();
$this->assertEquals($expected, $export);
}
@@ -184,21 +184,21 @@ public function testToArray() {
* @covers ::getType
*/
public function testGetType() {
- // Ensure that FieldInstanceConfig::getType() is not delegated to
+ // Ensure that FieldConfig::getType() is not delegated to
// FieldStorage.
$this->entityManager->expects($this->never())
->method('getFieldStorageDefinitions');
$this->fieldStorage->expects($this->never())
->method('getType');
- $instance = new FieldInstanceConfig(array(
+ $field = new FieldConfig(array(
'field_name' => $this->fieldStorage->getName(),
'entity_type' => 'test_entity_type',
'bundle' => 'test_bundle',
'field_type' => 'test_field',
), $this->entityTypeId);
- $this->assertEquals('test_field', $instance->getType());
+ $this->assertEquals('test_field', $field->getType());
}
}
diff --git a/core/modules/field_ui/field_ui.module b/core/modules/field_ui/field_ui.module
index 696d07a..d5578b6 100644
--- a/core/modules/field_ui/field_ui.module
+++ b/core/modules/field_ui/field_ui.module
@@ -109,8 +109,8 @@ function field_ui_element_info() {
*/
function field_ui_entity_type_build(array &$entity_types) {
/** @var $entity_types \Drupal\Core\Entity\EntityTypeInterface[] */
- $entity_types['field_instance_config']->setFormClass('delete', 'Drupal\field_ui\Form\FieldInstanceConfigDeleteForm');
- $entity_types['field_instance_config']->setListBuilderClass('Drupal\field_ui\FieldInstanceConfigListBuilder');
+ $entity_types['field_config']->setFormClass('delete', 'Drupal\field_ui\Form\FieldConfigDeleteForm');
+ $entity_types['field_config']->setListBuilderClass('Drupal\field_ui\FieldConfigListBuilder');
$entity_types['field_storage_config']->setListBuilderClass('Drupal\field_ui\FieldStorageConfigListBuilder');
foreach ($entity_types as $entity_type) {
diff --git a/core/modules/field_ui/src/DisplayOverviewBase.php b/core/modules/field_ui/src/DisplayOverviewBase.php
index 1bad243..4c649ff 100644
--- a/core/modules/field_ui/src/DisplayOverviewBase.php
+++ b/core/modules/field_ui/src/DisplayOverviewBase.php
@@ -508,7 +508,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
// Collect data for 'regular' fields.
foreach ($form['#fields'] as $field_name) {
- // Retrieve the stored instance settings to merge with the incoming
+ // Retrieve the stored field settings to merge with the incoming
// values.
$values = $form_values['fields'][$field_name];
@@ -716,7 +716,7 @@ protected function getExtraFields() {
* Returns the widget or formatter plugin for a field.
*
* @param \Drupal\Core\Field\FieldDefinitionInterface $field_definition
- * The field instance.
+ * The field.
* @param array $configuration
* The plugin configuration
*
diff --git a/core/modules/field_ui/src/FieldInstanceConfigListBuilder.php b/core/modules/field_ui/src/FieldConfigListBuilder.php
similarity index 79%
rename from core/modules/field_ui/src/FieldInstanceConfigListBuilder.php
rename to core/modules/field_ui/src/FieldConfigListBuilder.php
index 74252e0..f4f76b5 100644
--- a/core/modules/field_ui/src/FieldInstanceConfigListBuilder.php
+++ b/core/modules/field_ui/src/FieldConfigListBuilder.php
@@ -2,7 +2,7 @@
/**
* @file
- * Contains \Drupal\field_ui\FieldInstanceConfigListBuilder.
+ * Contains \Drupal\field_ui\FieldConfigListBuilder.
*/
namespace Drupal\field_ui;
@@ -14,9 +14,9 @@
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
- * Provides lists of field instance config entities.
+ * Provides lists of field config entities.
*/
-class FieldInstanceConfigListBuilder extends ConfigEntityListBuilder {
+class FieldConfigListBuilder extends ConfigEntityListBuilder {
/**
* The entity manager.
@@ -49,7 +49,7 @@ public static function createInstance(ContainerInterface $container, EntityTypeI
* {@inheritdoc}
*/
public function render() {
- // The actual field instance config overview is rendered by
+ // The actual field config overview is rendered by
// \Drupal\field_ui\FieldOverview, so we should not use this class to build
// lists.
throw new \Exception('This class is only used for operations and not for building lists.');
@@ -59,16 +59,16 @@ public function render() {
* {@inheritdoc}
*/
public function getDefaultOperations(EntityInterface $entity) {
- /** @var \Drupal\field\FieldInstanceConfigInterface $entity */
+ /** @var \Drupal\field\FieldConfigInterface $entity */
$operations = parent::getDefaultOperations($entity);
$operations['storage-settings'] = array(
- 'title' => $this->t('Field settings'),
+ 'title' => $this->t('Storage settings'),
'weight' => 20,
- 'attributes' => array('title' => $this->t('Edit field settings.')),
+ 'attributes' => array('title' => $this->t('Edit storage settings.')),
) + $entity->urlInfo('storage-edit-form')->toArray();
- $operations['edit']['attributes']['title'] = $this->t('Edit instance settings.');
- $operations['delete']['attributes']['title'] = $this->t('Delete instance.');
+ $operations['edit']['attributes']['title'] = $this->t('Edit field settings.');
+ $operations['delete']['attributes']['title'] = $this->t('Delete field.');
return $operations;
}
diff --git a/core/modules/field_ui/src/FieldOverview.php b/core/modules/field_ui/src/FieldOverview.php
index 6d5f15f..d5abb97 100644
--- a/core/modules/field_ui/src/FieldOverview.php
+++ b/core/modules/field_ui/src/FieldOverview.php
@@ -17,7 +17,7 @@
use Drupal\field_ui\OverviewBase;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
/**
* Field UI field overview form.
@@ -82,8 +82,8 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
parent::buildForm($form, $form_state, $entity_type_id, $bundle);
// Gather bundle information.
- $instances = array_filter(\Drupal::entityManager()->getFieldDefinitions($this->entity_type, $this->bundle), function ($field_definition) {
- return $field_definition instanceof FieldInstanceConfigInterface;
+ $fields = array_filter(\Drupal::entityManager()->getFieldDefinitions($this->entity_type, $this->bundle), function ($field_definition) {
+ return $field_definition instanceof FieldConfigInterface;
});
$field_types = $this->fieldTypeManager->getDefinitions();
@@ -93,7 +93,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
$form += array(
'#entity_type' => $this->entity_type,
'#bundle' => $this->bundle,
- '#fields' => array_keys($instances),
+ '#fields' => array_keys($fields),
);
$table = array(
@@ -116,21 +116,21 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
);
// Fields.
- foreach ($instances as $name => $instance) {
- $field_storage = $instance->getFieldStorageDefinition();
+ foreach ($fields as $name => $field) {
+ $field_storage = $field->getFieldStorageDefinition();
$route_parameters = array(
$this->bundleEntityType => $this->bundle,
- 'field_instance_config' => $instance->id(),
+ 'field_config' => $field->id(),
);
$table[$name] = array(
'#attributes' => array(
'id' => drupal_html_class($name),
),
'label' => array(
- '#markup' => String::checkPlain($instance->getLabel()),
+ '#markup' => String::checkPlain($field->getLabel()),
),
'field_name' => array(
- '#markup' => $instance->getName(),
+ '#markup' => $field->getName(),
),
'type' => array(
'#type' => 'link',
@@ -143,7 +143,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
$table[$name]['operations']['data'] = array(
'#type' => 'operations',
- '#links' => $this->entityManager->getListBuilder('field_instance_config')->getOperations($instance),
+ '#links' => $this->entityManager->getListBuilder('field_config')->getOperations($field),
);
if (!empty($field_storage->locked)) {
@@ -375,7 +375,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
'type' => $values['type'],
'translatable' => $values['translatable'],
);
- $instance = array(
+ $field = array(
'field_name' => $values['field_name'],
'entity_type' => $this->entity_type,
'bundle' => $this->bundle,
@@ -384,11 +384,11 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
'translatable' => FALSE,
);
- // Create the field and instance.
+ // Create the field storage and field.
try {
$this->entityManager->getStorage('field_storage_config')->create($field_storage)->save();
- $new_instance = $this->entityManager->getStorage('field_instance_config')->create($instance);
- $new_instance->save();
+ $new_field = $this->entityManager->getStorage('field_config')->create($field);
+ $new_field->save();
// Make sure the field is displayed in the 'default' form mode (using
// default widget and settings). It stays hidden for other form modes
@@ -408,17 +408,17 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
// configured for new fields.
$route_parameters = array(
$this->bundleEntityType => $this->bundle,
- 'field_instance_config' => $new_instance->id(),
+ 'field_config' => $new_field->id(),
);
$destinations[] = array('route_name' => 'field_ui.storage_edit_' . $this->entity_type, 'route_parameters' => $route_parameters);
- $destinations[] = array('route_name' => 'field_ui.instance_edit_' . $this->entity_type, 'route_parameters' => $route_parameters);
+ $destinations[] = array('route_name' => 'field_ui.field_edit_' . $this->entity_type, 'route_parameters' => $route_parameters);
// Store new field information for any additional submit handlers.
$form_state['fields_added']['_add_new_field'] = $values['field_name'];
}
catch (\Exception $e) {
$error = TRUE;
- drupal_set_message($this->t('There was a problem creating field %label: !message', array('%label' => $instance['label'], '!message' => $e->getMessage())), 'error');
+ drupal_set_message($this->t('There was a problem creating field %label: !message', array('%label' => $field['label'], '!message' => $e->getMessage())), 'error');
}
}
@@ -431,7 +431,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
drupal_set_message($this->t('The field %label cannot be added because it is locked.', array('%label' => $values['label'])), 'error');
}
else {
- $instance = array(
+ $field = array(
'field_name' => $field_name,
'entity_type' => $this->entity_type,
'bundle' => $this->bundle,
@@ -439,8 +439,8 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
);
try {
- $new_instance = $this->entityManager->getStorage('field_instance_config')->create($instance);
- $new_instance->save();
+ $new_field = $this->entityManager->getStorage('field_config')->create($field);
+ $new_field->save();
// Make sure the field is displayed in the 'default' form mode (using
// default widget and settings). It stays hidden for other form modes
@@ -457,18 +457,18 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
->save();
$destinations[] = array(
- 'route_name' => 'field_ui.instance_edit_' . $this->entity_type,
+ 'route_name' => 'field_ui.field_edit_' . $this->entity_type,
'route_parameters' => array(
$this->bundleEntityType => $this->bundle,
- 'field_instance_config' => $new_instance->id(),
+ 'field_config' => $new_field->id(),
),
);
// Store new field information for any additional submit handlers.
- $form_state['fields_added']['_add_existing_field'] = $instance['field_name'];
+ $form_state['fields_added']['_add_existing_field'] = $field['field_name'];
}
catch (\Exception $e) {
$error = TRUE;
- drupal_set_message($this->t('There was a problem creating field instance %label: @message.', array('%label' => $instance['label'], '@message' => $e->getMessage())), 'error');
+ drupal_set_message($this->t('There was a problem creating field %label: @message.', array('%label' => $field['label'], '@message' => $e->getMessage())), 'error');
}
}
}
@@ -492,35 +492,35 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
protected function getExistingFieldOptions() {
$options = array();
- // Collect candidate field instances: all instances of fields for this
+ // Collect candidate fields: all fields of field storages for this
// entity type that are not already present in the current bundle.
$field_map = \Drupal::entityManager()->getFieldMap();
- $instance_ids = array();
+ $field_ids = array();
if (!empty($field_map[$this->entity_type])) {
foreach ($field_map[$this->entity_type] as $field_name => $data) {
if (!in_array($this->bundle, $data['bundles'])) {
$bundle = reset($data['bundles']);
- $instance_ids[] = $this->entity_type . '.' . $bundle . '.' . $field_name;
+ $field_ids[] = $this->entity_type . '.' . $bundle . '.' . $field_name;
}
}
}
- // Load the instances and build the list of options.
- if ($instance_ids) {
+ // Load the fields and build the list of options.
+ if ($field_ids) {
$field_types = $this->fieldTypeManager->getDefinitions();
- $instances = $this->entityManager->getStorage('field_instance_config')->loadMultiple($instance_ids);
- foreach ($instances as $instance) {
+ $fields = $this->entityManager->getStorage('field_config')->loadMultiple($field_ids);
+ foreach ($fields as $field) {
// Do not show:
// - locked fields,
// - fields that should not be added via user interface.
- $field_type = $instance->getType();
- $field_storage = $instance->getFieldStorageDefinition();
+ $field_type = $field->getType();
+ $field_storage = $field->getFieldStorageDefinition();
if (empty($field_storage->locked) && empty($field_types[$field_type]['no_ui'])) {
- $options[$instance->getName()] = array(
+ $options[$field->getName()] = array(
'type' => $field_type,
'type_label' => $field_types[$field_type]['label'],
- 'field' => $instance->getName(),
- 'label' => $instance->getLabel(),
+ 'field' => $field->getName(),
+ 'label' => $field->getLabel(),
);
}
}
diff --git a/core/modules/field_ui/src/Form/FieldInstanceConfigDeleteForm.php b/core/modules/field_ui/src/Form/FieldConfigDeleteForm.php
similarity index 89%
rename from core/modules/field_ui/src/Form/FieldInstanceConfigDeleteForm.php
rename to core/modules/field_ui/src/Form/FieldConfigDeleteForm.php
index 97470db..4599954 100644
--- a/core/modules/field_ui/src/Form/FieldInstanceConfigDeleteForm.php
+++ b/core/modules/field_ui/src/Form/FieldConfigDeleteForm.php
@@ -2,7 +2,7 @@
/**
* @file
- * Contains \Drupal\field_ui\Form\FieldInstanceConfigDeleteForm.
+ * Contains \Drupal\field_ui\Form\FieldConfigDeleteForm.
*/
namespace Drupal\field_ui\Form;
@@ -14,9 +14,9 @@
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
- * Provides a form for removing a field instance from a bundle.
+ * Provides a form for removing a field from a bundle.
*/
-class FieldInstanceConfigDeleteForm extends EntityConfirmFormBase {
+class FieldConfigDeleteForm extends EntityConfirmFormBase {
/**
* The entity manager.
@@ -26,7 +26,7 @@ class FieldInstanceConfigDeleteForm extends EntityConfirmFormBase {
protected $entityManager;
/**
- * Constructs a new FieldInstanceConfigDeleteForm object.
+ * Constructs a new FieldConfigDeleteForm object.
*
* @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager
* The entity manager.
@@ -88,7 +88,7 @@ public function submit(array $form, FormStateInterface $form_state) {
// purged. In the case that a field has minimal or no content, a single call
// to field_purge_batch() will remove it from the system. Call this with a
// low batch limit to avoid administrators having to wait for cron runs when
- // removing instances that meet this criteria.
+ // removing fields that meet this criteria.
field_purge_batch(10);
}
diff --git a/core/modules/field_ui/src/Form/FieldInstanceEditForm.php b/core/modules/field_ui/src/Form/FieldEditForm.php
similarity index 54%
rename from core/modules/field_ui/src/Form/FieldInstanceEditForm.php
rename to core/modules/field_ui/src/Form/FieldEditForm.php
index bc72248..1dd72e3 100644
--- a/core/modules/field_ui/src/Form/FieldInstanceEditForm.php
+++ b/core/modules/field_ui/src/Form/FieldEditForm.php
@@ -2,7 +2,7 @@
/**
* @file
- * Contains \Drupal\field_ui\Form\FieldInstanceEditForm.
+ * Contains \Drupal\field_ui\Form\FieldEditForm.
*/
namespace Drupal\field_ui\Form;
@@ -11,21 +11,21 @@
use Drupal\Core\Form\FormBase;
use Drupal\Component\Utility\String;
use Drupal\Core\Form\FormStateInterface;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
use Drupal\field_ui\FieldUI;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
- * Provides a form for the field instance settings form.
+ * Provides a form for the field settings form.
*/
-class FieldInstanceEditForm extends FormBase {
+class FieldEditForm extends FormBase {
/**
- * The field instance being edited.
+ * The field being edited.
*
- * @var \Drupal\field\FieldInstanceConfigInterface
+ * @var \Drupal\field\FieldConfigInterface
*/
- protected $instance;
+ protected $field;
/**
* The entity manager.
@@ -35,7 +35,7 @@ class FieldInstanceEditForm extends FormBase {
protected $entityManager;
/**
- * Constructs a new field instance form.
+ * Constructs a new field form.
*
* @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager
* The entity manager.
@@ -57,86 +57,86 @@ public static function create(ContainerInterface $container) {
* {@inheritdoc}
*/
public function getFormId() {
- return 'field_ui_field_instance_edit_form';
+ return 'field_ui_field_edit_form';
}
/**
* {@inheritdoc}
*/
- public function buildForm(array $form, FormStateInterface $form_state, FieldInstanceConfigInterface $field_instance_config = NULL) {
- $this->instance = $form_state['instance'] = $field_instance_config;
+ public function buildForm(array $form, FormStateInterface $form_state, FieldConfigInterface $field_config = NULL) {
+ $this->field = $form_state['field'] = $field_config;
- $bundle = $this->instance->bundle;
- $entity_type = $this->instance->entity_type;
- $field_storage = $this->instance->getFieldStorageDefinition();
+ $bundle = $this->field->bundle;
+ $entity_type = $this->field->entity_type;
+ $field_storage = $this->field->getFieldStorageDefinition();
$bundles = entity_get_bundles();
- $form_title = $this->t('%instance settings for %bundle', array(
- '%instance' => $this->instance->getLabel(),
+ $form_title = $this->t('%field settings for %bundle', array(
+ '%field' => $this->field->getLabel(),
'%bundle' => $bundles[$entity_type][$bundle]['label'],
));
$form['#title'] = $form_title;
$form['#field'] = $field_storage;
// Create an arbitrary entity object (used by the 'default value' widget).
- $ids = (object) array('entity_type' => $this->instance->entity_type, 'bundle' => $this->instance->bundle, 'entity_id' => NULL);
+ $ids = (object) array('entity_type' => $this->field->entity_type, 'bundle' => $this->field->bundle, 'entity_id' => NULL);
$form['#entity'] = _field_create_entity_from_ids($ids);
- $items = $form['#entity']->get($this->instance->getName());
+ $items = $form['#entity']->get($this->field->getName());
if (!empty($field_storage->locked)) {
$form['locked'] = array(
- '#markup' => $this->t('The field %field is locked and cannot be edited.', array('%field' => $this->instance->getLabel())),
+ '#markup' => $this->t('The field %field is locked and cannot be edited.', array('%field' => $this->field->getLabel())),
);
return $form;
}
- // Create a form structure for the instance values.
- $form['instance'] = array(
+ // Create a form structure for the field values.
+ $form['field'] = array(
'#tree' => TRUE,
);
- // Build the non-configurable instance values.
- $form['instance']['field_name'] = array(
+ // Build the non-configurable field values.
+ $form['field']['field_name'] = array(
'#type' => 'value',
- '#value' => $this->instance->getName(),
+ '#value' => $this->field->getName(),
);
- $form['instance']['entity_type'] = array(
+ $form['field']['entity_type'] = array(
'#type' => 'value',
'#value' => $entity_type,
);
- $form['instance']['bundle'] = array(
+ $form['field']['bundle'] = array(
'#type' => 'value',
'#value' => $bundle,
);
- // Build the configurable instance values.
- $form['instance']['label'] = array(
+ // Build the configurable field values.
+ $form['field']['label'] = array(
'#type' => 'textfield',
'#title' => $this->t('Label'),
- '#default_value' => $this->instance->getLabel() ?: $field_storage->getName(),
+ '#default_value' => $this->field->getLabel() ?: $field_storage->getName(),
'#required' => TRUE,
'#weight' => -20,
);
- $form['instance']['description'] = array(
+ $form['field']['description'] = array(
'#type' => 'textarea',
'#title' => $this->t('Help text'),
- '#default_value' => $this->instance->getDescription(),
+ '#default_value' => $this->field->getDescription(),
'#rows' => 5,
'#description' => $this->t('Instructions to present to the user below this field on the editing form.
Allowed HTML tags: @tags', array('@tags' => _field_filter_xss_display_allowed_tags())) . '
' . $this->t('This field supports tokens.'),
'#weight' => -10,
);
- $form['instance']['required'] = array(
+ $form['field']['required'] = array(
'#type' => 'checkbox',
'#title' => $this->t('Required field'),
- '#default_value' => $this->instance->isRequired(),
+ '#default_value' => $this->field->isRequired(),
'#weight' => -5,
);
- // Add instance settings for the field type.
- $form['instance']['settings'] = $items[0]->instanceSettingsForm($form, $form_state);
- $form['instance']['settings']['#weight'] = 10;
+ // Add field settings for the field type.
+ $form['field']['settings'] = $items[0]->fieldSettingsForm($form, $form_state);
+ $form['field']['settings']['#weight'] = 10;
// Add handling for default value.
if ($element = $items->defaultValuesForm($form, $form_state)) {
@@ -146,7 +146,8 @@ public function buildForm(array $form, FormStateInterface $form_state, FieldInst
'#open' => TRUE,
'#description' => $this->t('The default value for this field, used when creating new content.'),
));
- $form['instance']['default_value'] = $element;
+
+ $form['field']['default_value'] = $element;
}
$form['actions'] = array('#type' => 'actions');
@@ -166,9 +167,9 @@ public function buildForm(array $form, FormStateInterface $form_state, FieldInst
* {@inheritdoc}
*/
public function validateForm(array &$form, FormStateInterface $form_state) {
- if (isset($form['instance']['default_value'])) {
- $items = $form['#entity']->get($this->instance->getName());
- $items->defaultValuesFormValidate($form['instance']['default_value'], $form, $form_state);
+ if (isset($form['field']['default_value'])) {
+ $items = $form['#entity']->get($this->field->getName());
+ $items->defaultValuesFormValidate($form['field']['default_value'], $form, $form_state);
}
}
@@ -178,19 +179,19 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
public function submitForm(array &$form, FormStateInterface $form_state) {
// Handle the default value.
$default_value = array();
- if (isset($form['instance']['default_value'])) {
- $items = $form['#entity']->get($this->instance->getName());
- $default_value = $items->defaultValuesFormSubmit($form['instance']['default_value'], $form, $form_state);
+ if (isset($form['field']['default_value'])) {
+ $items = $form['#entity']->get($this->field->getName());
+ $default_value = $items->defaultValuesFormSubmit($form['field']['default_value'], $form, $form_state);
}
- $this->instance->default_value = $default_value;
+ $this->field->default_value = $default_value;
- // Merge incoming values into the instance.
- foreach ($form_state->getValue('instance') as $key => $value) {
- $this->instance->$key = $value;
+ // Merge incoming values into the field.
+ foreach ($form_state->getValue('field') as $key => $value) {
+ $this->field->$key = $value;
}
- $this->instance->save();
+ $this->field->save();
- drupal_set_message($this->t('Saved %label configuration.', array('%label' => $this->instance->getLabel())));
+ drupal_set_message($this->t('Saved %label configuration.', array('%label' => $this->field->getLabel())));
$request = $this->getRequest();
if (($destinations = $request->query->get('destinations')) && $next_destination = FieldUI::getNextDestination($destinations)) {
@@ -198,12 +199,12 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
$form_state->setRedirectUrl($next_destination);
}
else {
- $form_state->setRedirectUrl(FieldUI::getOverviewRouteInfo($this->instance->entity_type, $this->instance->bundle));
+ $form_state->setRedirectUrl(FieldUI::getOverviewRouteInfo($this->field->entity_type, $this->field->bundle));
}
}
/**
- * Redirects to the field instance deletion form.
+ * Redirects to the field deletion form.
*/
public function delete(array &$form, FormStateInterface $form_state) {
$destination = array();
@@ -212,28 +213,28 @@ public function delete(array &$form, FormStateInterface $form_state) {
$destination = drupal_get_destination();
$request->query->remove('destination');
}
- $entity_type = $this->entityManager->getDefinition($this->instance->entity_type);
+ $entity_type = $this->entityManager->getDefinition($this->field->entity_type);
$form_state->setRedirect(
- 'field_ui.delete_' . $this->instance->entity_type,
+ 'field_ui.delete_' . $this->field->entity_type,
array(
- $entity_type->getBundleEntityType() => $this->instance->bundle,
- 'field_instance_config' => $this->instance->id(),
+ $entity_type->getBundleEntityType() => $this->field->bundle,
+ 'field_config' => $this->field->id(),
),
array('query' => $destination)
);
}
/**
- * The _title_callback for the field instance settings form.
+ * The _title_callback for the field settings form.
*
- * @param \Drupal\field\FieldInstanceConfigInterface $field_instance_config
- * The field instance.
+ * @param \Drupal\field\FieldConfigInterface $field_config
+ * The field.
*
* @return string
- * The label of the field instance.
+ * The label of the field.
*/
- public function getTitle(FieldInstanceConfigInterface $field_instance_config) {
- return String::checkPlain($field_instance_config->label());
+ public function getTitle(FieldConfigInterface $field_config) {
+ return String::checkPlain($field_config->label());
}
}
diff --git a/core/modules/field_ui/src/Form/FieldStorageEditForm.php b/core/modules/field_ui/src/Form/FieldStorageEditForm.php
index 903a614..05c4fbb 100644
--- a/core/modules/field_ui/src/Form/FieldStorageEditForm.php
+++ b/core/modules/field_ui/src/Form/FieldStorageEditForm.php
@@ -12,7 +12,7 @@
use Drupal\Core\Form\FormBase;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\TypedData\TypedDataManager;
-use Drupal\field\FieldInstanceConfigInterface;
+use Drupal\field\FieldConfigInterface;
use Drupal\field_ui\FieldUI;
use Symfony\Component\DependencyInjection\ContainerInterface;
@@ -22,11 +22,11 @@
class FieldStorageEditForm extends FormBase {
/**
- * The field instance being edited.
+ * The field being edited.
*
- * @var \Drupal\field\FieldInstanceConfigInterface
+ * @var \Drupal\field\FieldConfigInterface
*/
- protected $instance;
+ protected $field;
/**
* The entity manager.
@@ -75,15 +75,15 @@ public static function create(ContainerInterface $container) {
/**
* {@inheritdoc}
*/
- public function buildForm(array $form, FormStateInterface $form_state, FieldInstanceConfigInterface $field_instance_config = NULL) {
- $this->instance = $form_state['instance'] = $field_instance_config;
- $form['#title'] = $this->instance->label();
+ public function buildForm(array $form, FormStateInterface $form_state, FieldConfigInterface $field_config = NULL) {
+ $this->field = $field_config;
+ $form['#title'] = $this->field->label();
- $field_storage = $this->instance->getFieldStorageDefinition();
+ $field_storage = $this->field->getFieldStorageDefinition();
$form['#field'] = $field_storage;
- $form['#bundle'] = $this->instance->bundle;
+ $form['#bundle'] = $this->field->bundle;
- $description = '
' . $this->t('These settings apply to the %field field everywhere it is used. These settings impact the way that data is stored in the database and cannot be changed once data has been created.', array('%field' => $this->instance->label())) . '
'; + $description = '' . $this->t('These settings apply to the %field field everywhere it is used. These settings impact the way that data is stored in the database and cannot be changed once data has been created.', array('%field' => $this->field->label())) . '
'; // Create a form structure for the field values. $form['field'] = array( @@ -148,7 +148,7 @@ public function buildForm(array $form, FormStateInterface $form_state, FieldInst ); // Create an arbitrary entity object, so that we can have an instantiated // FieldItem. - $ids = (object) array('entity_type' => $this->instance->entity_type, 'bundle' => $this->instance->bundle, 'entity_id' => NULL); + $ids = (object) array('entity_type' => $this->field->entity_type, 'bundle' => $this->field->bundle, 'entity_id' => NULL); $entity = _field_create_entity_from_ids($ids); $form['field']['settings'] += $entity->get($field_storage->getName())->first()->settingsForm($form, $form_state, $field_storage->hasData()); @@ -187,7 +187,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) { unset($field_values['container']); // Merge incoming form values into the existing field. - $field_storage = $this->instance->getFieldStorageDefinition(); + $field_storage = $this->field->getFieldStorageDefinition(); foreach ($field_values as $key => $value) { $field_storage->{$key} = $value; } @@ -195,18 +195,18 @@ public function submitForm(array &$form, FormStateInterface $form_state) { // Update the field. try { $field_storage->save(); - drupal_set_message($this->t('Updated field %label field settings.', array('%label' => $this->instance->label()))); + drupal_set_message($this->t('Updated field %label field settings.', array('%label' => $this->field->label()))); $request = $this->getRequest(); if (($destinations = $request->query->get('destinations')) && $next_destination = FieldUI::getNextDestination($destinations)) { $request->query->remove('destinations'); $form_state->setRedirectUrl($next_destination); } else { - $form_state->setRedirectUrl(FieldUI::getOverviewRouteInfo($this->instance->entity_type, $this->instance->bundle)); + $form_state->setRedirectUrl(FieldUI::getOverviewRouteInfo($this->field->entity_type, $this->field->bundle)); } } catch (\Exception $e) { - drupal_set_message($this->t('Attempt to update field %label failed: %message.', array('%label' => $this->instance->label(), '%message' => $e->getMessage())), 'error'); + drupal_set_message($this->t('Attempt to update field %label failed: %message.', array('%label' => $this->field->label(), '%message' => $e->getMessage())), 'error'); } } diff --git a/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php b/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php index 758a98b..788392c 100644 --- a/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php +++ b/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php @@ -93,18 +93,18 @@ public function getDerivativeDefinitions($base_plugin_definition) { 'base_route' => "field_ui.overview_$entity_type_id", ); - // Field instance edit tab. - $this->derivatives["instance_edit_$entity_type_id"] = array( - 'route_name' => "field_ui.instance_edit_$entity_type_id", + // Field edit tab. + $this->derivatives["field_edit_$entity_type_id"] = array( + 'route_name' => "field_ui.field_edit_$entity_type_id", 'title' => $this->t('Edit'), - 'base_route' => "field_ui.instance_edit_$entity_type_id", + 'base_route' => "field_ui.field_edit_$entity_type_id", ); // Field settings tab. $this->derivatives["field_edit_$entity_type_id"] = array( 'route_name' => "field_ui.storage_edit_$entity_type_id", 'title' => $this->t('Field settings'), - 'base_route' => "field_ui.instance_edit_$entity_type_id", + 'base_route' => "field_ui.field_edit_$entity_type_id", ); // View and form modes secondary tabs. diff --git a/core/modules/field_ui/src/Routing/RouteSubscriber.php b/core/modules/field_ui/src/Routing/RouteSubscriber.php index 4b371ab..5fe9f36 100644 --- a/core/modules/field_ui/src/Routing/RouteSubscriber.php +++ b/core/modules/field_ui/src/Routing/RouteSubscriber.php @@ -56,28 +56,28 @@ protected function alterRoutes(RouteCollection $collection) { } $route = new Route( - "$path/fields/{field_instance_config}", + "$path/fields/{field_config}", array( - '_form' => '\Drupal\field_ui\Form\FieldInstanceEditForm', - '_title_callback' => '\Drupal\field_ui\Form\FieldInstanceEditForm::getTitle', + '_form' => '\Drupal\field_ui\Form\FieldEditForm', + '_title_callback' => '\Drupal\field_ui\Form\FieldEditForm::getTitle', ), - array('_entity_access' => 'field_instance_config.update'), + array('_entity_access' => 'field_config.update'), $options ); - $collection->add("field_ui.instance_edit_$entity_type_id", $route); + $collection->add("field_ui.field_edit_$entity_type_id", $route); $route = new Route( - "$path/fields/{field_instance_config}/storage", + "$path/fields/{field_config}/storage", array('_form' => '\Drupal\field_ui\Form\FieldStorageEditForm'), - array('_entity_access' => 'field_instance_config.update'), + array('_entity_access' => 'field_config.update'), $options ); $collection->add("field_ui.storage_edit_$entity_type_id", $route); $route = new Route( - "$path/fields/{field_instance_config}/delete", - array('_entity_form' => 'field_instance_config.delete'), - array('_entity_access' => 'field_instance_config.delete'), + "$path/fields/{field_config}/delete", + array('_entity_form' => 'field_config.delete'), + array('_entity_access' => 'field_config.delete'), $options ); $collection->add("field_ui.delete_$entity_type_id", $route); diff --git a/core/modules/field_ui/src/Tests/FieldUiTestBase.php b/core/modules/field_ui/src/Tests/FieldUiTestBase.php index 6157893..962acec 100644 --- a/core/modules/field_ui/src/Tests/FieldUiTestBase.php +++ b/core/modules/field_ui/src/Tests/FieldUiTestBase.php @@ -56,14 +56,14 @@ protected function setUp() { * @param $initial_edit * $edit parameter for drupalPostForm() on the first step ('Manage fields' * screen). + * @param $storage_edit + * $edit parameter for drupalPostForm() on the second step ('Storage + * settings' form). * @param $field_edit - * $edit parameter for drupalPostForm() on the second step ('Field settings' - * form). - * @param $instance_edit - * $edit parameter for drupalPostForm() on the third step ('Instance settings' + * $edit parameter for drupalPostForm() on the third step ('Field settings' * form). */ - function fieldUIAddNewField($bundle_path, $initial_edit, $field_edit = array(), $instance_edit = array()) { + function fieldUIAddNewField($bundle_path, $initial_edit, $storage_edit = array(), $field_edit = array()) { // Use 'test_field' field type by default. $initial_edit += array( 'fields[_add_new_field][type]' => 'test_field', @@ -76,12 +76,12 @@ function fieldUIAddNewField($bundle_path, $initial_edit, $field_edit = array(), // Test Breadcrumbs. $this->assertLink($label, 0, 'Field label is correct in the breadcrumb of the storage settings page.'); - // Second step : 'Field settings' form. - $this->drupalPostForm(NULL, $field_edit, t('Save field settings')); - $this->assertRaw(t('Updated field %label field settings.', array('%label' => $label)), 'Redirected to instance and widget settings page.'); + // Second step : 'Storage settings' form. + $this->drupalPostForm(NULL, $storage_edit, t('Save field settings')); + $this->assertRaw(t('Updated field %label field settings.', array('%label' => $label)), 'Redirected to field settings page.'); - // Third step : 'Instance settings' form. - $this->drupalPostForm(NULL, $instance_edit, t('Save settings')); + // Third step : 'Field settings' form. + $this->drupalPostForm(NULL, $field_edit, t('Save settings')); $this->assertRaw(t('Saved %label configuration.', array('%label' => $label)), 'Redirected to "Manage fields" page.'); // Check that the field appears in the overview form. @@ -96,18 +96,18 @@ function fieldUIAddNewField($bundle_path, $initial_edit, $field_edit = array(), * @param $initial_edit * $edit parameter for drupalPostForm() on the first step ('Manage fields' * screen). - * @param $instance_edit - * $edit parameter for drupalPostForm() on the second step ('Instance settings' + * @param $field_edit + * $edit parameter for drupalPostForm() on the second step ('Field settings' * form). */ - function fieldUIAddExistingField($bundle_path, $initial_edit, $instance_edit = array()) { + function fieldUIAddExistingField($bundle_path, $initial_edit, $field_edit = array()) { $label = $initial_edit['fields[_add_existing_field][label]']; // First step : 'Re-use existing field' on the 'Manage fields' page. $this->drupalPostForm("$bundle_path/fields", $initial_edit, t('Save')); - // Second step : 'Instance settings' form. - $this->drupalPostForm(NULL, $instance_edit, t('Save settings')); + // Second step : 'Field settings' form. + $this->drupalPostForm(NULL, $field_edit, t('Save settings')); $this->assertRaw(t('Saved %label configuration.', array('%label' => $label)), 'Redirected to "Manage fields" page.'); // Check that the field appears in the overview form. @@ -115,10 +115,10 @@ function fieldUIAddExistingField($bundle_path, $initial_edit, $instance_edit = a } /** - * Deletes a field instance through the Field UI. + * Deletes a field through the Field UI. * * @param $bundle_path - * Admin path of the bundle that the field instance is to be deleted from. + * Admin path of the bundle that the field is to be deleted from. * @param $field_name * The name of the field. * @param $label diff --git a/core/modules/field_ui/src/Tests/ManageDisplayTest.php b/core/modules/field_ui/src/Tests/ManageDisplayTest.php index 24ccc7d..8cb0a6f 100644 --- a/core/modules/field_ui/src/Tests/ManageDisplayTest.php +++ b/core/modules/field_ui/src/Tests/ManageDisplayTest.php @@ -40,7 +40,8 @@ function testFormatterUI() { ); $this->fieldUIAddNewField($manage_fields, $edit); - // Clear the test-side cache and get the saved field instance. + // Get the display options (formatter and settings) that were automatically + // assigned for the 'default' display. $display = entity_get_display('node', $this->type, 'default'); $display_options = $display->getComponent('field_test'); $format = $display_options['type']; @@ -157,7 +158,8 @@ public function testWidgetUI() { ); $this->fieldUIAddNewField($manage_fields, $edit); - // Clear the test-side cache and get the saved field instance. + // Get the display options (formatter and settings) that were automatically + // assigned for the 'default' display. $display = entity_get_form_display('node', $this->type, 'default'); $display_options = $display->getComponent('field_test'); $widget_type = $display_options['type']; @@ -330,7 +332,7 @@ public function testViewModeLocalTasks() { } /** - * Tests that field instances with no explicit display settings do not break. + * Tests that fields with no explicit display settings do not break. */ function testNonInitializedFields() { // Create a test field. diff --git a/core/modules/field_ui/src/Tests/ManageFieldsTest.php b/core/modules/field_ui/src/Tests/ManageFieldsTest.php index c137308..b745afa 100644 --- a/core/modules/field_ui/src/Tests/ManageFieldsTest.php +++ b/core/modules/field_ui/src/Tests/ManageFieldsTest.php @@ -10,7 +10,7 @@ use Drupal\Component\Utility\String; use Drupal\Core\Field\FieldStorageDefinitionInterface; use Drupal\Core\Language\LanguageInterface; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\field\Entity\FieldStorageConfig; /** @@ -46,7 +46,7 @@ protected function setUp() { 'type' => 'taxonomy_term_reference', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'field_' . $vocabulary->id(), 'entity_type' => 'node', 'label' => 'Tags', @@ -71,7 +71,7 @@ function testCRUDFields() { $this->addExistingField(); $this->cardinalitySettings(); $this->fieldListAdminPage(); - $this->deleteFieldInstance(); + $this->deleteField(); } /** @@ -101,7 +101,7 @@ function manageFieldsPage($type = '') { $this->assertText($element, format_string('"@element" was found.', array('@element' => $element))); } - // Assert entity operations for all field instances. + // Assert entity operations for all fields. $result = $this->xpath('//ul[@class = "dropbutton"]/li/a'); $url = base_path() . "admin/structure/types/manage/$type/fields/node.$type.body"; $this->assertIdentical($url, (string) $result[0]['href']); @@ -112,8 +112,8 @@ function manageFieldsPage($type = '') { /** * Tests adding a new field. * - * @todo Assert properties can bet set in the form and read back in $field and - * $instances. + * @todo Assert properties can bet set in the form and read back in + * $field_storage and $fields. */ function createField() { // Create a test field. @@ -128,9 +128,9 @@ function createField() { * Tests editing an existing field. */ function updateField() { - $instance_id = 'node.' . $this->type . '.' . $this->field_name; + $field_id = 'node.' . $this->type . '.' . $this->field_name; // Go to the field edit page. - $this->drupalGet('admin/structure/types/manage/' . $this->type . '/fields/' . $instance_id . '/storage'); + $this->drupalGet('admin/structure/types/manage/' . $this->type . '/fields/' . $field_id . '/storage'); // Populate the field settings with new settings. $string = 'updated dummy test string'; @@ -139,10 +139,10 @@ function updateField() { ); $this->drupalPostForm(NULL, $edit, t('Save field settings')); - // Go to the field instance edit page. - $this->drupalGet('admin/structure/types/manage/' . $this->type . '/fields/' . $instance_id); + // Go to the field edit page. + $this->drupalGet('admin/structure/types/manage/' . $this->type . '/fields/' . $field_id); $edit = array( - 'instance[settings][test_instance_setting]' => $string, + 'field[settings][test_field_setting]' => $string, ); $this->assertText(t('Default value'), 'Default value heading is shown'); $this->drupalPostForm(NULL, $edit, t('Save settings')); @@ -215,12 +215,12 @@ function cardinalitySettings() { } /** - * Tests deleting a field from the instance edit form. + * Tests deleting a field from the field edit form. */ - protected function deleteFieldInstance() { - // Delete the field instance. - $instance_id = 'node.' . $this->type . '.' . $this->field_name; - $this->drupalGet('admin/structure/types/manage/' . $this->type . '/fields/' . $instance_id); + protected function deleteField() { + // Delete the field. + $field_id = 'node.' . $this->type . '.' . $this->field_name; + $this->drupalGet('admin/structure/types/manage/' . $this->type . '/fields/' . $field_id); $this->drupalPostForm(NULL, array(), t('Delete field')); $this->assertResponse(200); } @@ -229,22 +229,22 @@ protected function deleteFieldInstance() { * Asserts field settings are as expected. * * @param $bundle - * The bundle name for the instance. + * The bundle name for the field. * @param $field_name - * The field name for the instance. + * The field name for the field. * @param $string * The settings text. * @param $entity_type - * The entity type for the instance. + * The entity type for the field. */ function assertFieldSettings($bundle, $field_name, $string = 'dummy test string', $entity_type = 'node') { // Assert field storage settings. $field_storage = FieldStorageConfig::loadByName($entity_type, $field_name); $this->assertTrue($field_storage->getSetting('test_field_storage_setting') == $string, 'Field storage settings were found.'); - // Assert instance settings. - $instance = FieldInstanceConfig::loadByName($entity_type, $bundle, $field_name); - $this->assertTrue($instance->getSetting('test_instance_setting') == $string, 'Field instance settings were found.'); + // Assert field settings. + $field = FieldConfig::loadByName($entity_type, $bundle, $field_name); + $this->assertTrue($field->getSetting('test_field_setting') == $string, 'Field settings were found.'); } /** @@ -281,25 +281,25 @@ function testFieldPrefix() { * Tests that default value is correctly validated and saved. */ function testDefaultValue() { - // Create a test field and instance. + // Create a test field storage and field. $field_name = 'test'; entity_create('field_storage_config', array( 'name' => $field_name, 'entity_type' => 'node', 'type' => 'test_field' ))->save(); - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => 'node', 'bundle' => $this->type, )); - $instance->save(); + $field->save(); entity_get_form_display('node', $this->type, 'default') ->setComponent($field_name) ->save(); - $admin_path = 'admin/structure/types/manage/' . $this->type . '/fields/' . $instance->id(); + $admin_path = 'admin/structure/types/manage/' . $this->type . '/fields/' . $field->id(); $element_id = "edit-default-value-input-$field_name-0-value"; $element_name = "default_value_input[{$field_name}][0][value]"; $this->drupalGet($admin_path); @@ -314,8 +314,8 @@ function testDefaultValue() { $edit = array($element_name => '1'); $this->drupalPostForm($admin_path, $edit, t('Save settings')); $this->assertText("Saved $field_name configuration", 'The form was successfully submitted.'); - $instance = FieldInstanceConfig::loadByName('node', $this->type, $field_name); - $this->assertEqual($instance->default_value, array(array('value' => 1)), 'The default value was correctly saved.'); + $field = FieldConfig::loadByName('node', $this->type, $field_name); + $this->assertEqual($field->default_value, array(array('value' => 1)), 'The default value was correctly saved.'); // Check that the default value shows up in the form $this->drupalGet($admin_path); @@ -325,18 +325,18 @@ function testDefaultValue() { $edit = array($element_name => ''); $this->drupalPostForm(NULL, $edit, t('Save settings')); $this->assertText("Saved $field_name configuration", 'The form was successfully submitted.'); - $instance = FieldInstanceConfig::loadByName('node', $this->type, $field_name); - $this->assertEqual($instance->default_value, NULL, 'The default value was correctly saved.'); + $field = FieldConfig::loadByName('node', $this->type, $field_name); + $this->assertEqual($field->default_value, NULL, 'The default value was correctly saved.'); // Check that the default widget is used when the field is hidden. - entity_get_form_display($instance->entity_type, $instance->bundle, 'default') + entity_get_form_display($field->entity_type, $field->bundle, 'default') ->removeComponent($field_name)->save(); $this->drupalGet($admin_path); $this->assertFieldById($element_id, '', 'The default value widget was displayed when field is hidden.'); } /** - * Tests that deletion removes fields and instances as expected. + * Tests that deletion removes field storages and fields as expected. */ function testDeleteField() { // Create a new field. @@ -352,7 +352,7 @@ function testDeleteField() { $type2 = $this->drupalCreateContentType(array('name' => $type_name2, 'type' => $type_name2)); $type_name2 = $type2->type; - // Add an instance to the second node type. + // Add a field to the second node type. $bundle_path2 = 'admin/structure/types/manage/' . $type_name2; $edit2 = array( 'fields[_add_existing_field][label]' => $this->field_label, @@ -360,19 +360,19 @@ function testDeleteField() { ); $this->fieldUIAddExistingField($bundle_path2, $edit2); - // Delete the first instance. + // Delete the first field. $this->fieldUIDeleteField($bundle_path1, "node.$this->type.$this->field_name", $this->field_label, $this->type); - // Check that the field instance was deleted. - $this->assertNull(FieldInstanceConfig::loadByName('node', $this->type, $this->field_name), 'Field instance was deleted.'); + // Check that the field was deleted. + $this->assertNull(FieldConfig::loadByName('node', $this->type, $this->field_name), 'Field was deleted.'); // Check that the field storage was not deleted $this->assertNotNull(FieldStorageConfig::loadByName('node', $this->field_name), 'Field storage was not deleted.'); - // Delete the second instance. + // Delete the second field. $this->fieldUIDeleteField($bundle_path2, "node.$type_name2.$this->field_name", $this->field_label, $type_name2); - // Check that the field instance was deleted. - $this->assertNull(FieldInstanceConfig::loadByName('node', $type_name2, $this->field_name), 'Field instance was deleted.'); + // Check that the field was deleted. + $this->assertNull(FieldConfig::loadByName('node', $type_name2, $this->field_name), 'Field was deleted.'); // Check that the field storage was deleted too. $this->assertNull(FieldStorageConfig::loadByName('node', $this->field_name), 'Field storage was deleted.'); } @@ -418,7 +418,7 @@ function testLockedField() { 'locked' => TRUE )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => $this->type, ))->save(); @@ -450,31 +450,31 @@ function testHiddenFields() { $this->drupalGet($bundle_path); $this->assertFalse($this->xpath('//select[@id="edit-fields-add-new-field-type"]//option[@value="hidden_test_field"]'), "The 'add new field' select respects field types 'no_ui' property."); - // Create a field and an instance programmatically. + // Create a field storage and a field programmatically. $field_name = 'hidden_test_field'; entity_create('field_storage_config', array( 'name' => $field_name, 'entity_type' => 'node', 'type' => $field_name, ))->save(); - $instance = array( + $field = array( 'field_name' => $field_name, 'bundle' => $this->type, 'entity_type' => 'node', 'label' => t('Hidden field'), ); - entity_create('field_instance_config', $instance)->save(); + entity_create('field_config', $field)->save(); entity_get_form_display('node', $this->type, 'default') ->setComponent($field_name) ->save(); - $this->assertTrue(entity_load('field_instance_config', 'node.' . $this->type . '.' . $field_name), format_string('An instance of the field %field was created programmatically.', array('%field' => $field_name))); + $this->assertTrue(entity_load('field_config', 'node.' . $this->type . '.' . $field_name), format_string('A field of the field storage %field was created programmatically.', array('%field' => $field_name))); - // Check that the newly added instance appears on the 'Manage Fields' + // Check that the newly added field appears on the 'Manage Fields' // screen. $this->drupalGet($bundle_path); - $this->assertFieldByXPath('//table[@id="field-overview"]//tr[@id="hidden-test-field"]//td[1]', $instance['label'], 'Field was created and appears in the overview page.'); + $this->assertFieldByXPath('//table[@id="field-overview"]//tr[@id="hidden-test-field"]//td[1]', $field['label'], 'Field was created and appears in the overview page.'); - // Check that the instance does not appear in the 're-use existing field' row + // Check that the field does not appear in the 're-use existing field' row // on other bundles. $bundle_path = 'admin/structure/types/manage/article/fields/'; $this->drupalGet($bundle_path); @@ -524,7 +524,7 @@ function testDuplicateFieldName() { } /** - * Tests that deletion removes fields and instances as expected for a term. + * Tests that deletion removes field storages and fields as expected for a term. */ function testDeleteTaxonomyField() { // Create a new field. @@ -538,8 +538,8 @@ function testDeleteTaxonomyField() { // Delete the field. $this->fieldUIDeleteField($bundle_path, "taxonomy_term.tags.$this->field_name", $this->field_label, 'Tags'); - // Check that the field instance was deleted. - $this->assertNull(FieldInstanceConfig::loadByName('taxonomy_term', 'tags', $this->field_name), 'Field instance was deleted.'); + // Check that the field was deleted. + $this->assertNull(FieldConfig::loadByName('taxonomy_term', 'tags', $this->field_name), 'Field was deleted.'); // Check that the field storage was deleted too. $this->assertNull(FieldStorageConfig::loadByName('taxonomy_term', $this->field_name), 'Field storage was deleted.'); } @@ -555,7 +555,7 @@ function testHelpDescriptions() { 'type' => 'image', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'field_image', 'entity_type' => 'node', 'label' => 'Image', @@ -565,12 +565,12 @@ function testHelpDescriptions() { entity_get_form_display('node', 'article', 'default')->setComponent('field_image')->save(); $edit = array( - 'instance[description]' => 'Test with an upload field.', + 'field[description]' => 'Test with an upload field.', ); $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_image', $edit, t('Save settings')); $edit = array( - 'instance[description]' => 'Test with a non upload field.', + 'field[description]' => 'Test with a non upload field.', ); $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_tags', $edit, t('Save settings')); diff --git a/core/modules/file/config/schema/file.schema.yml b/core/modules/file/config/schema/file.schema.yml index 08634dd..79e0e13 100644 --- a/core/modules/file/config/schema/file.schema.yml +++ b/core/modules/file/config/schema/file.schema.yml @@ -43,7 +43,7 @@ field.file.value: - type: string label: 'Value' -base_file_field_instance_settings: +base_file_field_field_settings: type: mapping mapping: handler: @@ -59,8 +59,8 @@ base_file_field_instance_settings: type: string label: 'Maximum upload size' -field.file.instance_settings: - type: base_file_field_instance_settings +field.file.field_settings: + type: base_file_field_field_settings label: 'File settings' mapping: description_field: diff --git a/core/modules/file/src/Plugin/Field/FieldType/FileItem.php b/core/modules/file/src/Plugin/Field/FieldType/FileItem.php index 9f80a6f..98d40e4 100644 --- a/core/modules/file/src/Plugin/Field/FieldType/FileItem.php +++ b/core/modules/file/src/Plugin/Field/FieldType/FileItem.php @@ -42,13 +42,13 @@ public static function defaultSettings() { /** * {@inheritdoc} */ - public static function defaultInstanceSettings() { + public static function defaultFieldSettings() { return array( 'file_extensions' => 'txt', 'file_directory' => '', 'max_filesize' => '', 'description_field' => 0, - ) + parent::defaultInstanceSettings(); + ) + parent::defaultFieldSettings(); } /** @@ -149,7 +149,7 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_ /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { $element = array(); $settings = $this->getSettings(); diff --git a/core/modules/file/src/Tests/FileFieldDisplayTest.php b/core/modules/file/src/Tests/FileFieldDisplayTest.php index 6a1798d..1b11125 100644 --- a/core/modules/file/src/Tests/FileFieldDisplayTest.php +++ b/core/modules/file/src/Tests/FileFieldDisplayTest.php @@ -22,16 +22,16 @@ class FileFieldDisplayTest extends FileFieldTestBase { function testNodeDisplay() { $field_name = strtolower($this->randomMachineName()); $type_name = 'article'; - $field_settings = array( + $field_storage_settings = array( 'display_field' => '1', 'display_default' => '1', 'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, ); - $instance_settings = array( + $field_settings = array( 'description_field' => '1', ); $widget_settings = array(); - $this->createFileField($field_name, 'node', $type_name, $field_settings, $instance_settings, $widget_settings); + $this->createFileField($field_name, 'node', $type_name, $field_storage_settings, $field_settings, $widget_settings); // Create a new node *without* the file field set, and check that the field // is not shown for each node display. diff --git a/core/modules/file/src/Tests/FileFieldRSSContentTest.php b/core/modules/file/src/Tests/FileFieldRSSContentTest.php index db265c2..5da2242 100644 --- a/core/modules/file/src/Tests/FileFieldRSSContentTest.php +++ b/core/modules/file/src/Tests/FileFieldRSSContentTest.php @@ -31,11 +31,11 @@ function testFileFieldRSSContent() { 'display_field' => '1', 'display_default' => '1', ); - $instance_settings = array( + $field_settings = array( 'description_field' => '1', ); $widget_settings = array(); - $this->createFileField($field_name, 'node', $type_name, $field_settings, $instance_settings, $widget_settings); + $this->createFileField($field_name, 'node', $type_name, $field_settings, $field_settings, $widget_settings); // RSS display must be added manually. $this->drupalGet("admin/structure/types/manage/$type_name/display"); diff --git a/core/modules/file/src/Tests/FileFieldTestBase.php b/core/modules/file/src/Tests/FileFieldTestBase.php index fb9552a..388f6d8 100644 --- a/core/modules/file/src/Tests/FileFieldTestBase.php +++ b/core/modules/file/src/Tests/FileFieldTestBase.php @@ -8,7 +8,7 @@ namespace Drupal\file\Tests; use Drupal\field\Entity\FieldStorageConfig; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\file\FileInterface; use Drupal\simpletest\WebTestBase; @@ -64,12 +64,12 @@ function getLastFileId() { * The bundle that this field will be added to. * @param $storage_settings * A list of field storage settings that will be added to the defaults. - * @param $instance_settings + * @param $field_settings * A list of instance settings that will be added to the instance defaults. * @param $widget_settings * A list of widget settings that will be added to the widget defaults. */ - function createFileField($name, $entity_type, $bundle, $storage_settings = array(), $instance_settings = array(), $widget_settings = array()) { + function createFileField($name, $entity_type, $bundle, $storage_settings = array(), $field_settings = array(), $widget_settings = array()) { $field_storage = entity_create('field_storage_config', array( 'entity_type' => $entity_type, 'name' => $name, @@ -79,7 +79,7 @@ function createFileField($name, $entity_type, $bundle, $storage_settings = array )); $field_storage->save(); - $this->attachFileField($name, $entity_type, $bundle, $instance_settings, $widget_settings); + $this->attachFileField($name, $entity_type, $bundle, $field_settings, $widget_settings); return $field_storage; } @@ -94,22 +94,19 @@ function createFileField($name, $entity_type, $bundle, $storage_settings = array * The bundle this field will be added to. * @param $field_settings * A list of field settings that will be added to the defaults. - * @param $instance_settings - * A list of instance settings that will be added to the instance defaults. * @param $widget_settings * A list of widget settings that will be added to the widget defaults. */ - function attachFileField($name, $entity_type, $bundle, $instance_settings = array(), $widget_settings = array()) { - $instance = array( + function attachFileField($name, $entity_type, $bundle, $field_settings = array(), $widget_settings = array()) { + $field = array( 'field_name' => $name, 'label' => $name, 'entity_type' => $entity_type, 'bundle' => $bundle, - 'required' => !empty($instance_settings['required']), - 'settings' => array(), + 'required' => !empty($field_settings['required']), + 'settings' => $field_settings, ); - $instance['settings'] = array_merge($instance['settings'], $instance_settings); - entity_create('field_instance_config', $instance)->save(); + entity_create('field_config', $field)->save(); entity_get_form_display($entity_type, $bundle, 'default') ->setComponent($name, array( @@ -122,10 +119,10 @@ function attachFileField($name, $entity_type, $bundle, $instance_settings = arra /** * Updates an existing file field with new settings. */ - function updateFileField($name, $type_name, $instance_settings = array(), $widget_settings = array()) { - $instance = FieldInstanceConfig::loadByName('node', $type_name, $name); - $instance->settings = array_merge($instance->settings, $instance_settings); - $instance->save(); + function updateFileField($name, $type_name, $field_settings = array(), $widget_settings = array()) { + $field = FieldConfig::loadByName('node', $type_name, $name); + $field->settings = array_merge($field->settings, $field_settings); + $field->save(); entity_get_form_display('node', $type_name, 'default') ->setComponent($name, array( diff --git a/core/modules/file/src/Tests/FileFieldValidateTest.php b/core/modules/file/src/Tests/FileFieldValidateTest.php index 182ffad..bc910e0 100644 --- a/core/modules/file/src/Tests/FileFieldValidateTest.php +++ b/core/modules/file/src/Tests/FileFieldValidateTest.php @@ -8,7 +8,7 @@ namespace Drupal\file\Tests; use Drupal\Core\Field\FieldStorageDefinitionInterface; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; /** * Tests validation functions such as file type, max file size, max size per @@ -26,8 +26,8 @@ class FileFieldValidateTest extends FileFieldTestBase { function testRequired() { $type_name = 'article'; $field_name = strtolower($this->randomMachineName()); - $field = $this->createFileField($field_name, 'node', $type_name, array(), array('required' => '1')); - $instance = FieldInstanceConfig::loadByName('node', $type_name, $field_name); + $storage = $this->createFileField($field_name, 'node', $type_name, array(), array('required' => '1')); + $field = FieldConfig::loadByName('node', $type_name, $field_name); $test_file = $this->getTestFile('text'); @@ -35,7 +35,7 @@ function testRequired() { $edit = array(); $edit['title[0][value]'] = $this->randomMachineName(); $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish')); - $this->assertRaw(t('!title field is required.', array('!title' => $instance->getLabel())), 'Node save failed when required file field was empty.'); + $this->assertRaw(t('!title field is required.', array('!title' => $field->getLabel())), 'Node save failed when required file field was empty.'); // Create a new node with the uploaded file. $nid = $this->uploadNodeFile($test_file, $field_name, $type_name); @@ -48,14 +48,14 @@ function testRequired() { $this->assertFileEntryExists($node_file, 'File entry exists after uploading to the required field.'); // Try again with a multiple value field. - $field->delete(); + $storage->delete(); $this->createFileField($field_name, 'node', $type_name, array('cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED), array('required' => '1')); // Try to post a new node without uploading a file in the multivalue field. $edit = array(); $edit['title[0][value]'] = $this->randomMachineName(); $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish')); - $this->assertRaw(t('!title field is required.', array('!title' => $instance->getLabel())), 'Node save failed when required multiple value file field was empty.'); + $this->assertRaw(t('!title field is required.', array('!title' => $field->getLabel())), 'Node save failed when required multiple value file field was empty.'); // Create a new node with the uploaded file into the multivalue field. $nid = $this->uploadNodeFile($test_file, $field_name, $type_name); diff --git a/core/modules/file/src/Tests/FileFieldWidgetTest.php b/core/modules/file/src/Tests/FileFieldWidgetTest.php index 9ae0940..7b1aa28 100644 --- a/core/modules/file/src/Tests/FileFieldWidgetTest.php +++ b/core/modules/file/src/Tests/FileFieldWidgetTest.php @@ -8,7 +8,7 @@ namespace Drupal\file\Tests; use Drupal\comment\Entity\Comment; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; /** * Tests the file field widget, single and multi-valued, with and without AJAX, @@ -206,13 +206,13 @@ function testPrivateFileSetting() { $type_name = 'article'; $field_name = strtolower($this->randomMachineName()); $this->createFileField($field_name, 'node', $type_name); - $instance = FieldInstanceConfig::loadByName('node', $type_name, $field_name); + $field = FieldConfig::loadByName('node', $type_name, $field_name); $test_file = $this->getTestFile('text'); // Change the field setting to make its files private, and upload a file. $edit = array('field[settings][uri_scheme]' => 'private'); - $this->drupalPostForm("admin/structure/types/manage/$type_name/fields/$instance->id/storage", $edit, t('Save field settings')); + $this->drupalPostForm("admin/structure/types/manage/$type_name/fields/$field->id/storage", $edit, t('Save field settings')); $nid = $this->uploadNodeFile($test_file, $field_name, $type_name); $node = node_load($nid, TRUE); $node_file = file_load($node->{$field_name}->target_id); @@ -224,12 +224,12 @@ function testPrivateFileSetting() { // Ensure we can't change 'uri_scheme' field settings while there are some // entities with uploaded files. - $this->drupalGet("admin/structure/types/manage/$type_name/fields/$instance->id/storage"); + $this->drupalGet("admin/structure/types/manage/$type_name/fields/$field->id/storage"); $this->assertFieldByXpath('//input[@id="edit-field-settings-uri-scheme-public" and @disabled="disabled"]', 'public', 'Upload destination setting disabled.'); // Delete node and confirm that setting could be changed. $node->delete(); - $this->drupalGet("admin/structure/types/manage/$type_name/fields/$instance->id/storage"); + $this->drupalGet("admin/structure/types/manage/$type_name/fields/$field->id/storage"); $this->assertFieldByXpath('//input[@id="edit-field-settings-uri-scheme-public" and not(@disabled)]', 'public', 'Upload destination setting enabled.'); } diff --git a/core/modules/file/src/Tests/FileItemTest.php b/core/modules/file/src/Tests/FileItemTest.php index 82a2ceb..ba79ea1 100644 --- a/core/modules/file/src/Tests/FileItemTest.php +++ b/core/modules/file/src/Tests/FileItemTest.php @@ -45,7 +45,7 @@ protected function setUp() { 'type' => 'file', 'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'file_test', 'bundle' => 'entity_test', diff --git a/core/modules/forum/config/install/field.instance.taxonomy_term.forums.forum_container.yml b/core/modules/forum/config/install/field.field.taxonomy_term.forums.forum_container.yml similarity index 100% rename from core/modules/forum/config/install/field.instance.taxonomy_term.forums.forum_container.yml rename to core/modules/forum/config/install/field.field.taxonomy_term.forums.forum_container.yml diff --git a/core/modules/forum/forum.install b/core/modules/forum/forum.install index 2ebc79f..6af734c 100644 --- a/core/modules/forum/forum.install +++ b/core/modules/forum/forum.install @@ -6,7 +6,7 @@ */ use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\field\Entity\FieldStorageConfig; use Drupal\comment\CommentManagerInterface; @@ -51,7 +51,7 @@ function forum_install() { $term->save(); // Create the instance on the bundle. - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'taxonomy_forums', 'entity_type' => 'node', 'label' => 'Forums', @@ -91,9 +91,9 @@ function forum_install() { Drupal::service('comment.manager')->addDefaultField('node', 'forum', 'comment_forum', CommentItemInterface::OPEN, 'comment_forum'); // Add here because we don't have param in addDefaultField function. - $instance = FieldInstanceConfig::loadByName('node', 'forum', 'comment_forum'); - $instance->settings['default_mode'] = CommentManagerInterface::COMMENT_MODE_FLAT; - $instance->save(); + $field = FieldConfig::loadByName('node', 'forum', 'comment_forum'); + $field->settings['default_mode'] = CommentManagerInterface::COMMENT_MODE_FLAT; + $field->save(); // Hide label for comment field. entity_get_display('node', 'forum', 'default') diff --git a/core/modules/hal/src/Tests/NormalizerTestBase.php b/core/modules/hal/src/Tests/NormalizerTestBase.php index 4ef6037..48c2f02 100644 --- a/core/modules/hal/src/Tests/NormalizerTestBase.php +++ b/core/modules/hal/src/Tests/NormalizerTestBase.php @@ -86,7 +86,7 @@ protected function setUp() { 'entity_type' => 'entity_test', 'type' => 'text', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'field_test_text', 'bundle' => 'entity_test', @@ -99,7 +99,7 @@ protected function setUp() { 'entity_type' => 'entity_test', 'type' => 'text', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'field_test_translatable_text', 'bundle' => 'entity_test', @@ -115,7 +115,7 @@ protected function setUp() { 'target_type' => 'entity_test', ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'field_test_entity_reference', 'bundle' => 'entity_test', diff --git a/core/modules/image/config/schema/image.schema.yml b/core/modules/image/config/schema/image.schema.yml index 4f1fc79..dc2db0b 100644 --- a/core/modules/image/config/schema/image.schema.yml +++ b/core/modules/image/config/schema/image.schema.yml @@ -80,8 +80,8 @@ field.image.settings: type: field_default_image label: 'Default value' -field.image.instance_settings: - type: base_file_field_instance_settings +field.image.field_settings: + type: base_file_field_field_settings label: 'Image settings' mapping: max_resolution: diff --git a/core/modules/image/image.module b/core/modules/image/image.module index a6ce171..4003c04 100644 --- a/core/modules/image/image.module +++ b/core/modules/image/image.module @@ -9,7 +9,7 @@ use Drupal\Core\Routing\RouteMatchInterface; use Drupal\file\Entity\File; use Drupal\field\FieldStorageConfigInterface; -use Drupal\field\FieldInstanceConfigInterface; +use Drupal\field\FieldConfigInterface; /** * Image style constant for user presets in the database. @@ -344,9 +344,9 @@ function image_filter_keyword($value, $current_pixels, $new_pixels) { function image_entity_presave(EntityInterface $entity) { $field_storage = FALSE; $entity_type_id = $entity->getEntityTypeId(); - if ($entity_type_id == 'field_instance_config') { + if ($entity_type_id == 'field_config') { $field_storage = $entity->getFieldStorageDefinition(); - $default_settings = \Drupal::service('plugin.manager.field.field_type')->getDefaultInstanceSettings('image'); + $default_settings = \Drupal::service('plugin.manager.field.field_type')->getDefaultFieldSettings('image'); } elseif ($entity_type_id == 'field_storage_config') { $field_storage = $entity; @@ -421,9 +421,9 @@ function image_field_storage_config_update(FieldStorageConfigInterface $field_st } /** - * Implements hook_ENTITY_TYPE_update() for 'field_instance_config'. + * Implements hook_ENTITY_TYPE_update() for 'field_config'. */ -function image_field_instance_config_update(FieldInstanceConfigInterface $field_instance) { +function image_field_config_update(FieldConfigInterface $field_instance) { $field_storage = $field_instance->getFieldStorageDefinition(); if ($field_storage->type != 'image') { // Only act on image fields. @@ -475,9 +475,9 @@ function image_field_storage_config_delete(FieldStorageConfigInterface $field) { } /** - * Implements hook_ENTITY_TYPE_delete() for 'field_instance_config'. + * Implements hook_ENTITY_TYPE_delete() for 'field_config'. */ -function image_field_instance_config_delete(FieldInstanceConfigInterface $field_instance) { +function image_field_config_delete(FieldConfigInterface $field_instance) { $field_storage = $field_instance->getFieldStorageDefinition(); if ($field_storage->type != 'image') { // Only act on image fields. diff --git a/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php b/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php index e99d8eb..62bef76 100644 --- a/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php +++ b/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php @@ -7,7 +7,7 @@ namespace Drupal\image\Plugin\Field\FieldFormatter; -use Drupal\field\FieldInstanceConfigInterface; +use Drupal\field\FieldConfigInterface; use Drupal\file\Plugin\Field\FieldFormatter\FileFormatterBase; /** @@ -28,7 +28,7 @@ public function prepareView(array $entities_items) { $default_image = $this->getFieldSetting('default_image'); // If we are dealing with a configurable field, look in both // instance-level and field-level settings. - if (empty($default_image['fid']) && $this->fieldDefinition instanceof FieldInstanceConfigInterface) { + if (empty($default_image['fid']) && $this->fieldDefinition instanceof FieldConfigInterface) { $default_image = $this->fieldDefinition->getFieldStorageDefinition()->getSetting('default_image'); } diff --git a/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php b/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php index 0cbb89a..17fb55a 100644 --- a/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php +++ b/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php @@ -60,7 +60,7 @@ public static function defaultSettings() { /** * {@inheritdoc} */ - public static function defaultInstanceSettings() { + public static function defaultFieldSettings() { $settings = array( 'file_extensions' => 'png gif jpg jpeg', 'alt_field' => 0, @@ -76,7 +76,7 @@ public static function defaultInstanceSettings() { 'width' => NULL, 'height' => NULL, ), - ) + parent::defaultInstanceSettings(); + ) + parent::defaultFieldSettings(); unset($settings['description_field']); return $settings; @@ -183,9 +183,9 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_ /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { // Get base form from FileItem::instanceSettingsForm(). - $element = parent::instanceSettingsForm($form, $form_state); + $element = parent::fieldSettingsForm($form, $form_state); $settings = $this->getSettings(); diff --git a/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php b/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php index 38fc142..3d1f560 100644 --- a/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php +++ b/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php @@ -8,7 +8,7 @@ namespace Drupal\image\Tests; /** - * Tests setting up default images both to the field and field instance. + * Tests setting up default images both to the field and field field. * * @group image */ @@ -22,7 +22,7 @@ class ImageFieldDefaultImagesTest extends ImageFieldTestBase { public static $modules = array('field_ui'); /** - * Tests CRUD for fields and fields instances with default images. + * Tests CRUD for fields and fields fields with default images. */ public function testDefaultImages() { // Create files to use as the default images. @@ -36,13 +36,13 @@ public function testDefaultImages() { $file->save(); } $default_images = array(); - foreach (array('field', 'instance', 'instance2', 'field_new', 'instance_new') as $image_target) { + foreach (array('field', 'field', 'field2', 'field_new', 'field_new') as $image_target) { $file = entity_create('file', (array) array_pop($files)); $file->save(); $default_images[$image_target] = $file; } - // Create an image field and add an instance to the article content type. + // Create an image field and add an field to the article content type. $field_name = strtolower($this->randomMachineName()); $storage_settings['default_image'] = array( 'fid' => $default_images['field']->id(), @@ -51,8 +51,8 @@ public function testDefaultImages() { 'width' => 0, 'height' => 0, ); - $instance_settings['default_image'] = array( - 'fid' => $default_images['instance']->id(), + $field_settings['default_image'] = array( + 'fid' => $default_images['field']->id(), 'alt' => '', 'title' => '', 'width' => 0, @@ -61,15 +61,15 @@ public function testDefaultImages() { $widget_settings = array( 'preview_image_style' => 'medium', ); - $instance = $this->createImageField($field_name, 'article', $storage_settings, $instance_settings, $widget_settings); + $field = $this->createImageField($field_name, 'article', $storage_settings, $field_settings, $widget_settings); - // The instance default image id should be 2. - $this->assertEqual($instance->getSetting('default_image')['fid'], $default_images['instance']->id()); + // The field default image id should be 2. + $this->assertEqual($field->getSetting('default_image')['fid'], $default_images['field']->id()); - // Also test \Drupal\field\Entity\FieldInstanceConfig::getSetting(). - $this->assertEqual($instance->getSettings()['default_image']['fid'], $default_images['instance']->id()); + // Also test \Drupal\field\Entity\FieldConfig::getSetting(). + $this->assertEqual($field->getSettings()['default_image']['fid'], $default_images['field']->id()); - $field_storage = $instance->getFieldStorageDefinition(); + $field_storage = $field->getFieldStorageDefinition(); // The field default image id should be 1. $this->assertEqual($field_storage->getSetting('default_image')['fid'], $default_images['field']->id()); @@ -77,15 +77,15 @@ public function testDefaultImages() { // Also test \Drupal\field\Entity\FieldStorageConfig::getSettings(). $this->assertEqual($field_storage->getSettings()['default_image']['fid'], $default_images['field']->id()); - // Add another instance with another default image to the page content type. - $instance2 = entity_create('field_instance_config', array( + // Add another field with another default image to the page content type. + $field2 = entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'page', - 'label' => $instance->label(), - 'required' => $instance->required, + 'label' => $field->label(), + 'required' => $field->required, 'settings' => array( 'default_image' => array( - 'fid' => $default_images['instance2']->id(), + 'fid' => $default_images['field2']->id(), 'alt' => '', 'title' => '', 'width' => 0, @@ -93,9 +93,9 @@ public function testDefaultImages() { ), ), )); - $instance2->save(); + $field2->save(); - $widget_settings = entity_get_form_display('node', $instance->bundle, 'default')->getComponent($field_name); + $widget_settings = entity_get_form_display('node', $field->bundle, 'default')->getComponent($field_name); entity_get_form_display('node', 'page', 'default') ->setComponent($field_name, $widget_settings) ->save(); @@ -104,8 +104,8 @@ public function testDefaultImages() { ->save(); // Confirm the defaults are present on the article field settings form. - $instance_id = $instance->id(); - $this->drupalGet("admin/structure/types/manage/article/fields/$instance_id/storage"); + $field_id = $field->id(); + $this->drupalGet("admin/structure/types/manage/article/fields/$field_id/storage"); $this->assertFieldByXpath( '//input[@name="field[settings][default_image][fid][fids]"]', $default_images['field']->id(), @@ -115,18 +115,18 @@ public function testDefaultImages() { ) ); // Confirm the defaults are present on the article field edit form. - $this->drupalGet("admin/structure/types/manage/article/fields/$instance_id"); + $this->drupalGet("admin/structure/types/manage/article/fields/$field_id"); $this->assertFieldByXpath( - '//input[@name="instance[settings][default_image][fid][fids]"]', - $default_images['instance']->id(), + '//input[@name="field[settings][default_image][fid][fids]"]', + $default_images['field']->id(), format_string( - 'Article image field instance default equals expected file ID of @fid.', - array('@fid' => $default_images['instance']->id()) + 'Article image field field default equals expected file ID of @fid.', + array('@fid' => $default_images['field']->id()) ) ); // Confirm the defaults are present on the page field settings form. - $this->drupalGet("admin/structure/types/manage/page/fields/$instance_id/storage"); + $this->drupalGet("admin/structure/types/manage/page/fields/$field_id/storage"); $this->assertFieldByXpath( '//input[@name="field[settings][default_image][fid][fids]"]', $default_images['field']->id(), @@ -136,14 +136,14 @@ public function testDefaultImages() { ) ); // Confirm the defaults are present on the page field edit form. - $instance2_id = $instance2->id(); - $this->drupalGet("admin/structure/types/manage/page/fields/$instance2_id"); + $field2_id = $field2->id(); + $this->drupalGet("admin/structure/types/manage/page/fields/$field2_id"); $this->assertFieldByXpath( - '//input[@name="instance[settings][default_image][fid][fids]"]', - $default_images['instance2']->id(), + '//input[@name="field[settings][default_image][fid][fids]"]', + $default_images['field2']->id(), format_string( - 'Page image field instance default equals expected file ID of @fid.', - array('@fid' => $default_images['instance2']->id()) + 'Page image field field default equals expected file ID of @fid.', + array('@fid' => $default_images['field2']->id()) ) ); @@ -152,10 +152,10 @@ public function testDefaultImages() { $article_built = $this->drupalBuildEntityView($article); $this->assertEqual( $article_built[$field_name]['#items'][0]->target_id, - $default_images['instance']->id(), + $default_images['field']->id(), format_string( 'A new article node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance']->id()) + array('@fid' => $default_images['field']->id()) ) ); @@ -164,10 +164,10 @@ public function testDefaultImages() { $page_built = $this->drupalBuildEntityView($page); $this->assertEqual( $page_built[$field_name]['#items'][0]->target_id, - $default_images['instance2']->id(), + $default_images['field2']->id(), format_string( 'A new page node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance2']->id()) + array('@fid' => $default_images['field2']->id()) ) ); @@ -176,7 +176,7 @@ public function testDefaultImages() { $field_storage->save(); // Confirm that the new default is used on the article field settings form. - $this->drupalGet("admin/structure/types/manage/article/fields/$instance_id/storage"); + $this->drupalGet("admin/structure/types/manage/article/fields/$field_id/storage"); $this->assertFieldByXpath( '//input[@name="field[settings][default_image][fid][fids]"]', $default_images['field_new']->id(), @@ -186,39 +186,39 @@ public function testDefaultImages() { ) ); - // Reload the nodes and confirm the field instance defaults are used. + // Reload the nodes and confirm the field field defaults are used. $article_built = $this->drupalBuildEntityView($article = node_load($article->id(), TRUE)); $page_built = $this->drupalBuildEntityView($page = node_load($page->id(), TRUE)); $this->assertEqual( $article_built[$field_name]['#items'][0]->target_id, - $default_images['instance']->id(), + $default_images['field']->id(), format_string( 'An existing article node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance']->id()) + array('@fid' => $default_images['field']->id()) ) ); $this->assertEqual( $page_built[$field_name]['#items'][0]->target_id, - $default_images['instance2']->id(), + $default_images['field2']->id(), format_string( 'An existing page node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance2']->id()) + array('@fid' => $default_images['field2']->id()) ) ); - // Upload a new default for the article's field instance. - $instance->settings['default_image']['fid'] = $default_images['instance_new']->id(); - $instance->save(); + // Upload a new default for the article's field field. + $field->settings['default_image']['fid'] = $default_images['field_new']->id(); + $field->save(); - // Confirm the new field instance default is used on the article field + // Confirm the new field field default is used on the article field // admin form. - $this->drupalGet("admin/structure/types/manage/article/fields/$instance_id"); + $this->drupalGet("admin/structure/types/manage/article/fields/$field_id"); $this->assertFieldByXpath( - '//input[@name="instance[settings][default_image][fid][fids]"]', - $default_images['instance_new']->id(), + '//input[@name="field[settings][default_image][fid][fids]"]', + $default_images['field_new']->id(), format_string( - 'Updated article image field instance default equals expected file ID of @fid.', - array('@fid' => $default_images['instance_new']->id()) + 'Updated article image field field default equals expected file ID of @fid.', + array('@fid' => $default_images['field_new']->id()) ) ); @@ -229,38 +229,38 @@ public function testDefaultImages() { // Confirm the article uses the new default. $this->assertEqual( $article_built[$field_name]['#items'][0]->target_id, - $default_images['instance_new']->id(), + $default_images['field_new']->id(), format_string( 'An existing article node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance_new']->id()) + array('@fid' => $default_images['field_new']->id()) ) ); // Confirm the page remains unchanged. $this->assertEqual( $page_built[$field_name]['#items'][0]->target_id, - $default_images['instance2']->id(), + $default_images['field2']->id(), format_string( 'An existing page node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance2']->id()) + array('@fid' => $default_images['field2']->id()) ) ); - // Remove the instance default from articles. - $instance->settings['default_image']['fid'] = 0; - $instance->save(); + // Remove the field default from articles. + $field->settings['default_image']['fid'] = 0; + $field->save(); - // Confirm the article field instance default has been removed. - $this->drupalGet("admin/structure/types/manage/article/fields/$instance_id"); + // Confirm the article field field default has been removed. + $this->drupalGet("admin/structure/types/manage/article/fields/$field_id"); $this->assertFieldByXpath( - '//input[@name="instance[settings][default_image][fid][fids]"]', + '//input[@name="field[settings][default_image][fid][fids]"]', '', - 'Updated article image field instance default has been successfully removed.' + 'Updated article image field field default has been successfully removed.' ); // Reload the nodes. $article_built = $this->drupalBuildEntityView($article = node_load($article->id(), TRUE)); $page_built = $this->drupalBuildEntityView($page = node_load($page->id(), TRUE)); - // Confirm the article uses the new field (not instance) default. + // Confirm the article uses the new field (not field) default. $this->assertEqual( $article_built[$field_name]['#items'][0]->target_id, $default_images['field_new']->id(), @@ -272,20 +272,20 @@ public function testDefaultImages() { // Confirm the page remains unchanged. $this->assertEqual( $page_built[$field_name]['#items'][0]->target_id, - $default_images['instance2']->id(), + $default_images['field2']->id(), format_string( 'An existing page node without an image has the expected default image file ID of @fid.', - array('@fid' => $default_images['instance2']->id()) + array('@fid' => $default_images['field2']->id()) ) ); $non_image = $this->drupalGetTestFiles('text'); - $this->drupalPostForm(NULL, array('files[instance_settings_default_image_fid]' => drupal_realpath($non_image[0]->uri)), t("Upload")); + $this->drupalPostForm(NULL, array('files[field_settings_default_image_fid]' => drupal_realpath($non_image[0]->uri)), t("Upload")); $this->assertText(t('The specified file text-0.txt could not be uploaded. Only files with the following extensions are allowed: png gif jpg jpeg.'), 'Non-image file cannot be used as default image.'); } /** - * Tests image field and instance having an invalid default image. + * Tests image field and field having an invalid default image. */ public function testInvalidDefaultImage() { $field_storage = entity_create('field_storage_config', array( @@ -303,7 +303,7 @@ public function testInvalidDefaultImage() { // The non-existent default image should not be saved. $this->assertNull($settings['default_image']['fid']); - $field_instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'page', 'label' => $this->randomMachineName(), @@ -313,8 +313,8 @@ public function testInvalidDefaultImage() { ) ), )); - $field_instance->save(); - $settings = $field_instance->getSettings(); + $field->save(); + $settings = $field->getSettings(); // The non-existent default image should not be saved. $this->assertNull($settings['default_image']['fid']); } diff --git a/core/modules/image/src/Tests/ImageFieldDisplayTest.php b/core/modules/image/src/Tests/ImageFieldDisplayTest.php index 24330bf..4c632c1 100644 --- a/core/modules/image/src/Tests/ImageFieldDisplayTest.php +++ b/core/modules/image/src/Tests/ImageFieldDisplayTest.php @@ -168,7 +168,7 @@ function testImageFieldSettings() { $test_image = current($this->drupalGetTestFiles('image')); list(, $test_image_extension) = explode('.', $test_image->filename); $field_name = strtolower($this->randomMachineName()); - $instance_settings = array( + $field_settings = array( 'alt_field' => 1, 'file_extensions' => $test_image_extension, 'max_filesize' => '50 KB', @@ -180,7 +180,7 @@ function testImageFieldSettings() { $widget_settings = array( 'preview_image_style' => 'medium', ); - $instance = $this->createImageField($field_name, 'article', array(), $instance_settings, $widget_settings); + $field = $this->createImageField($field_name, 'article', array(), $field_settings, $widget_settings); $this->drupalGet('node/add/article'); $this->assertText(t('50 KB limit.'), 'Image widget max file size is displayed on article form.'); @@ -230,7 +230,7 @@ function testImageFieldSettings() { $field_name . '[0][title]' => $this->randomMachineName($test_size), ); $this->drupalPostForm('node/' . $nid . '/edit', $edit, t('Save and keep published')); - $schema = $instance->getFieldStorageDefinition()->getSchema(); + $schema = $field->getFieldStorageDefinition()->getSchema(); $this->assertRaw(t('Alternate text cannot be longer than %max characters but is currently %length characters long.', array( '%max' => $schema['columns']['alt']['length'], '%length' => $test_size, diff --git a/core/modules/image/src/Tests/ImageFieldTestBase.php b/core/modules/image/src/Tests/ImageFieldTestBase.php index 561737a..280876e 100644 --- a/core/modules/image/src/Tests/ImageFieldTestBase.php +++ b/core/modules/image/src/Tests/ImageFieldTestBase.php @@ -58,12 +58,12 @@ protected function setUp() { * The node type that this field will be added to. * @param $storage_settings * A list of field storage settings that will be added to the defaults. - * @param $instance_settings + * @param $field_settings * A list of instance settings that will be added to the instance defaults. * @param $widget_settings * A list of widget settings that will be added to the widget defaults. */ - function createImageField($name, $type_name, $storage_settings = array(), $instance_settings = array(), $widget_settings = array()) { + function createImageField($name, $type_name, $storage_settings = array(), $field_settings = array(), $widget_settings = array()) { entity_create('field_storage_config', array( 'name' => $name, 'entity_type' => 'node', @@ -72,16 +72,16 @@ function createImageField($name, $type_name, $storage_settings = array(), $insta 'cardinality' => !empty($storage_settings['cardinality']) ? $storage_settings['cardinality'] : 1, ))->save(); - $field_instance_config = entity_create('field_instance_config', array( + $field_config = entity_create('field_config', array( 'field_name' => $name, 'label' => $name, 'entity_type' => 'node', 'bundle' => $type_name, - 'required' => !empty($instance_settings['required']), - 'description' => !empty($instance_settings['description']) ? $instance_settings['description'] : '', - 'settings' => $instance_settings, + 'required' => !empty($field_settings['required']), + 'description' => !empty($field_settings['description']) ? $field_settings['description'] : '', + 'settings' => $field_settings, )); - $field_instance_config->save(); + $field_config->save(); entity_get_form_display('node', $type_name, 'default') ->setComponent($name, array( @@ -94,7 +94,7 @@ function createImageField($name, $type_name, $storage_settings = array(), $insta ->setComponent($name) ->save(); - return $field_instance_config; + return $field_config; } diff --git a/core/modules/image/src/Tests/ImageFieldValidateTest.php b/core/modules/image/src/Tests/ImageFieldValidateTest.php index fb7e9a4..415bc93 100644 --- a/core/modules/image/src/Tests/ImageFieldValidateTest.php +++ b/core/modules/image/src/Tests/ImageFieldValidateTest.php @@ -20,11 +20,11 @@ function testResolution() { $field_name = strtolower($this->randomMachineName()); $min_resolution = 50; $max_resolution = 100; - $instance_settings = array( + $field_settings = array( 'max_resolution' => $max_resolution . 'x' . $max_resolution, 'min_resolution' => $min_resolution . 'x' . $min_resolution, ); - $this->createImageField($field_name, 'article', array(), $instance_settings); + $this->createImageField($field_name, 'article', array(), $field_settings); // We want a test image that is too small, and a test image that is too // big, so cycle through test image files until we have what we need. @@ -54,13 +54,13 @@ function testResolution() { */ function testRequiredAttributes() { $field_name = strtolower($this->randomMachineName()); - $instance_settings = array( + $field_settings = array( 'alt_field' => 1, 'alt_field_required' => 1, 'title_field' => 1, 'title_field_required' => 1, ); - $this->createImageField($field_name, 'article', array(), $instance_settings); + $this->createImageField($field_name, 'article', array(), $field_settings); $images = $this->drupalGetTestFiles('image'); // Let's just use the first image. $image = $images[0]; diff --git a/core/modules/image/src/Tests/ImageItemTest.php b/core/modules/image/src/Tests/ImageItemTest.php index d758615..f71f68b 100644 --- a/core/modules/image/src/Tests/ImageItemTest.php +++ b/core/modules/image/src/Tests/ImageItemTest.php @@ -50,7 +50,7 @@ protected function setUp() { 'type' => 'image', 'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'image_test', 'bundle' => 'entity_test', diff --git a/core/modules/image/src/Tests/ImageThemeFunctionTest.php b/core/modules/image/src/Tests/ImageThemeFunctionTest.php index 97c5a2b..15d9be0 100644 --- a/core/modules/image/src/Tests/ImageThemeFunctionTest.php +++ b/core/modules/image/src/Tests/ImageThemeFunctionTest.php @@ -45,7 +45,7 @@ protected function setUp() { 'type' => 'image', 'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'image_test', 'bundle' => 'entity_test', diff --git a/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php b/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php index f8639bb..582851f 100644 --- a/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php +++ b/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php @@ -31,11 +31,11 @@ class LinkItem extends FieldItemBase implements LinkItemInterface { /** * {@inheritdoc} */ - public static function defaultInstanceSettings() { + public static function defaultFieldSettings() { return array( 'title' => DRUPAL_OPTIONAL, 'link_type' => LinkItemInterface::LINK_GENERIC - ) + parent::defaultInstanceSettings(); + ) + parent::defaultFieldSettings(); } /** @@ -105,7 +105,7 @@ public static function schema(FieldStorageDefinitionInterface $field_definition) /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { $element = array(); $element['link_type'] = array( diff --git a/core/modules/link/src/Tests/LinkFieldTest.php b/core/modules/link/src/Tests/LinkFieldTest.php index c7eb596..f2f3717 100644 --- a/core/modules/link/src/Tests/LinkFieldTest.php +++ b/core/modules/link/src/Tests/LinkFieldTest.php @@ -35,9 +35,9 @@ class LinkFieldTest extends WebTestBase { /** * The instance used in this test class. * - * @var \Drupal\field\Entity\FieldInstanceConfig + * @var \Drupal\field\Entity\FieldConfig */ - protected $instance; + protected $field; /** * A user with permission to view and manage test entities. @@ -69,7 +69,7 @@ function testURLValidation() { 'type' => 'link', )); $this->fieldStorage->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => 'entity_test', 'settings' => array( @@ -77,7 +77,7 @@ function testURLValidation() { 'link_type' => LinkItemInterface::LINK_GENERIC, ), )); - $this->instance->save(); + $this->field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($field_name, array( 'type' => 'link_default', @@ -126,14 +126,14 @@ function testURLValidation() { $this->assertInvalidEntries($field_name, $invalid_external_entries + $invalid_internal_entries); // Test external URLs for 'link_type' = LinkItemInterface::LINK_EXTERNAL. - $this->instance->settings['link_type'] = LinkItemInterface::LINK_EXTERNAL; - $this->instance->save(); + $this->field->settings['link_type'] = LinkItemInterface::LINK_EXTERNAL; + $this->field->save(); $this->assertValidEntries($field_name, $valid_external_entries); $this->assertInvalidEntries($field_name, $valid_internal_entries + $invalid_external_entries); // Test external URLs for 'link_type' = LinkItemInterface::LINK_INTERNAL. - $this->instance->settings['link_type'] = LinkItemInterface::LINK_INTERNAL; - $this->instance->save(); + $this->field->settings['link_type'] = LinkItemInterface::LINK_INTERNAL; + $this->field->save(); $this->assertValidEntries($field_name, $valid_internal_entries); $this->assertInvalidEntries($field_name, $valid_external_entries + $invalid_internal_entries); } @@ -193,7 +193,7 @@ function testLinkTitle() { 'type' => 'link', )); $this->fieldStorage->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => 'entity_test', 'label' => 'Read more about this entity', @@ -202,7 +202,7 @@ function testLinkTitle() { 'link_type' => LinkItemInterface::LINK_GENERIC, ), )); - $this->instance->save(); + $this->field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($field_name, array( 'type' => 'link_default', @@ -222,8 +222,8 @@ function testLinkTitle() { // Verify that the link text field works according to the field setting. foreach (array(DRUPAL_DISABLED, DRUPAL_REQUIRED, DRUPAL_OPTIONAL) as $title_setting) { // Update the link title field setting. - $this->instance->settings['title'] = $title_setting; - $this->instance->save(); + $this->field->settings['title'] = $title_setting; + $this->field->save(); // Display creation form. $this->drupalGet('entity_test/add'); @@ -312,7 +312,7 @@ function testLinkFormatter() { 'cardinality' => 2, )); $this->fieldStorage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'label' => 'Read more about this entity', 'bundle' => 'entity_test', @@ -454,7 +454,7 @@ function testLinkSeparateFormatter() { 'cardinality' => 2, )); $this->fieldStorage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => 'entity_test', 'settings' => array( diff --git a/core/modules/link/src/Tests/LinkItemTest.php b/core/modules/link/src/Tests/LinkItemTest.php index d2e15d5..6022733 100644 --- a/core/modules/link/src/Tests/LinkItemTest.php +++ b/core/modules/link/src/Tests/LinkItemTest.php @@ -35,7 +35,7 @@ protected function setUp() { 'entity_type' => 'entity_test', 'type' => 'link', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'field_test', 'bundle' => 'entity_test', diff --git a/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldInstance.php b/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldInstance.php index c02fef5..77297e8 100644 --- a/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldInstance.php +++ b/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldInstance.php @@ -11,7 +11,7 @@ /** * @MigrateDestination( - * id = "entity:field_instance_config" + * id = "entity:field_config" * ) */ class EntityFieldInstance extends EntityConfigBase { diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_comment_field_instance.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_comment_field_instance.yml index c24eaba..6ec06f7 100644 --- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_comment_field_instance.yml +++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_comment_field_instance.yml @@ -27,7 +27,7 @@ process: 'settings/form_location': comment_form_location 'settings/preview': comment_preview destination: - plugin: entity:field_instance_config + plugin: entity:field_config migration_dependencies: required: - d6_comment_field diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_field_instance.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_field_instance.yml index ce20ff5..1ef6a30 100644 --- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_field_instance.yml +++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_field_instance.yml @@ -30,7 +30,7 @@ process: required: required status: active settings: - plugin: d6_field_instance_settings + plugin: d6_field_field_settings source: - widget_type - widget_settings @@ -44,7 +44,7 @@ process: - widget_settings destination: - plugin: entity:field_instance_config + plugin: entity:field_config migration_dependencies: required: - d6_node_type diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_upload_field_instance.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_upload_field_instance.yml index f46b49b..42fadb2 100644 --- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_upload_field_instance.yml +++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_upload_field_instance.yml @@ -17,7 +17,7 @@ process: 'settings/file_extensions': file_extensions 'settings/max_filesize': max_filesize destination: - plugin: entity:field_instance_config + plugin: entity:field_config migration_dependencies: required: - d6_upload_field diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_picture_field_instance.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_picture_field_instance.yml index ae4bfae..ef6c053 100644 --- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_picture_field_instance.yml +++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_picture_field_instance.yml @@ -24,7 +24,7 @@ process: 'settings/max_filesize': max_filesize 'settings/max_resolution': max_resolution destination: - plugin: entity:field_instance_config + plugin: entity:field_config migration_dependencies: required: - d6_user_picture_field diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_profile_field_instance.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_profile_field_instance.yml index eb44225..ebf139e 100644 --- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_profile_field_instance.yml +++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_user_profile_field_instance.yml @@ -15,7 +15,7 @@ process: field_name: name required: required destination: - plugin: entity:field_instance_config + plugin: entity:field_config migration_dependencies: required: - d6_user_profile_field diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_vocabulary_field_instance.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_vocabulary_field_instance.yml index 4d6c202..15d8186 100644 --- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_vocabulary_field_instance.yml +++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_vocabulary_field_instance.yml @@ -15,7 +15,7 @@ process: migration: d6_taxonomy_vocabulary source: vid destination: - plugin: entity:field_instance_config + plugin: entity:field_config migration_dependencies: required: - d6_vocabulary_field diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceSettings.php b/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceSettings.php index 7f16cef..22ba334 100644 --- a/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceSettings.php +++ b/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/FieldInstanceSettings.php @@ -12,7 +12,7 @@ /** * @MigrateProcessPlugin( - * id = "d6_field_instance_settings" + * id = "d6_field_field_settings" * ) */ class FieldInstanceSettings extends ProcessPluginBase { diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldRevisionTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldRevisionTest.php index 10a8b37..39917a2 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldRevisionTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldRevisionTest.php @@ -33,7 +33,7 @@ protected function setUp() { 'name' => 'field_test', 'type' => 'text', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => 'field_test', 'bundle' => 'story', @@ -44,7 +44,7 @@ protected function setUp() { 'type' => 'integer', 'cardinality' => -1, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => 'field_test_two', 'bundle' => 'story', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldValuesTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldValuesTest.php index 15d496e..159e7ac 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldValuesTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateCckFieldValuesTest.php @@ -34,7 +34,7 @@ protected function setUp() { 'name' => 'field_test', 'type' => 'text', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => 'field_test', 'bundle' => 'story', @@ -45,7 +45,7 @@ protected function setUp() { 'type' => 'integer', 'cardinality' => -1, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => 'field_test_two', 'bundle' => 'story', @@ -55,7 +55,7 @@ protected function setUp() { 'name' => 'field_test_three', 'type' => 'decimal', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => 'field_test_three', 'bundle' => 'story', @@ -65,7 +65,7 @@ protected function setUp() { 'name' => 'field_test_integer_selectlist', 'type' => 'integer', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => 'field_test_integer_selectlist', 'bundle' => 'story', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateCommentVariableDisplayBase.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateCommentVariableDisplayBase.php index 9c967f5..58765c8 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateCommentVariableDisplayBase.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateCommentVariableDisplayBase.php @@ -57,7 +57,7 @@ protected function setUp() { ))->save(); foreach ($this->types as $type) { entity_create('node_type', array('type' => $type))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => 'Comments', 'description' => '', 'field_name' => 'comment', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldInstanceTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldInstanceTest.php index d154214..6e6f02e 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldInstanceTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateFieldInstanceTest.php @@ -83,14 +83,14 @@ protected function setUp() { public function testFieldInstanceSettings() { $entity = entity_create('node', array('type' => 'story')); // Test a text field. - $field = entity_load('field_instance_config', 'node.story.field_test'); + $field = entity_load('field_config', 'node.story.field_test'); $this->assertEqual($field->label(), 'Text Field'); $expected = array('max_length' => 255, 'text_processing' => 1); $this->assertEqual($field->getSettings(), $expected); $this->assertEqual('text for default value', $entity->field_test->value); // Test a number field. - $field = entity_load('field_instance_config', 'node.story.field_test_two'); + $field = entity_load('field_config', 'node.story.field_test_two'); $this->assertEqual($field->label(), 'Integer Field'); $expected = array( 'min' => '10', @@ -102,7 +102,7 @@ public function testFieldInstanceSettings() { ); $this->assertEqual($field->getSettings(), $expected); - $field = entity_load('field_instance_config', 'node.story.field_test_four'); + $field = entity_load('field_config', 'node.story.field_test_four'); $this->assertEqual($field->label(), 'Float Field'); $expected = array( 'min' => 100, @@ -113,12 +113,12 @@ public function testFieldInstanceSettings() { $this->assertEqual($field->getSettings(), $expected); // Test email field. - $field = entity_load('field_instance_config', 'node.story.field_test_email'); + $field = entity_load('field_config', 'node.story.field_test_email'); $this->assertEqual($field->label(), 'Email Field'); $this->assertEqual('benjy@example.com', $entity->field_test_email->value, 'Field field_test_email default_value is correct.'); // Test a filefield. - $field = entity_load('field_instance_config', 'node.story.field_test_filefield'); + $field = entity_load('field_config', 'node.story.field_test_filefield'); $this->assertEqual($field->label(), 'File Field'); $expected = array( 'file_extensions' => 'txt pdf doc', @@ -137,7 +137,7 @@ public function testFieldInstanceSettings() { $this->assertFalse(array_diff_assoc($expected, $field->getSettings())); // Test a link field. - $field = entity_load('field_instance_config', 'node.story.field_test_link'); + $field = entity_load('field_config', 'node.story.field_test_link'); $this->assertEqual($field->label(), 'Link Field'); $expected = array('title' => 2, 'link_type' => LinkItemInterface::LINK_GENERIC); $this->assertEqual($field->getSettings(), $expected); diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php index 4ec8f0e..e3718c1 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php @@ -7,7 +7,7 @@ namespace Drupal\migrate_drupal\Tests\d6; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\migrate\MigrateExecutable; use Drupal\migrate_drupal\Tests\MigrateDrupalTestBase; @@ -65,8 +65,8 @@ public function testNodeType() { $this->assertEqual(array('test_page'), $migration->getIdMap()->lookupDestinationID(array('test_page'))); // Test we have a body field. - $instance = FieldInstanceConfig::loadByName('node', 'test_page', 'body'); - $this->assertEqual($instance->getLabel(), 'This is the body field label', 'Body field was found.'); + $field = FieldConfig::loadByName('node', 'test_page', 'body'); + $this->assertEqual($field->getLabel(), 'This is the body field label', 'Body field was found.'); // Test the test_story content type. $node_type_story = entity_load('node_type', 'test_story'); @@ -83,8 +83,8 @@ public function testNodeType() { $this->assertEqual(array('test_story'), $migration->getIdMap()->lookupDestinationID(array('test_story'))); // Test we don't have a body field. - $instance = FieldInstanceConfig::loadByName('node', 'test_story', 'body'); - $this->assertEqual($instance, NULL, 'No body field found'); + $field = FieldConfig::loadByName('node', 'test_story', 'body'); + $this->assertEqual($field, NULL, 'No body field found'); // Test the test_event content type. $node_type_event = entity_load('node_type', 'test_event'); @@ -102,7 +102,7 @@ public function testNodeType() { $this->assertEqual(array('test_event'), $migration->getIdMap()->lookupDestinationID(array('test_event'))); // Test we have a body field. - $instance = FieldInstanceConfig::loadByName('node', 'test_event', 'body'); - $this->assertEqual($instance->getLabel(), 'Body', 'Body field was found.'); + $field = FieldConfig::loadByName('node', 'test_event', 'body'); + $this->assertEqual($field->getLabel(), 'Body', 'Body field was found.'); } } diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateProfileValuesTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateProfileValuesTest.php index 8184dce..fd33123 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateProfileValuesTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateProfileValuesTest.php @@ -90,7 +90,7 @@ protected function setUp() { // Create the field instances. foreach (Drupal6UserProfileFields::getData('profile_fields') as $field) { - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => $field['title'], 'description' => '', 'field_name' => $field['name'], diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateTermNodeTestBase.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateTermNodeTestBase.php index 64886f7..fb14c7d 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateTermNodeTestBase.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateTermNodeTestBase.php @@ -45,7 +45,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $name, 'entity_type' => 'node', 'bundle' => 'story', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadBase.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadBase.php index 61b5501..d411a11 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadBase.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadBase.php @@ -58,7 +58,7 @@ protected function setUp() { 'display_field' => TRUE, ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'upload', 'entity_type' => 'node', 'bundle' => 'story', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadInstanceTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadInstanceTest.php index b807b21..89fea7d 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadInstanceTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUploadInstanceTest.php @@ -64,18 +64,18 @@ protected function setUp() { * Tests the Drupal 6 upload settings to Drupal 8 field instance migration. */ public function testUploadFieldInstance() { - $field = entity_load('field_instance_config', 'node.page.upload'); + $field = entity_load('field_config', 'node.page.upload'); $settings = $field->getSettings(); $this->assertEqual($field->id(), 'node.page.upload'); $this->assertEqual($settings['file_extensions'], 'jpg jpeg gif png txt doc xls pdf ppt pps odt ods odp'); $this->assertEqual($settings['max_filesize'], '1MB'); $this->assertEqual($settings['description_field'], TRUE); - $field = entity_load('field_instance_config', 'node.story.upload'); + $field = entity_load('field_config', 'node.story.upload'); $this->assertEqual($field->id(), 'node.story.upload'); // Shouldn't exist. - $field = entity_load('field_instance_config', 'node.article.upload'); + $field = entity_load('field_config', 'node.article.upload'); $this->assertTrue(is_null($field)); $this->assertEqual(array('node', 'page', 'upload'), entity_load('migration', 'd6_upload_field_instance')->getIdMap()->lookupDestinationID(array('page'))); diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserPictureInstanceTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserPictureInstanceTest.php index 39a769b..6fb4886 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserPictureInstanceTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserPictureInstanceTest.php @@ -52,7 +52,7 @@ protected function setUp() { * Tests the Drupal 6 user picture to Drupal 8 picture field instance migration. */ public function testUserPictureFieldInstance() { - $field = entity_load('field_instance_config', 'user.user.user_picture'); + $field = entity_load('field_config', 'user.user.user_picture'); $settings = $field->getSettings(); $this->assertEqual($settings['file_extensions'], 'png gif jpg jpeg'); $this->assertEqual($settings['file_directory'], 'pictures'); diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityDisplayTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityDisplayTest.php index 8666cfa..8e46411 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityDisplayTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityDisplayTest.php @@ -75,7 +75,7 @@ protected function setUp() { ))->save(); $field_data = Drupal6UserProfileFields::getData('profile_fields'); foreach ($field_data as $field) { - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => $field['title'], 'description' => '', 'field_name' => $field['name'], diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityFormDisplayTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityFormDisplayTest.php index 82503d6..415234c 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityFormDisplayTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileEntityFormDisplayTest.php @@ -70,7 +70,7 @@ protected function setUp() { ))->save(); $field_data = Drupal6UserProfileFields::getData('profile_fields'); foreach ($field_data as $field) { - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => $field['title'], 'description' => '', 'field_name' => $field['name'], diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileFieldInstanceTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileFieldInstanceTest.php index 2093ed4..0a8ea57 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileFieldInstanceTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserProfileFieldInstanceTest.php @@ -49,44 +49,44 @@ protected function setUp() { */ public function testUserProfileFields() { // Migrated a text field. - $field = entity_load('field_instance_config', 'user.user.profile_color'); + $field = entity_load('field_config', 'user.user.profile_color'); $this->assertEqual($field->label(), 'Favorite color'); $this->assertEqual($field->getDescription(), 'List your favorite color'); // Migrated a textarea. - $field = entity_load('field_instance_config', 'user.user.profile_biography'); + $field = entity_load('field_config', 'user.user.profile_biography'); $this->assertEqual($field->label(), 'Biography'); $this->assertEqual($field->getDescription(), 'Tell people a little bit about yourself'); // Migrated checkbox field. - $field = entity_load('field_instance_config', 'user.user.profile_sell_address'); + $field = entity_load('field_config', 'user.user.profile_sell_address'); $this->assertEqual($field->label(), 'Sell your email address?'); $this->assertEqual($field->getDescription(), "If you check this box, we'll sell your address to spammers to help line the pockets of our shareholders. Thanks!"); // Migrated selection field. - $field = entity_load('field_instance_config', 'user.user.profile_sold_to'); + $field = entity_load('field_config', 'user.user.profile_sold_to'); $this->assertEqual($field->label(), 'Sales Category'); $this->assertEqual($field->getDescription(), "Select the sales categories to which this user's address was sold."); // Migrated list field. - $field = entity_load('field_instance_config', 'user.user.profile_bands'); + $field = entity_load('field_config', 'user.user.profile_bands'); $this->assertEqual($field->label(), 'Favorite bands'); $this->assertEqual($field->getDescription(), "Enter your favorite bands. When you've saved your profile, you'll be able to find other people with the same favorites."); /* // Migrated URL field. - $field = entity_load('field_instance_config', 'user.user.profile_blog'); + $field = entity_load('field_config', 'user.user.profile_blog'); $this->assertEqual($field->label(), 'Your blog'); $this->assertEqual($field->getDescription(), "Paste the full URL, including http://, of your personal blog."); */ // Migrated date field. - $field = entity_load('field_instance_config', 'user.user.profile_birthdate'); + $field = entity_load('field_config', 'user.user.profile_birthdate'); $this->assertEqual($field->label(), 'Birthdate'); $this->assertEqual($field->getDescription(), "Enter your birth date and we'll send you a coupon."); // Another migrated checkbox field, with a different source visibility setting. - $field = entity_load('field_instance_config', 'user.user.profile_love_migrations'); + $field = entity_load('field_config', 'user.user.profile_love_migrations'); $this->assertEqual($field->label(), 'I love migrations'); $this->assertEqual($field->getDescription(), "If you check this box, you love migrations."); } diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserTest.php index 2c72e19..3d564f0 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateUserTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateUserTest.php @@ -44,7 +44,7 @@ protected function setUp() { 'type' => 'image', 'translatable' => '0', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => 'User Picture', 'description' => '', 'field_name' => 'user_picture', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityDisplayTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityDisplayTest.php index 42fd565..3948694 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityDisplayTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityDisplayTest.php @@ -38,7 +38,7 @@ protected function setUp() { foreach (array('page', 'article', 'story') as $type) { entity_create('node_type', array('type' => $type))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => 'Tags', 'description' => '', 'field_name' => 'tags', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityFormDisplayTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityFormDisplayTest.php index cd8263e..7fdd95f 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityFormDisplayTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyEntityFormDisplayTest.php @@ -38,7 +38,7 @@ protected function setUp() { foreach (array('page', 'article', 'story') as $type) { entity_create('node_type', array('type' => $type))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'label' => 'Tags', 'description' => '', 'field_name' => 'tags', diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyFieldInstanceTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyFieldInstanceTest.php index 6e54c09..1ee83bb 100644 --- a/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyFieldInstanceTest.php +++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateVocabularyFieldInstanceTest.php @@ -83,12 +83,12 @@ protected function setUp() { public function testVocabularyFieldInstance() { // Test that the field exists. $field_id = 'node.article.tags'; - $field = entity_load('field_instance_config', $field_id); + $field = entity_load('field_config', $field_id); $this->assertEqual($field->id(), $field_id, 'Field instance exists on article bundle.'); // Test the page bundle as well. $field_id = 'node.page.tags'; - $field = entity_load('field_instance_config', $field_id); + $field = entity_load('field_config', $field_id); $this->assertEqual($field->id(), $field_id, 'Field instance exists on page bundle.'); $this->assertEqual(array('node', 'article', 'tags'), entity_load('migration', 'd6_vocabulary_field_instance')->getIdMap()->lookupDestinationID(array(4, 'article'))); diff --git a/core/modules/node/node.module b/core/modules/node/node.module index d96052d..01ab87b 100644 --- a/core/modules/node/node.module +++ b/core/modules/node/node.module @@ -18,7 +18,7 @@ use Drupal\Core\Database\Query\AlterableInterface; use Drupal\Core\Database\Query\SelectInterface; use Drupal\field\Entity\FieldStorageConfig; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\node\Entity\Node; use Drupal\node\Entity\NodeType; use Drupal\node\NodeTypeInterface; @@ -345,16 +345,15 @@ function node_type_load($name) { * * @param \Drupal\node\NodeTypeInterface $type * A node type object. - * @param $label + * @param string $label * (optional) The label for the body instance. * - * @return - * Body field instance. + * @return \Drupal\field\Entity\FieldConfig Body field. */ function node_add_body_field(NodeTypeInterface $type, $label = 'Body') { // Add or remove the body field, as needed. $field_storage = FieldStorageConfig::loadByName('node', 'body'); - $instance = FieldInstanceConfig::loadByName('node', $type->id(), 'body'); + $field = FieldConfig::loadByName('node', $type->id(), 'body'); if (empty($field_storage)) { $field_storage = entity_create('field_storage_config', array( 'name' => 'body', @@ -363,14 +362,14 @@ function node_add_body_field(NodeTypeInterface $type, $label = 'Body') { )); $field_storage->save(); } - if (empty($instance)) { - $instance = entity_create('field_instance_config', array( + if (empty($field)) { + $field = entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => $type->id(), 'label' => $label, 'settings' => array('display_summary' => TRUE), )); - $instance->save(); + $field->save(); // Assign widget settings for the 'default' form mode. entity_get_form_display('node', $type->type, 'default') @@ -400,7 +399,7 @@ function node_add_body_field(NodeTypeInterface $type, $label = 'Body') { } } - return $instance; + return $field; } /** diff --git a/core/modules/node/src/Plugin/views/wizard/Node.php b/core/modules/node/src/Plugin/views/wizard/Node.php index 93401db..9da3633 100644 --- a/core/modules/node/src/Plugin/views/wizard/Node.php +++ b/core/modules/node/src/Plugin/views/wizard/Node.php @@ -271,7 +271,7 @@ protected function buildFilters(&$form, FormStateInterface $form_state) { $taxonomy_fields = array_filter(\Drupal::entityManager()->getFieldDefinitions($this->entityTypeId, $bundle), function ($field_definition) { return $field_definition->getType() == 'taxonomy_term_reference'; }); - foreach ($taxonomy_fields as $field_name => $instance) { + foreach ($taxonomy_fields as $field_name => $field) { $widget = $display->getComponent($field_name); // We define "tag-like" taxonomy fields as ones that use the // "Autocomplete term widget (tagging)" widget. diff --git a/core/modules/node/src/Tests/Config/NodeImportCreateTest.php b/core/modules/node/src/Tests/Config/NodeImportCreateTest.php index bcff81c..ffcafcb 100644 --- a/core/modules/node/src/Tests/Config/NodeImportCreateTest.php +++ b/core/modules/node/src/Tests/Config/NodeImportCreateTest.php @@ -7,7 +7,7 @@ namespace Drupal\node\Tests\Config; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\simpletest\DrupalUnitTestBase; /** @@ -73,7 +73,7 @@ public function testImportCreate() { // Check that the content type was created. $node_type = entity_load('node_type', $node_type_id); $this->assertTrue($node_type, 'Import node type from staging was created.'); - $this->assertFalse(FieldInstanceConfig::loadByName('node', $node_type_id, 'body')); + $this->assertFalse(FieldConfig::loadByName('node', $node_type_id, 'body')); } } diff --git a/core/modules/node/src/Tests/MultiStepNodeFormBasicOptionsTest.php b/core/modules/node/src/Tests/MultiStepNodeFormBasicOptionsTest.php index 33375fa..0391e5b 100644 --- a/core/modules/node/src/Tests/MultiStepNodeFormBasicOptionsTest.php +++ b/core/modules/node/src/Tests/MultiStepNodeFormBasicOptionsTest.php @@ -39,7 +39,7 @@ function testMultiStepNodeFormBasicOptions() { ))->save(); // Attach an instance of the field to the page content type. - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'bundle' => 'page', diff --git a/core/modules/node/src/Tests/NodeAccessFieldTest.php b/core/modules/node/src/Tests/NodeAccessFieldTest.php index feb50a8..d31391e 100644 --- a/core/modules/node/src/Tests/NodeAccessFieldTest.php +++ b/core/modules/node/src/Tests/NodeAccessFieldTest.php @@ -58,7 +58,7 @@ protected function setUp() { 'entity_type' => 'node', 'type' => 'text' ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'bundle' => 'page', diff --git a/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php b/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php index ce664ab..c49a02f 100644 --- a/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php +++ b/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php @@ -65,7 +65,7 @@ protected function setUp() { )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'page', 'widget' => array( diff --git a/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php b/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php index ed91a57..442adb1 100644 --- a/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php +++ b/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php @@ -56,7 +56,7 @@ protected function setUp() { )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'page', 'widget' => array( diff --git a/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php b/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php index 7c904d2..84cba99 100644 --- a/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php +++ b/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php @@ -89,7 +89,7 @@ public function testConfigurationRename() { 'entity.form_display.node.' . $active_type . '.default::entity.form_display.node.' . $staged_type . '.default', 'entity.view_display.node.' . $active_type . '.default::entity.view_display.node.' . $staged_type . '.default', 'entity.view_display.node.' . $active_type . '.teaser::entity.view_display.node.' . $staged_type . '.teaser', - 'field.instance.node.' . $active_type . '.body::field.instance.node.' . $staged_type . '.body', + 'field.field.node.' . $active_type . '.body::field.field.node.' . $staged_type . '.body', ); $renames = $this->configImporter()->getUnprocessedConfiguration('rename'); $this->assertIdentical($expected, $renames); diff --git a/core/modules/node/src/Tests/NodeTypeTest.php b/core/modules/node/src/Tests/NodeTypeTest.php index 8c2d128..3125928 100644 --- a/core/modules/node/src/Tests/NodeTypeTest.php +++ b/core/modules/node/src/Tests/NodeTypeTest.php @@ -6,7 +6,7 @@ */ namespace Drupal\node\Tests; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; /** * Ensures that node type functions work correctly. @@ -78,8 +78,8 @@ function testNodeTypeEditing() { $web_user = $this->drupalCreateUser(array('bypass node access', 'administer content types', 'administer node fields')); $this->drupalLogin($web_user); - $instance = FieldInstanceConfig::loadByName('node', 'page', 'body'); - $this->assertEqual($instance->getLabel(), 'Body', 'Body field was found.'); + $field = FieldConfig::loadByName('node', 'page', 'body'); + $this->assertEqual($field->getLabel(), 'Body', 'Body field was found.'); // Verify that title and body fields are displayed. $this->drupalGet('node/add/page'); diff --git a/core/modules/node/src/Tests/PagePreviewTest.php b/core/modules/node/src/Tests/PagePreviewTest.php index 708fc1a..31a58c6 100644 --- a/core/modules/node/src/Tests/PagePreviewTest.php +++ b/core/modules/node/src/Tests/PagePreviewTest.php @@ -75,7 +75,7 @@ protected function setUp() { ), 'cardinality' => '-1', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'bundle' => 'page', diff --git a/core/modules/node/tests/modules/node_access_test/node_access_test.module b/core/modules/node/tests/modules/node_access_test/node_access_test.module index 797cf25..47727e0 100644 --- a/core/modules/node/tests/modules/node_access_test/node_access_test.module +++ b/core/modules/node/tests/modules/node_access_test/node_access_test.module @@ -20,7 +20,7 @@ */ use Drupal\field\Entity\FieldStorageConfig; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\node\NodeTypeInterface; use Drupal\node\NodeInterface; @@ -140,13 +140,13 @@ function node_access_test_add_field(NodeTypeInterface $type) { 'type' => 'integer', )); $field_storage->save(); - $instance = FieldInstanceConfig::create(array( + $field = FieldConfig::create(array( 'field_name' => 'private', 'entity_type' => 'node', 'bundle' => $type->id(), 'label' => 'Private', )); - $instance->save(); + $field->save(); // Assign widget settings for the 'default' form mode. entity_get_form_display('node', $type->id(), 'default') diff --git a/core/modules/options/config/schema/options.schema.yml b/core/modules/options/config/schema/options.schema.yml index 7a639cb..b34035c 100644 --- a/core/modules/options/config/schema/options.schema.yml +++ b/core/modules/options/config/schema/options.schema.yml @@ -21,7 +21,7 @@ field.list_integer.settings: type: string label: 'Allowed values function' -field.list_integer.instance_settings: +field.list_integer.field_settings: label: 'List (integer)' type: mapping mapping: { } @@ -58,7 +58,7 @@ field.list_float.settings: type: string label: 'Allowed values function' -field.list_float.instance_settings: +field.list_float.field_settings: label: 'List (float)' type: mapping mapping: { } @@ -95,7 +95,7 @@ field.list_text.settings: type: string label: 'Allowed values function' -field.list_text.instance_settings: +field.list_text.field_settings: label: 'List (float)' type: mapping mapping: { } diff --git a/core/modules/options/src/Tests/OptionsDynamicValuesTestBase.php b/core/modules/options/src/Tests/OptionsDynamicValuesTestBase.php index a48837b..74978da 100644 --- a/core/modules/options/src/Tests/OptionsDynamicValuesTestBase.php +++ b/core/modules/options/src/Tests/OptionsDynamicValuesTestBase.php @@ -41,7 +41,7 @@ protected function setUp() { 'allowed_values_function' => 'options_test_dynamic_values_callback', ), ))->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'entity_test_rev', 'bundle' => 'entity_test_rev', diff --git a/core/modules/options/src/Tests/OptionsFieldTest.php b/core/modules/options/src/Tests/OptionsFieldTest.php index 8832326..89e428e 100644 --- a/core/modules/options/src/Tests/OptionsFieldTest.php +++ b/core/modules/options/src/Tests/OptionsFieldTest.php @@ -76,7 +76,7 @@ function testUpdateAllowedValues() { // Options are reset when a new field with the same name is created. $this->fieldStorage->delete(); entity_create('field_storage_config', $this->fieldStorageDefinition)->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->fieldName, 'entity_type' => 'entity_test', 'bundle' => 'entity_test', diff --git a/core/modules/options/src/Tests/OptionsFieldUITest.php b/core/modules/options/src/Tests/OptionsFieldUITest.php index ebbba4b..33f7d2e 100644 --- a/core/modules/options/src/Tests/OptionsFieldUITest.php +++ b/core/modules/options/src/Tests/OptionsFieldUITest.php @@ -252,7 +252,7 @@ protected function createOptionsField($type) { 'entity_type' => 'node', 'type' => $type, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'bundle' => $this->type, diff --git a/core/modules/options/src/Tests/OptionsFieldUnitTestBase.php b/core/modules/options/src/Tests/OptionsFieldUnitTestBase.php index 659928c..c101310 100644 --- a/core/modules/options/src/Tests/OptionsFieldUnitTestBase.php +++ b/core/modules/options/src/Tests/OptionsFieldUnitTestBase.php @@ -46,9 +46,9 @@ /** * The list field instance used in the test. * - * @var \Drupal\field\Entity\FieldInstanceConfig + * @var \Drupal\field\Entity\FieldConfig */ - protected $instance; + protected $field; /** * {@inheritdoc} @@ -69,11 +69,11 @@ protected function setUp() { $this->fieldStorage = entity_create('field_storage_config', $this->fieldStorageDefinition); $this->fieldStorage->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => 'entity_test', )); - $this->instance->save(); + $this->field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($this->fieldName, array( diff --git a/core/modules/options/src/Tests/OptionsWidgetsTest.php b/core/modules/options/src/Tests/OptionsWidgetsTest.php index 4d25950..35ced84 100644 --- a/core/modules/options/src/Tests/OptionsWidgetsTest.php +++ b/core/modules/options/src/Tests/OptionsWidgetsTest.php @@ -96,11 +96,11 @@ protected function setUp() { */ function testRadioButtons() { // Create an instance of the 'single value' field. - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $this->card_1, 'bundle' => 'entity_test', )); - $instance->save(); + $field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($this->card_1->getName(), array( 'type' => 'options_buttons', @@ -142,8 +142,8 @@ function testRadioButtons() { // Check that required radios with one option is auto-selected. $this->card_1->settings['allowed_values'] = array(99 => 'Only allowed value'); $this->card_1->save(); - $instance->required = TRUE; - $instance->save(); + $field->required = TRUE; + $field->save(); $this->drupalGet('entity_test/manage/' . $entity->id()); $this->assertFieldChecked('edit-card-1-99'); } @@ -153,11 +153,11 @@ function testRadioButtons() { */ function testCheckBoxes() { // Create an instance of the 'multiple values' field. - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $this->card_2, 'bundle' => 'entity_test', )); - $instance->save(); + $field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($this->card_2->getName(), array( 'type' => 'options_buttons', @@ -231,8 +231,8 @@ function testCheckBoxes() { // Required checkbox with one option is auto-selected. $this->card_2->settings['allowed_values'] = array(99 => 'Only allowed value'); $this->card_2->save(); - $instance->required = TRUE; - $instance->save(); + $field->required = TRUE; + $field->save(); $this->drupalGet('entity_test/manage/' . $entity->id()); $this->assertFieldChecked('edit-card-2-99'); } @@ -242,12 +242,12 @@ function testCheckBoxes() { */ function testSelectListSingle() { // Create an instance of the 'single value' field. - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $this->card_1, 'bundle' => 'entity_test', 'required' => TRUE, )); - $instance->save(); + $field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($this->card_1->getName(), array( 'type' => 'options_select', @@ -277,7 +277,7 @@ function testSelectListSingle() { // Submit form: select invalid 'none' option. $edit = array('card_1' => '_none'); $this->drupalPostForm(NULL, $edit, t('Save')); - $this->assertRaw(t('!title field is required.', array('!title' => $instance->getName())), 'Cannot save a required field when selecting "none" from the select list.'); + $this->assertRaw(t('!title field is required.', array('!title' => $field->getName())), 'Cannot save a required field when selecting "none" from the select list.'); // Submit form: select first option. $edit = array('card_1' => 0); @@ -293,8 +293,8 @@ function testSelectListSingle() { $this->assertNoOptionSelected('edit-card-1', 2); // Make the field non required. - $instance->required = FALSE; - $instance->save(); + $field->required = FALSE; + $field->save(); // Display form. $this->drupalGet('entity_test/manage/' . $entity->id()); @@ -342,11 +342,11 @@ function testSelectListSingle() { */ function testSelectListMultiple() { // Create an instance of the 'multiple values' field. - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $this->card_2, 'bundle' => 'entity_test', )); - $instance->save(); + $field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($this->card_2->getName(), array( 'type' => 'options_select', @@ -415,8 +415,8 @@ function testSelectListMultiple() { $this->assertFieldValues($entity_init, 'card_2', array()); // A required select list does not have an empty key. - $instance->required = TRUE; - $instance->save(); + $field->required = TRUE; + $field->save(); $this->drupalGet('entity_test/manage/' . $entity->id()); $this->assertFalse($this->xpath('//select[@id=:id]//option[@value=""]', array(':id' => 'edit-card-2')), 'A required select list does not have an empty key.'); @@ -429,8 +429,8 @@ function testSelectListMultiple() { $this->card_2->settings['allowed_values'] = array(); $this->card_2->settings['allowed_values_function'] = 'options_test_allowed_values_callback'; $this->card_2->save(); - $instance->required = FALSE; - $instance->save(); + $field->required = FALSE; + $field->save(); // Display form: with no field data, nothing is selected. $this->drupalGet('entity_test/manage/' . $entity->id()); diff --git a/core/modules/quickedit/src/Tests/EditorSelectionTest.php b/core/modules/quickedit/src/Tests/EditorSelectionTest.php index 10bf38b..0ef18ab 100644 --- a/core/modules/quickedit/src/Tests/EditorSelectionTest.php +++ b/core/modules/quickedit/src/Tests/EditorSelectionTest.php @@ -55,7 +55,7 @@ protected function getSelectedEditor($entity_id, $field_name, $view_mode = 'defa */ public function testText() { $field_name = 'field_text'; - $this->createFieldWithInstance( + $this->createFieldWithStorage( $field_name, 'text', 1, 'Simple text field', // Instance settings. array('text_processing' => 0), @@ -77,13 +77,13 @@ public function testText() { $this->assertEqual('plain_text', $this->getSelectedEditor($entity->id(), $field_name), "Without text processing, cardinality 1, the 'plain_text' editor is selected."); // Editor selection with text processing, cardinality 1. - $this->fields->field_text_instance->settings['text_processing'] = 1; - $this->fields->field_text_instance->save(); + $this->fields->field_text_field->settings['text_processing'] = 1; + $this->fields->field_text_field->save(); $this->assertEqual('form', $this->getSelectedEditor($entity->id(), $field_name), "With text processing, cardinality 1, the 'form' editor is selected."); // Editor selection without text processing, cardinality 1 (again). - $this->fields->field_text_instance->settings['text_processing'] = 0; - $this->fields->field_text_instance->save(); + $this->fields->field_text_field->settings['text_processing'] = 0; + $this->fields->field_text_field->save(); $this->assertEqual('plain_text', $this->getSelectedEditor($entity->id(), $field_name), "Without text processing again, cardinality 1, the 'plain_text' editor is selected."); // Editor selection without text processing, cardinality >1 @@ -92,8 +92,8 @@ public function testText() { $this->assertEqual('form', $this->getSelectedEditor($entity->id(), $field_name), "Without text processing, cardinality >1, the 'form' editor is selected."); // Editor selection with text processing, cardinality >1 - $this->fields->field_text_instance->settings['text_processing'] = 1; - $this->fields->field_text_instance->save(); + $this->fields->field_text_field->settings['text_processing'] = 1; + $this->fields->field_text_field->save(); $this->assertEqual('form', $this->getSelectedEditor($entity->id(), $field_name), "With text processing, cardinality >1, the 'form' editor is selected."); } @@ -109,7 +109,7 @@ public function testTextWysiwyg() { $this->editorSelector = new EditorSelector($this->editorManager, $this->container->get('plugin.manager.field.formatter')); $field_name = 'field_textarea'; - $this->createFieldWithInstance( + $this->createFieldWithStorage( $field_name, 'text', 1, 'Long text field', // Instance settings. array('text_processing' => 1), @@ -146,7 +146,7 @@ public function testTextWysiwyg() { */ public function testNumber() { $field_name = 'field_nr'; - $this->createFieldWithInstance( + $this->createFieldWithStorage( $field_name, 'integer', 1, 'Simple number field', // Instance settings. array(), diff --git a/core/modules/quickedit/src/Tests/MetadataGeneratorTest.php b/core/modules/quickedit/src/Tests/MetadataGeneratorTest.php index bf1df14..5bfcffe 100644 --- a/core/modules/quickedit/src/Tests/MetadataGeneratorTest.php +++ b/core/modules/quickedit/src/Tests/MetadataGeneratorTest.php @@ -68,7 +68,7 @@ protected function setUp() { public function testSimpleEntityType() { $field_1_name = 'field_text'; $field_1_label = 'Simple text field'; - $this->createFieldWithInstance( + $this->createFieldWithStorage( $field_1_name, 'text', 1, $field_1_label, // Instance settings. array('text_processing' => 0), @@ -81,7 +81,7 @@ public function testSimpleEntityType() { ); $field_2_name = 'field_nr'; $field_2_label = 'Simple number field'; - $this->createFieldWithInstance( + $this->createFieldWithStorage( $field_2_name, 'integer', 1, $field_2_label, // Instance settings. array(), @@ -140,7 +140,7 @@ public function testEditorWithCustomMetadata() { // Create a rich text field. $field_name = 'field_rich'; $field_label = 'Rich text field'; - $this->createFieldWithInstance( + $this->createFieldWithStorage( $field_name, 'text', 1, $field_label, // Instance settings. array('text_processing' => 1), diff --git a/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php b/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php index 7e91724..4f4e4d8 100644 --- a/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php +++ b/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php @@ -89,7 +89,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'label' => 'Tags', diff --git a/core/modules/quickedit/src/Tests/QuickEditTestBase.php b/core/modules/quickedit/src/Tests/QuickEditTestBase.php index 4f4ece7..417af86 100644 --- a/core/modules/quickedit/src/Tests/QuickEditTestBase.php +++ b/core/modules/quickedit/src/Tests/QuickEditTestBase.php @@ -28,7 +28,7 @@ * - $this->fields->{$field_name}_field_storage * - $this->fields->{$field_name}_instance * - * @see \Drupal\quickedit\Tests\QuickEditTestBase::createFieldWithInstance() + * @see \Drupal\quickedit\Tests\QuickEditTestBase::createFieldWithStorage() * * @var \ArrayObject */ @@ -57,7 +57,7 @@ protected function setUp() { * The field's cardinality. * @param string $label * The field's label (used everywhere: widget label, formatter label). - * @param array $instance_settings + * @param array $field_settings * @param string $widget_type * The widget type. * @param array $widget_settings @@ -67,7 +67,7 @@ protected function setUp() { * @param array $formatter_settings * The formatter settings. */ - protected function createFieldWithInstance($field_name, $type, $cardinality, $label, $instance_settings, $widget_type, $widget_settings, $formatter_type, $formatter_settings) { + protected function createFieldWithStorage($field_name, $type, $cardinality, $label, $field_settings, $widget_type, $widget_settings, $formatter_type, $formatter_settings) { $field_storage = $field_name . '_field_storage'; $this->fields->$field_storage = entity_create('field_storage_config', array( 'name' => $field_name, @@ -77,16 +77,16 @@ protected function createFieldWithInstance($field_name, $type, $cardinality, $la )); $this->fields->$field_storage->save(); - $instance = $field_name . '_instance'; - $this->fields->$instance = entity_create('field_instance_config', array( + $field = $field_name . '_field'; + $this->fields->$field = entity_create('field_config', array( 'field_storage' => $this->fields->$field_storage, 'bundle' => 'entity_test', 'label' => $label, 'description' => $label, 'weight' => mt_rand(0, 127), - 'settings' => $instance_settings, + 'settings' => $field_settings, )); - $this->fields->$instance->save(); + $this->fields->$field->save(); entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($field_name, array( diff --git a/core/modules/rdf/src/Tests/Field/EntityReferenceRdfaTest.php b/core/modules/rdf/src/Tests/Field/EntityReferenceRdfaTest.php index 781ad69..7160bf0 100644 --- a/core/modules/rdf/src/Tests/Field/EntityReferenceRdfaTest.php +++ b/core/modules/rdf/src/Tests/Field/EntityReferenceRdfaTest.php @@ -53,7 +53,7 @@ protected function setUp() { $this->installEntitySchema('entity_test_rev'); - entity_reference_create_instance($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType); + entity_reference_create_field($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType); // Add the mapping. $mapping = rdf_get_mapping('entity_test', 'entity_test'); diff --git a/core/modules/rdf/src/Tests/Field/FieldRdfaTestBase.php b/core/modules/rdf/src/Tests/Field/FieldRdfaTestBase.php index 5332912..3ad3b27 100644 --- a/core/modules/rdf/src/Tests/Field/FieldRdfaTestBase.php +++ b/core/modules/rdf/src/Tests/Field/FieldRdfaTestBase.php @@ -116,7 +116,7 @@ protected function createTestField() { 'entity_type' => 'entity_test', 'type' => $this->fieldType, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => $this->fieldName, 'bundle' => 'entity_test', diff --git a/core/modules/rdf/src/Tests/Field/TaxonomyTermReferenceRdfaTest.php b/core/modules/rdf/src/Tests/Field/TaxonomyTermReferenceRdfaTest.php index ed4bbf5..301e660 100644 --- a/core/modules/rdf/src/Tests/Field/TaxonomyTermReferenceRdfaTest.php +++ b/core/modules/rdf/src/Tests/Field/TaxonomyTermReferenceRdfaTest.php @@ -68,7 +68,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => $this->fieldName, 'bundle' => 'entity_test', diff --git a/core/modules/rdf/src/Tests/TaxonomyTermFieldAttributesTest.php b/core/modules/rdf/src/Tests/TaxonomyTermFieldAttributesTest.php index 3d55fef..d6dd046 100644 --- a/core/modules/rdf/src/Tests/TaxonomyTermFieldAttributesTest.php +++ b/core/modules/rdf/src/Tests/TaxonomyTermFieldAttributesTest.php @@ -163,7 +163,7 @@ protected function createTaxonomyTermReferenceField($field_name, $vocabulary) { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => 'node', 'bundle' => 'article', diff --git a/core/modules/search/src/Tests/SearchCommentTest.php b/core/modules/search/src/Tests/SearchCommentTest.php index c64d3ed..70d8c85 100644 --- a/core/modules/search/src/Tests/SearchCommentTest.php +++ b/core/modules/search/src/Tests/SearchCommentTest.php @@ -9,7 +9,7 @@ use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface; use Drupal\Component\Utility\String; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; /** * Tests integration searching comments. @@ -74,9 +74,9 @@ function testSearchResultsComment() { $comment_body = 'Test comment body'; // Make preview optional. - $instance = FieldInstanceConfig::loadByName('node', 'article', 'comment'); - $instance->settings['preview'] = DRUPAL_OPTIONAL; - $instance->save(); + $field = FieldConfig::loadByName('node', 'article', 'comment'); + $field->settings['preview'] = DRUPAL_OPTIONAL; + $field->save(); // Allow anonymous users to search content. $edit = array( @@ -146,9 +146,9 @@ function testSearchResultsCommentAccess() { // Create a node. // Make preview optional. - $instance = FieldInstanceConfig::loadByName('node', 'article', 'comment'); - $instance->settings['preview'] = DRUPAL_OPTIONAL; - $instance->save(); + $field = FieldConfig::loadByName('node', 'article', 'comment'); + $field->settings['preview'] = DRUPAL_OPTIONAL; + $field->save(); $this->node = $this->drupalCreateNode(array('type' => 'article')); // Post a comment using 'Full HTML' text format. diff --git a/core/modules/serialization/src/Tests/EntityResolverTest.php b/core/modules/serialization/src/Tests/EntityResolverTest.php index db65692..d3cd12c 100644 --- a/core/modules/serialization/src/Tests/EntityResolverTest.php +++ b/core/modules/serialization/src/Tests/EntityResolverTest.php @@ -41,7 +41,7 @@ protected function setUp() { ))->save(); // Create the test field instance. - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test_mulrev', 'field_name' => 'field_test_entity_reference', 'bundle' => 'entity_test_mulrev', diff --git a/core/modules/serialization/src/Tests/NormalizerTestBase.php b/core/modules/serialization/src/Tests/NormalizerTestBase.php index 8d5bf5c..531c53d 100644 --- a/core/modules/serialization/src/Tests/NormalizerTestBase.php +++ b/core/modules/serialization/src/Tests/NormalizerTestBase.php @@ -34,7 +34,7 @@ protected function setUp() { 'cardinality' => 1, 'translatable' => FALSE, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test_mulrev', 'field_name' => 'field_test_text', 'bundle' => 'entity_test_mulrev', diff --git a/core/modules/simpletest/src/Tests/KernelTestBaseTest.php b/core/modules/simpletest/src/Tests/KernelTestBaseTest.php index adf573e..fe342e6 100644 --- a/core/modules/simpletest/src/Tests/KernelTestBaseTest.php +++ b/core/modules/simpletest/src/Tests/KernelTestBaseTest.php @@ -256,7 +256,7 @@ function testEnableModulesFixedList() { 'type' => 'test_field' )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'entity_test', ))->save(); diff --git a/core/modules/system/src/Tests/Ajax/MultiFormTest.php b/core/modules/system/src/Tests/Ajax/MultiFormTest.php index 1d6c505..6d14123 100644 --- a/core/modules/system/src/Tests/Ajax/MultiFormTest.php +++ b/core/modules/system/src/Tests/Ajax/MultiFormTest.php @@ -37,7 +37,7 @@ protected function setUp() { 'type' => 'text', 'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => 'node', 'bundle' => 'page', diff --git a/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php b/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php index 94b27fc..5ad00f5 100644 --- a/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php +++ b/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php @@ -66,7 +66,7 @@ protected function setUp() { // this configurable field in later tests to ensure that modifications to // field (instance) configuration invalidate render cache entries. if ($this->entity->getEntityType()->isFieldable()) { - // Add field, so we can modify the Field and FieldInstance entities to + // Add field, so we can modify the Field and Field entities to // verify that changes to those indeed clear cache tags. entity_create('field_storage_config', array( 'name' => 'configurable_field', @@ -74,7 +74,7 @@ protected function setUp() { 'type' => 'test_field', 'settings' => array(), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => $this->entity->getEntityTypeId(), 'bundle' => $this->entity->bundle(), 'field_name' => 'configurable_field', @@ -193,7 +193,7 @@ protected function createReferenceTestEntities($referenced_entity) { 'target_type' => $referenced_entity->getEntityTypeId(), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => $entity_type, 'bundle' => $bundle, @@ -402,8 +402,8 @@ public function testReferencedEntity() { // Verify that after modifying a configurable field on the entity, there // is a cache miss. $this->pass("Test modification of referenced entity's configurable field.", 'Debug'); - $field_name = $this->entity->getEntityTypeId() . '.configurable_field'; - $field_storage = entity_load('field_storage_config', $field_name); + $field_storage_name = $this->entity->getEntityTypeId() . '.configurable_field'; + $field_storage = entity_load('field_storage_config', $field_storage_name); $field_storage->save(); $this->verifyPageCache($referencing_entity_path, 'MISS'); $this->verifyPageCache($listing_path, 'MISS'); @@ -417,9 +417,9 @@ public function testReferencedEntity() { // Verify that after modifying a configurable field instance on the // entity, there is a cache miss. $this->pass("Test modification of referenced entity's configurable field instance.", 'Debug'); - $field_instance_name = $this->entity->getEntityTypeId() . '.' . $this->entity->bundle() . '.configurable_field'; - $field_instance = entity_load('field_instance_config', $field_instance_name); - $field_instance->save(); + $field_name = $this->entity->getEntityTypeId() . '.' . $this->entity->bundle() . '.configurable_field'; + $field = entity_load('field_config', $field_name); + $field->save(); $this->verifyPageCache($referencing_entity_path, 'MISS'); $this->verifyPageCache($listing_path, 'MISS'); $this->verifyPageCache($non_referencing_entity_path, 'HIT'); diff --git a/core/modules/system/src/Tests/Entity/EntityFieldTest.php b/core/modules/system/src/Tests/Entity/EntityFieldTest.php index c69d2cf..2c90615 100644 --- a/core/modules/system/src/Tests/Entity/EntityFieldTest.php +++ b/core/modules/system/src/Tests/Entity/EntityFieldTest.php @@ -17,7 +17,7 @@ use Drupal\Core\TypedData\DataDefinitionInterface; use Drupal\Core\TypedData\Type\StringInterface; use Drupal\Core\TypedData\TypedDataInterface; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\node\Entity\NodeType; /** @@ -684,9 +684,9 @@ public function testComputedProperties() { */ protected function assertComputedProperties($entity_type) { // Make the test text field processed. - $instance = FieldInstanceConfig::loadByName($entity_type, $entity_type, 'field_test_text'); - $instance->settings['text_processing'] = 1; - $instance->save(); + $field = FieldConfig::loadByName($entity_type, $entity_type, 'field_test_text'); + $field->settings['text_processing'] = 1; + $field->save(); $entity = $this->createTestEntity($entity_type); $entity->field_test_text->value = "The text text to filter."; diff --git a/core/modules/system/src/Tests/Entity/EntityLanguageTestBase.php b/core/modules/system/src/Tests/Entity/EntityLanguageTestBase.php index b73495e..922b0b9 100644 --- a/core/modules/system/src/Tests/Entity/EntityLanguageTestBase.php +++ b/core/modules/system/src/Tests/Entity/EntityLanguageTestBase.php @@ -8,7 +8,7 @@ namespace Drupal\system\Tests\Entity; use Drupal\Core\Language\Language; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; /** * Base class for language-aware entity tests. @@ -37,13 +37,6 @@ protected $field_name; /** - * Test field instances, keyed by entity type. - * - * @var array - */ - protected $instance; - - /** * The untranslatable test field name. * * @var string @@ -75,7 +68,7 @@ protected function setUp() { // Create an untranslatable test field. $this->untranslatable_field_name = drupal_strtolower($this->randomMachineName() . '_field_name'); - // Create field instances in all entity variations. + // Create field fields in all entity variations. foreach (entity_test_entity_types() as $entity_type) { entity_create('field_storage_config', array( 'name' => $this->field_name, @@ -83,13 +76,13 @@ protected function setUp() { 'type' => 'text', 'cardinality' => 4, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => $entity_type, 'bundle' => $entity_type, 'translatable' => TRUE, ))->save(); - $this->instance[$entity_type] = entity_load('field_instance_config', $entity_type . '.' . $entity_type . '.' . $this->field_name); + $this->field[$entity_type] = entity_load('field_config', $entity_type . '.' . $entity_type . '.' . $this->field_name); entity_create('field_storage_config', array( 'name' => $this->untranslatable_field_name, @@ -97,7 +90,7 @@ protected function setUp() { 'type' => 'text', 'cardinality' => 4, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->untranslatable_field_name, 'entity_type' => $entity_type, 'bundle' => $entity_type, @@ -134,12 +127,12 @@ protected function setUp() { protected function toggleFieldTranslatability($entity_type, $bundle) { $fields = array($this->field_name, $this->untranslatable_field_name); foreach ($fields as $field_name) { - $instance = FieldInstanceConfig::loadByName($entity_type, $bundle, $field_name); - $translatable = !$instance->isTranslatable(); - $instance->set('translatable', $translatable); - $instance->save(); - $instance = FieldInstanceConfig::loadByName($entity_type, $bundle, $field_name); - $this->assertEqual($instance->isTranslatable(), $translatable, 'Field translatability changed.'); + $field = FieldConfig::loadByName($entity_type, $bundle, $field_name); + $translatable = !$field->isTranslatable(); + $field->set('translatable', $translatable); + $field->save(); + $field = FieldConfig::loadByName($entity_type, $bundle, $field_name); + $this->assertEqual($field->isTranslatable(), $translatable, 'Field translatability changed.'); } \Drupal::cache('entity')->deleteAll(); } diff --git a/core/modules/system/src/Tests/Entity/EntityQueryAggregateTest.php b/core/modules/system/src/Tests/Entity/EntityQueryAggregateTest.php index 5d6da72..08665b9 100644 --- a/core/modules/system/src/Tests/Entity/EntityQueryAggregateTest.php +++ b/core/modules/system/src/Tests/Entity/EntityQueryAggregateTest.php @@ -57,7 +57,7 @@ protected function setUp() { 'type' => 'integer', 'cardinality' => 2, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => 'entity_test', 'bundle' => 'entity_test', diff --git a/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php b/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php index 5ba0d74..222e925 100644 --- a/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php +++ b/core/modules/system/src/Tests/Entity/EntityQueryRelationshipTest.php @@ -83,7 +83,7 @@ protected function setUp() { entity_create('field_storage_config', $field)->save(); entity_test_create_bundle('test_bundle'); // Third, create the instance. - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => $this->fieldName, 'bundle' => 'test_bundle', diff --git a/core/modules/system/src/Tests/Entity/EntityQueryTest.php b/core/modules/system/src/Tests/Entity/EntityQueryTest.php index 182ca05..5fb3cce 100644 --- a/core/modules/system/src/Tests/Entity/EntityQueryTest.php +++ b/core/modules/system/src/Tests/Entity/EntityQueryTest.php @@ -78,7 +78,7 @@ protected function setUp() { } while ($bundles && strtolower($bundles[0]) >= strtolower($bundle)); entity_test_create_bundle($bundle); foreach ($field_storages as $field_storage) { - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => $bundle, ))->save(); @@ -434,7 +434,7 @@ public function testCount() { )); $field_storage->save(); $bundle = $this->randomMachineName(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => $bundle, ))->save(); diff --git a/core/modules/system/src/Tests/Entity/EntityTranslationTest.php b/core/modules/system/src/Tests/Entity/EntityTranslationTest.php index 1cb7c82..ce5bda4 100644 --- a/core/modules/system/src/Tests/Entity/EntityTranslationTest.php +++ b/core/modules/system/src/Tests/Entity/EntityTranslationTest.php @@ -435,14 +435,14 @@ function testEntityTranslationAPI() { // Check that per-language defaults are properly populated. $entity = $this->reloadEntity($entity); - $instance_id = implode('.', array($entity->getEntityTypeId(), $entity->bundle(), $this->field_name)); - $instance = $this->entityManager->getStorage('field_instance_config')->load($instance_id); - $instance->default_value_function = 'entity_test_field_default_value'; - $instance->save(); + $field_id = implode('.', array($entity->getEntityTypeId(), $entity->bundle(), $this->field_name)); + $field = $this->entityManager->getStorage('field_config')->load($field_id); + $field->default_value_function = 'entity_test_field_default_value'; + $field->save(); $translation = $entity->addTranslation($langcode2); - $field = $translation->get($this->field_name); - $this->assertEqual($field->value, $this->field_name . '_' . $langcode2, 'Language-aware default values correctly populated.'); - $this->assertEqual($field->getLangcode(), $langcode2, 'Field object has the expected langcode.'); + $field_storage = $translation->get($this->field_name); + $this->assertEqual($field_storage->value, $this->field_name . '_' . $langcode2, 'Language-aware default values correctly populated.'); + $this->assertEqual($field_storage->getLangcode(), $langcode2, 'Field object has the expected langcode.'); } /** diff --git a/core/modules/system/src/Tests/Entity/EntityViewBuilderTest.php b/core/modules/system/src/Tests/Entity/EntityViewBuilderTest.php index 65355fe..7f72526 100644 --- a/core/modules/system/src/Tests/Entity/EntityViewBuilderTest.php +++ b/core/modules/system/src/Tests/Entity/EntityViewBuilderTest.php @@ -85,7 +85,7 @@ public function testEntityViewBuilderCacheWithReferences() { $request->setMethod('GET'); // Create an entity reference field and an entity that will be referenced. - entity_reference_create_instance('entity_test', 'entity_test', 'reference_field', 'Reference', 'entity_test'); + entity_reference_create_field('entity_test', 'entity_test', 'reference_field', 'Reference', 'entity_test'); entity_get_display('entity_test', 'entity_test', 'full')->setComponent('reference_field')->save(); $entity_test_reference = $this->createTestEntity('entity_test'); $entity_test_reference->save(); diff --git a/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php b/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php index 6f1d7a8..6b09baa 100644 --- a/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php +++ b/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php @@ -86,8 +86,8 @@ public function testEntityUri() { // Verify that after modifying a configurable field on the entity, there // is a cache miss. $this->pass("Test modification of entity's configurable field.", 'Debug'); - $field_name = $this->entity->getEntityTypeId() . '.configurable_field'; - $field_storage = entity_load('field_storage_config', $field_name); + $field_storage_name = $this->entity->getEntityTypeId() . '.configurable_field'; + $field_storage = entity_load('field_storage_config', $field_storage_name); $field_storage->save(); $this->verifyPageCache($entity_path, 'MISS'); @@ -97,9 +97,9 @@ public function testEntityUri() { // Verify that after modifying a configurable field instance on the // entity, there is a cache miss. $this->pass("Test modification of entity's configurable field instance.", 'Debug'); - $field_instance_name = $this->entity->getEntityTypeId() . '.' . $this->entity->bundle() . '.configurable_field'; - $field_instance = entity_load('field_instance_config', $field_instance_name); - $field_instance->save(); + $field_name = $this->entity->getEntityTypeId() . '.' . $this->entity->bundle() . '.configurable_field'; + $field = entity_load('field_config', $field_name); + $field->save(); $this->verifyPageCache($entity_path, 'MISS'); // Verify a cache hit. diff --git a/core/modules/system/src/Tests/Entity/FieldSqlStorageTest.php b/core/modules/system/src/Tests/Entity/FieldSqlStorageTest.php index 924164c..85dae23 100644 --- a/core/modules/system/src/Tests/Entity/FieldSqlStorageTest.php +++ b/core/modules/system/src/Tests/Entity/FieldSqlStorageTest.php @@ -51,9 +51,9 @@ class FieldSqlStorageTest extends EntityUnitTestBase { /** * A field instance to use in this test class. * - * @var \Drupal\field\Entity\FieldInstanceConfig + * @var \Drupal\field\Entity\FieldConfig */ - protected $instance; + protected $field; /** * @var string @@ -82,11 +82,11 @@ protected function setUp() { 'cardinality' => $this->field_cardinality, )); $this->fieldStorage->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => $entity_type )); - $this->instance->save(); + $this->field->save(); $this->table = ContentEntityDatabaseStorage::_fieldTableName($this->fieldStorage); $this->revision_table = ContentEntityDatabaseStorage::_fieldRevisionTableName($this->fieldStorage); @@ -275,7 +275,7 @@ function testLongNames() { 'entity_type' => $entity_type, 'type' => 'test_field', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_names[$i], 'entity_type' => $entity_type, 'bundle' => $bundle, @@ -307,11 +307,11 @@ function testUpdateFieldSchemaWithData() { 'settings' => array('precision' => 5, 'scale' => 2), )); $field_storage->save(); - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => $entity_type, )); - $instance->save(); + $field->save(); $entity = entity_create($entity_type, array( 'id' => 0, 'revision_id' => 0, @@ -373,11 +373,11 @@ function testFieldUpdateIndexesWithData() { 'type' => 'text', )); $field_storage->save(); - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => $entity_type, )); - $instance->save(); + $field->save(); $tables = array(ContentEntityDatabaseStorage::_fieldTableName($field_storage), ContentEntityDatabaseStorage::_fieldRevisionTableName($field_storage)); // Verify the indexes we will create do not exist yet. diff --git a/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php b/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php index 7949f0b..e625f42 100644 --- a/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php +++ b/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php @@ -34,7 +34,7 @@ protected function setUp() { 'cardinality' => -1, 'translatable' => FALSE, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'user', 'field_name' => 'test_multiple', 'bundle' => 'user', diff --git a/core/modules/system/src/Tests/Form/RebuildTest.php b/core/modules/system/src/Tests/Form/RebuildTest.php index dadf519..70755c3 100644 --- a/core/modules/system/src/Tests/Form/RebuildTest.php +++ b/core/modules/system/src/Tests/Form/RebuildTest.php @@ -71,7 +71,7 @@ function testPreserveFormActionAfterAJAX() { 'type' => 'text', 'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => 'node', 'bundle' => 'page', diff --git a/core/modules/system/tests/modules/entity_test/entity_test.install b/core/modules/system/tests/modules/entity_test/entity_test.install index 4dfd09b..541191d 100644 --- a/core/modules/system/tests/modules/entity_test/entity_test.install +++ b/core/modules/system/tests/modules/entity_test/entity_test.install @@ -23,7 +23,7 @@ function entity_test_install() { 'type' => 'text', 'cardinality' => 1, ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => $entity_type, 'field_name' => 'field_test_text', 'bundle' => $entity_type, diff --git a/core/modules/system/tests/modules/entity_test/entity_test.module b/core/modules/system/tests/modules/entity_test/entity_test.module index c7db020..e0d0d1a 100644 --- a/core/modules/system/tests/modules/entity_test/entity_test.module +++ b/core/modules/system/tests/modules/entity_test/entity_test.module @@ -431,7 +431,7 @@ function entity_test_entity_test_mul_translation_delete(EntityInterface $transla * An array of default values, in the same format as the $default_value * property. * - * @see \Drupal\field\Entity\FieldInstanceConfig::$default_value + * @see \Drupal\field\Entity\FieldConfig::$default_value */ function entity_test_field_default_value(ContentEntityInterface $entity, FieldDefinitionInterface $definition) { return array(array('value' => $definition->getName() . '_' . $entity->language()->id)); diff --git a/core/modules/taxonomy/config/schema/taxonomy.schema.yml b/core/modules/taxonomy/config/schema/taxonomy.schema.yml index 40004c3..62d1cd7 100644 --- a/core/modules/taxonomy/config/schema/taxonomy.schema.yml +++ b/core/modules/taxonomy/config/schema/taxonomy.schema.yml @@ -55,7 +55,7 @@ field.taxonomy_term_reference.settings: type: integer value: 'Parent' -field.taxonomy_term_reference.instance_settings: +field.taxonomy_term_reference.field_settings: type: mapping label: 'Taxonomy term reference settings' mapping: diff --git a/core/modules/taxonomy/src/Plugin/Field/FieldType/TaxonomyTermReferenceItem.php b/core/modules/taxonomy/src/Plugin/Field/FieldType/TaxonomyTermReferenceItem.php index c58a631..5ec5ddd 100644 --- a/core/modules/taxonomy/src/Plugin/Field/FieldType/TaxonomyTermReferenceItem.php +++ b/core/modules/taxonomy/src/Plugin/Field/FieldType/TaxonomyTermReferenceItem.php @@ -152,7 +152,7 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_ /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { return array(); } diff --git a/core/modules/taxonomy/src/Tests/LegacyTest.php b/core/modules/taxonomy/src/Tests/LegacyTest.php index 8a2ac68..faebc48 100644 --- a/core/modules/taxonomy/src/Tests/LegacyTest.php +++ b/core/modules/taxonomy/src/Tests/LegacyTest.php @@ -49,7 +49,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'node', 'field_name' => $field_name, 'bundle' => 'article', diff --git a/core/modules/taxonomy/src/Tests/RssTest.php b/core/modules/taxonomy/src/Tests/RssTest.php index 5410e7f..8ad0403 100644 --- a/core/modules/taxonomy/src/Tests/RssTest.php +++ b/core/modules/taxonomy/src/Tests/RssTest.php @@ -47,7 +47,7 @@ protected function setUp() { ), )); $this->fieldStorage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => 'article', ))->save(); diff --git a/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php b/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php index c70ae8e..217bfd2 100644 --- a/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php +++ b/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php @@ -46,7 +46,7 @@ protected function setUp() { 'uri_scheme' => 'private', ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $name, 'entity_type' => $entity_type, 'bundle' => $this->vocabulary->id(), diff --git a/core/modules/taxonomy/src/Tests/TaxonomyTermReferenceItemTest.php b/core/modules/taxonomy/src/Tests/TaxonomyTermReferenceItemTest.php index 3db2290..87ee50f 100644 --- a/core/modules/taxonomy/src/Tests/TaxonomyTermReferenceItemTest.php +++ b/core/modules/taxonomy/src/Tests/TaxonomyTermReferenceItemTest.php @@ -59,7 +59,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'field_test_taxonomy', 'bundle' => 'entity_test', diff --git a/core/modules/taxonomy/src/Tests/TermFieldMultipleVocabularyTest.php b/core/modules/taxonomy/src/Tests/TermFieldMultipleVocabularyTest.php index 4588587..c18c59c 100644 --- a/core/modules/taxonomy/src/Tests/TermFieldMultipleVocabularyTest.php +++ b/core/modules/taxonomy/src/Tests/TermFieldMultipleVocabularyTest.php @@ -55,7 +55,7 @@ protected function setUp() { ), ) ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'entity_test', 'bundle' => 'entity_test', diff --git a/core/modules/taxonomy/src/Tests/TermFieldTest.php b/core/modules/taxonomy/src/Tests/TermFieldTest.php index fa0f007..1a668f6 100644 --- a/core/modules/taxonomy/src/Tests/TermFieldTest.php +++ b/core/modules/taxonomy/src/Tests/TermFieldTest.php @@ -30,7 +30,6 @@ class TermFieldTest extends TaxonomyTestBase { */ public static $modules = array('entity_test', 'field_ui'); - protected $instance; protected $vocabulary; protected function setUp() { @@ -61,7 +60,7 @@ protected function setUp() { ) )); $this->field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $this->field_storage, 'bundle' => 'entity_test', ))->save(); @@ -134,7 +133,7 @@ function testTaxonomyTermFieldWidgets() { /** * No php error message on the field setting page for autocomplete widget. */ - function testTaxonomyTermFieldInstanceSettingsAutocompleteWidget() { + function testTaxonomyTermFieldSettingsAutocompleteWidget() { entity_get_form_display('entity_test', 'entity_test', 'default') ->setComponent($this->field_name, array( 'type' => 'taxonomy_autocomplete', diff --git a/core/modules/taxonomy/src/Tests/TermIndexTest.php b/core/modules/taxonomy/src/Tests/TermIndexTest.php index d1ec1b4..38afd05 100644 --- a/core/modules/taxonomy/src/Tests/TermIndexTest.php +++ b/core/modules/taxonomy/src/Tests/TermIndexTest.php @@ -42,7 +42,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name_1, 'bundle' => 'article', 'entity_type' => 'node', @@ -73,7 +73,7 @@ protected function setUp() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name_2, 'bundle' => 'article', 'entity_type' => 'node', diff --git a/core/modules/taxonomy/src/Tests/TermTest.php b/core/modules/taxonomy/src/Tests/TermTest.php index b2e9757..8cb21d4 100644 --- a/core/modules/taxonomy/src/Tests/TermTest.php +++ b/core/modules/taxonomy/src/Tests/TermTest.php @@ -42,12 +42,12 @@ protected function setUp() { ), ))->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_name' => $field_name, 'bundle' => 'article', 'entity_type' => 'node', )); - $this->instance->save(); + $this->field->save(); entity_get_form_display('node', 'article', 'default') ->setComponent($field_name, array( 'type' => 'options_select', @@ -162,7 +162,7 @@ function testTaxonomyNode() { $edit = array(); $edit['title[0][value]'] = $this->randomMachineName(); $edit['body[0][value]'] = $this->randomMachineName(); - $edit[$this->instance->getName() . '[]'] = $term1->id(); + $edit[$this->field->getName() . '[]'] = $term1->id(); $this->drupalPostForm('node/add/article', $edit, t('Save')); // Check that the term is displayed when the node is viewed. @@ -176,7 +176,7 @@ function testTaxonomyNode() { $this->assertText($term1->getName(), 'Term is displayed after saving the node with no changes.'); // Edit the node with a different term. - $edit[$this->instance->getName() . '[]'] = $term2->id(); + $edit[$this->field->getName() . '[]'] = $term2->id(); $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save')); $this->drupalGet('node/' . $node->id()); @@ -194,9 +194,9 @@ function testTaxonomyNode() { */ function testNodeTermCreationAndDeletion() { // Enable tags in the vocabulary. - $instance = $this->instance; - entity_get_form_display($instance->entity_type, $instance->bundle, 'default') - ->setComponent($instance->getName(), array( + $field = $this->field; + entity_get_form_display($field->entity_type, $field->bundle, 'default') + ->setComponent($field->getName(), array( 'type' => 'taxonomy_autocomplete', 'settings' => array( 'placeholder' => 'Start typing here.', @@ -215,7 +215,7 @@ function testNodeTermCreationAndDeletion() { $edit['body[0][value]'] = $this->randomMachineName(); // Insert the terms in a comma separated list. Vocabulary 1 is a // free-tagging field created by the default profile. - $edit[$instance->getName()] = Tags::implode($terms); + $edit[$field->getName()] = Tags::implode($terms); // Verify the placeholder is there. $this->drupalGet('node/add/article'); @@ -577,9 +577,9 @@ function testTaxonomyGetTermByName() { */ function testReSavingTags() { // Enable tags in the vocabulary. - $instance = $this->instance; - entity_get_form_display($instance->entity_type, $instance->bundle, 'default') - ->setComponent($instance->getName(), array( + $field = $this->field; + entity_get_form_display($field->entity_type, $field->bundle, 'default') + ->setComponent($field->getName(), array( 'type' => 'taxonomy_autocomplete', )) ->save(); @@ -589,7 +589,7 @@ function testReSavingTags() { $edit = array(); $edit['title[0][value]'] = $this->randomMachineName(8); $edit['body[0][value]'] = $this->randomMachineName(16); - $edit[$this->instance->getName()] = $term->getName(); + $edit[$this->field->getName()] = $term->getName(); $this->drupalPostForm('node/add/article', $edit, t('Save')); // Check that the term is displayed when editing and saving the node with no diff --git a/core/modules/taxonomy/src/Tests/TokenReplaceTest.php b/core/modules/taxonomy/src/Tests/TokenReplaceTest.php index 27d02ca..5c8c0f9 100644 --- a/core/modules/taxonomy/src/Tests/TokenReplaceTest.php +++ b/core/modules/taxonomy/src/Tests/TokenReplaceTest.php @@ -40,7 +40,7 @@ protected function setUp() { ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'bundle' => 'article', 'entity_type' => 'node', diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php index c1d7065..604149b 100644 --- a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php +++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php @@ -76,7 +76,7 @@ function setUp() { )); $field->translatable = TRUE; $field->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'field_foo', 'entity_type' => 'taxonomy_term', 'label' => 'Foo', diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php index 2950fe5..ca508ce 100644 --- a/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php +++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php @@ -93,7 +93,7 @@ protected function mockStandardInstall() { ), ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'label' => 'Tags', diff --git a/core/modules/taxonomy/src/Tests/VocabularyCrudTest.php b/core/modules/taxonomy/src/Tests/VocabularyCrudTest.php index 03201ab..44741b2 100644 --- a/core/modules/taxonomy/src/Tests/VocabularyCrudTest.php +++ b/core/modules/taxonomy/src/Tests/VocabularyCrudTest.php @@ -7,7 +7,7 @@ namespace Drupal\taxonomy\Tests; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; /** * Tests loading, saving and deleting vocabularies. @@ -146,7 +146,7 @@ function testTaxonomyVocabularyChangeMachineName() { 'entity_type' => 'taxonomy_term', 'type' => 'test_field', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'field_test', 'entity_type' => 'taxonomy_term', 'bundle' => $this->vocabulary->id(), @@ -164,14 +164,14 @@ function testTaxonomyVocabularyChangeMachineName() { $this->assertTrue(isset($info[$new_name]), 'The new bundle name appears in entity_get_bundles().'); // Check that the field instance is still attached to the vocabulary. - $this->assertTrue(FieldInstanceConfig::loadByName('taxonomy_term', $new_name, 'field_test'), 'The bundle name was updated correctly.'); + $this->assertTrue(FieldConfig::loadByName('taxonomy_term', $new_name, 'field_test'), 'The bundle name was updated correctly.'); } /** * Test uninstall and reinstall of the taxonomy module. */ function testUninstallReinstall() { - // Fields and field instances attached to taxonomy term bundles should be + // Field storages and fields attached to taxonomy term bundles should be // removed when the module is uninstalled. $field_name = drupal_strtolower($this->randomMachineName() . '_field_name'); $storage_definition = array( @@ -181,25 +181,25 @@ function testUninstallReinstall() { 'cardinality' => 4 ); entity_create('field_storage_config', $storage_definition)->save(); - $instance_definition = array( + $field_definition = array( 'field_name' => $field_name, 'entity_type' => 'taxonomy_term', 'bundle' => $this->vocabulary->id(), 'label' => $this->randomMachineName() . '_label', ); - entity_create('field_instance_config', $instance_definition)->save(); + entity_create('field_config', $field_definition)->save(); require_once DRUPAL_ROOT . '/core/includes/install.inc'; $this->container->get('module_handler')->uninstall(array('taxonomy')); \Drupal::moduleHandler()->install(array('taxonomy')); - // Now create a vocabulary with the same name. All field instances + // Now create a vocabulary with the same name. All fields // connected to this vocabulary name should have been removed when the // module was uninstalled. Creating a new field with the same name and // an instance of this field on the same bundle name should be successful. $this->vocabulary->enforceIsNew(); $this->vocabulary->save(); entity_create('field_storage_config', $storage_definition)->save(); - entity_create('field_instance_config', $instance_definition)->save(); + entity_create('field_config', $field_definition)->save(); } } diff --git a/core/modules/taxonomy/taxonomy.module b/core/modules/taxonomy/taxonomy.module index d58064d..1306161 100644 --- a/core/modules/taxonomy/taxonomy.module +++ b/core/modules/taxonomy/taxonomy.module @@ -126,7 +126,7 @@ function taxonomy_term_uri($term) { } /** - * Return nodes attached to a term across all field instances. + * Return nodes attached to a term across all fields. * * This function requires taxonomy module to be maintaining its own tables, * and will return an empty array if it is not. If using other field storage diff --git a/core/modules/telephone/src/Tests/TelephoneFieldTest.php b/core/modules/telephone/src/Tests/TelephoneFieldTest.php index f686517..d95f951 100644 --- a/core/modules/telephone/src/Tests/TelephoneFieldTest.php +++ b/core/modules/telephone/src/Tests/TelephoneFieldTest.php @@ -27,7 +27,7 @@ class TelephoneFieldTest extends WebTestBase { 'telephone' ); - protected $instance; + protected $field; protected $web_user; protected function setUp() { @@ -51,7 +51,7 @@ function testTelephoneField() { 'entity_type' => 'node', 'type' => 'telephone', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => 'field_telephone', 'label' => 'Telephone Number', 'entity_type' => 'node', diff --git a/core/modules/telephone/src/Tests/TelephoneItemTest.php b/core/modules/telephone/src/Tests/TelephoneItemTest.php index 8b25689..a1ce82c 100644 --- a/core/modules/telephone/src/Tests/TelephoneItemTest.php +++ b/core/modules/telephone/src/Tests/TelephoneItemTest.php @@ -34,7 +34,7 @@ protected function setUp() { 'entity_type' => 'entity_test', 'type' => 'telephone', ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => 'entity_test', 'field_name' => 'field_test', 'bundle' => 'entity_test', diff --git a/core/modules/text/config/schema/text.schema.yml b/core/modules/text/config/schema/text.schema.yml index dc54670..5f1be6d 100644 --- a/core/modules/text/config/schema/text.schema.yml +++ b/core/modules/text/config/schema/text.schema.yml @@ -16,7 +16,7 @@ field.text.settings: type: integer label: 'Maximum length' -field.text.instance_settings: +field.text.field_settings: type: mapping label: 'Text settings' mapping: @@ -44,7 +44,7 @@ field.text_long.settings: sequence: - type: string -field.text_long.instance_settings: +field.text_long.field_settings: type: mapping label: 'Long text settings' mapping: @@ -72,7 +72,7 @@ field.text_with_summary.settings: sequence: - type: string -field.text_with_summary.instance_settings: +field.text_with_summary.field_settings: type: mapping label: 'Text area with a summary' mapping: diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextItem.php b/core/modules/text/src/Plugin/Field/FieldType/TextItem.php index 3b7285d..d61a050 100644 --- a/core/modules/text/src/Plugin/Field/FieldType/TextItem.php +++ b/core/modules/text/src/Plugin/Field/FieldType/TextItem.php @@ -98,7 +98,7 @@ public function settingsForm(array &$form, FormStateInterface $form_state, $has_ /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { $element = array(); $element['text_processing'] = array( diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php index ca1769d..80e36c4 100644 --- a/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php +++ b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php @@ -19,8 +19,8 @@ /** * {@inheritdoc} */ - public static function defaultInstanceSettings() { - $settings = parent::defaultInstanceSettings(); + public static function defaultFieldSettings() { + $settings = parent::defaultFieldSettings(); $settings['text_processing'] = 0; return $settings; } diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php b/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php index 1c74a41..3308ae2 100644 --- a/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php +++ b/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php @@ -49,7 +49,7 @@ public static function schema(FieldStorageDefinitionInterface $field_definition) /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { $element = array(); $element['text_processing'] = array( diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php b/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php index 7ffcd64..9b0fffe 100644 --- a/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php +++ b/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php @@ -27,11 +27,11 @@ class TextWithSummaryItem extends TextItemBase { /** * {@inheritdoc} */ - public static function defaultInstanceSettings() { + public static function defaultFieldSettings() { return array( 'text_processing' => 1, 'display_summary' => 0, - ) + parent::defaultInstanceSettings(); + ) + parent::defaultFieldSettings(); } /** @@ -92,7 +92,7 @@ public function isEmpty() { /** * {@inheritdoc} */ - public function instanceSettingsForm(array $form, FormStateInterface $form_state) { + public function fieldSettingsForm(array $form, FormStateInterface $form_state) { $element = array(); $settings = $this->getSettings(); diff --git a/core/modules/text/src/Tests/Formatter/TextFormatterTest.php b/core/modules/text/src/Tests/Formatter/TextFormatterTest.php index 8b6cf67..d0382d4 100644 --- a/core/modules/text/src/Tests/Formatter/TextFormatterTest.php +++ b/core/modules/text/src/Tests/Formatter/TextFormatterTest.php @@ -61,7 +61,7 @@ protected function setUp() { 'type' => 'text', 'settings' => array(), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => $this->entityType, 'bundle' => $this->bundle, 'field_name' => 'processed_text', @@ -76,7 +76,7 @@ protected function setUp() { 'type' => 'text', 'settings' => array(), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'entity_type' => $this->entityType, 'bundle' => $this->bundle, 'field_name' => 'unprocessed_text', diff --git a/core/modules/text/src/Tests/Formatter/TextPlainUnitTest.php b/core/modules/text/src/Tests/Formatter/TextPlainUnitTest.php index f6f9150..bdea07d 100644 --- a/core/modules/text/src/Tests/Formatter/TextPlainUnitTest.php +++ b/core/modules/text/src/Tests/Formatter/TextPlainUnitTest.php @@ -53,14 +53,14 @@ class TextPlainUnitTest extends DrupalUnitTestBase { /** * @var array */ + protected $storage_settings; + + /** + * @var array + */ protected $field_settings; /** - * @var array - */ - protected $instance_settings; - - /** * @var string */ protected $formatter_type; @@ -76,9 +76,9 @@ class TextPlainUnitTest extends DrupalUnitTestBase { protected $fieldStorage; /** - * @var \Drupal\field\Entity\FieldInstanceConfig + * @var \Drupal\field\Entity\FieldConfig */ - protected $instance; + protected $field; /** * @var string @@ -111,8 +111,8 @@ protected function setUp() { $this->field_name = drupal_strtolower($this->randomMachineName()); $this->field_type = 'text_long'; - $this->field_settings = array(); - $this->instance_settings = array( + $this->storage_settings = array(); + $this->storage_settings = array( 'text_processing' => FALSE, ); @@ -123,17 +123,17 @@ protected function setUp() { 'name' => $this->field_name, 'entity_type' => $this->entity_type, 'type' => $this->field_type, - 'settings' => $this->field_settings, + 'settings' => $this->storage_settings, )); $this->fieldStorage->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => $this->bundle, 'label' => $this->randomMachineName(), - 'settings' => $this->instance_settings, + 'settings' => $this->storage_settings, )); - $this->instance->save(); + $this->field->save(); $this->view_mode = 'default'; $this->display = entity_get_display($this->entity_type, $this->bundle, $this->view_mode) diff --git a/core/modules/text/src/Tests/TextFieldTest.php b/core/modules/text/src/Tests/TextFieldTest.php index 330d9f8..dae13cc 100644 --- a/core/modules/text/src/Tests/TextFieldTest.php +++ b/core/modules/text/src/Tests/TextFieldTest.php @@ -53,7 +53,7 @@ function testTextFieldValidation() { ) )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'entity_test', ))->save(); @@ -92,7 +92,7 @@ function _testTextfieldWidgets($field_type, $widget_type) { 'type' => $field_type )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'entity_test', 'label' => $this->randomMachineName() . '_label', @@ -158,7 +158,7 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) { 'type' => $field_type )); $field_storage->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_storage' => $field_storage, 'bundle' => 'entity_test', 'label' => $this->randomMachineName() . '_label', diff --git a/core/modules/text/src/Tests/TextWithSummaryItemTest.php b/core/modules/text/src/Tests/TextWithSummaryItemTest.php index 4a04d63..c792947 100644 --- a/core/modules/text/src/Tests/TextWithSummaryItemTest.php +++ b/core/modules/text/src/Tests/TextWithSummaryItemTest.php @@ -35,9 +35,9 @@ class TextWithSummaryItemTest extends FieldUnitTestBase { /** * Field instance. * - * @var \Drupal\field\Entity\FieldInstanceConfig + * @var \Drupal\field\Entity\FieldConfig */ - protected $instance; + protected $field; protected function setUp() { @@ -78,8 +78,8 @@ public function testCrudAndUpdate() { $this->assertNull($entity->summary_field->format); // Enable text processing. - $this->instance->settings['text_processing'] = 1; - $this->instance->save(); + $this->field->settings['text_processing'] = 1; + $this->field->save(); // Re-load the entity. $entity = entity_load($entity_type, $entity->id(), TRUE); @@ -112,14 +112,14 @@ protected function createField($entity_type) { ) )); $this->fieldStorage->save(); - $this->instance = entity_create('field_instance_config', array( + $this->field = entity_create('field_config', array( 'field_storage' => $this->fieldStorage, 'bundle' => $entity_type, 'settings' => array( 'text_processing' => 0, ) )); - $this->instance->save(); + $this->field->save(); } } diff --git a/core/modules/user/src/Tests/UserCreateTest.php b/core/modules/user/src/Tests/UserCreateTest.php index 4af2b40..d311b03 100644 --- a/core/modules/user/src/Tests/UserCreateTest.php +++ b/core/modules/user/src/Tests/UserCreateTest.php @@ -49,7 +49,7 @@ protected function testUserAdd() { ), ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $field_name, 'entity_type' => 'user', 'label' => 'Picture', diff --git a/core/modules/user/src/Tests/UserEntityReferenceTest.php b/core/modules/user/src/Tests/UserEntityReferenceTest.php index b0ab29d..025aedf 100644 --- a/core/modules/user/src/Tests/UserEntityReferenceTest.php +++ b/core/modules/user/src/Tests/UserEntityReferenceTest.php @@ -6,7 +6,7 @@ namespace Drupal\user\Tests; -use Drupal\field\Entity\FieldInstanceConfig; +use Drupal\field\Entity\FieldConfig; use Drupal\system\Tests\Entity\EntityUnitTestBase; /** @@ -51,14 +51,14 @@ protected function setUp() { )); $this->role2->save(); - entity_reference_create_instance('user', 'user', 'user_reference', 'User reference', 'user'); + entity_reference_create_field('user', 'user', 'user_reference', 'User reference', 'user'); } /** * Tests user selection by roles. */ function testUserSelectionByRole() { - $field_definition = FieldInstanceConfig::loadByName('user', 'user', 'user_reference'); + $field_definition = FieldConfig::loadByName('user', 'user', 'user_reference'); $field_definition->settings['handler_settings']['filter']['role'] = array( $this->role1->id() => $this->role1->id(), $this->role2->id() => 0, diff --git a/core/modules/user/src/Tests/UserRegistrationTest.php b/core/modules/user/src/Tests/UserRegistrationTest.php index cc025c8..b909868 100644 --- a/core/modules/user/src/Tests/UserRegistrationTest.php +++ b/core/modules/user/src/Tests/UserRegistrationTest.php @@ -199,13 +199,13 @@ function testRegistrationWithUserFields() { 'cardinality' => 1, )); $field_storage->save(); - $instance = entity_create('field_instance_config', array( + $field = entity_create('field_config', array( 'field_storage' => $field_storage, 'label' => 'Some user field', 'bundle' => 'user', 'required' => TRUE, )); - $instance->save(); + $field->save(); entity_get_form_display('user', 'user', 'default') ->setComponent('test_user_field', array('type' => 'test_field_widget')) ->save(); @@ -214,7 +214,7 @@ function testRegistrationWithUserFields() { // Check that the field does not appear on the registration form. $this->drupalGet('user/register'); - $this->assertNoText($instance->label(), 'The field does not appear on user registration form'); + $this->assertNoText($field->label(), 'The field does not appear on user registration form'); // Have the field appear on the registration form. entity_get_form_display('user', 'user', 'register') @@ -222,7 +222,7 @@ function testRegistrationWithUserFields() { ->save(); $this->drupalGet('user/register'); - $this->assertText($instance->label(), 'The field appears on user registration form'); + $this->assertText($field->label(), 'The field appears on user registration form'); // Check that validation errors are correctly reported. $edit = array(); @@ -231,11 +231,11 @@ function testRegistrationWithUserFields() { // Missing input in required field. $edit['test_user_field[0][value]'] = ''; $this->drupalPostForm(NULL, $edit, t('Create new account')); - $this->assertRaw(t('@name field is required.', array('@name' => $instance->label())), 'Field validation error was correctly reported.'); + $this->assertRaw(t('@name field is required.', array('@name' => $field->label())), 'Field validation error was correctly reported.'); // Invalid input. $edit['test_user_field[0][value]'] = '-1'; $this->drupalPostForm(NULL, $edit, t('Create new account')); - $this->assertRaw(t('%name does not accept the value -1.', array('%name' => $instance->label())), 'Field validation error was correctly reported.'); + $this->assertRaw(t('%name does not accept the value -1.', array('%name' => $field->label())), 'Field validation error was correctly reported.'); // Submit with valid data. $value = rand(1, 255); diff --git a/core/modules/views/src/Tests/DefaultViewsTest.php b/core/modules/views/src/Tests/DefaultViewsTest.php index c0feff5..fd1728a 100644 --- a/core/modules/views/src/Tests/DefaultViewsTest.php +++ b/core/modules/views/src/Tests/DefaultViewsTest.php @@ -70,7 +70,7 @@ protected function setUp() { ), ) ))->save(); - entity_create('field_instance_config', array( + entity_create('field_config', array( 'field_name' => $this->field_name, 'entity_type' => 'node', 'bundle' => 'page', diff --git a/core/modules/views/src/Tests/Wizard/TaggedWithTest.php b/core/modules/views/src/Tests/Wizard/TaggedWithTest.php index 4e5a29a..687a527 100644 --- a/core/modules/views/src/Tests/Wizard/TaggedWithTest.php +++ b/core/modules/views/src/Tests/Wizard/TaggedWithTest.php @@ -29,10 +29,10 @@ class TaggedWithTest extends WizardTestBase { protected $tag_vocabulary; + protected $tag_field_storage; + protected $tag_field; - protected $tag_instance; - protected function setUp() { parent::setUp(); @@ -68,11 +68,11 @@ protected function setUp() { // Create an instance of the tag field on one of the content types, and // configure it to display an autocomplete widget. - $this->tag_instance = array( + $this->tag_field = array( 'field_storage' => $this->tag_field_storage, 'bundle' => $this->node_type_with_tags->type, ); - entity_create('field_instance_config', $this->tag_instance)->save(); + entity_create('field_config', $this->tag_field)->save(); entity_get_form_display('node', $this->node_type_with_tags->type, 'default') ->setComponent('field_views_testing_tags', array( @@ -181,9 +181,9 @@ function testTaggedWithByNodeType() { // If we add an instance of the tagging field to the second node type, the // "tagged with" form element should not appear for it too. - $instance = $this->tag_instance; - $instance['bundle'] = $this->node_type_without_tags->type; - entity_create('field_instance_config', $instance)->save(); + $field = $this->tag_field; + $field['bundle'] = $this->node_type_without_tags->type; + entity_create('field_config', $field)->save(); entity_get_form_display('node', $this->node_type_without_tags->type, 'default') ->setComponent('field_views_testing_tags', array( 'type' => 'taxonomy_autocomplete', diff --git a/core/modules/views/views.module b/core/modules/views/views.module index 459ff0a..8e5ff47 100644 --- a/core/modules/views/views.module +++ b/core/modules/views/views.module @@ -22,7 +22,7 @@ use Drupal\Component\Plugin\Exception\PluginException; use Drupal\views\Entity\View; use Drupal\views\Views; -use Drupal\field\FieldInstanceConfigInterface; +use Drupal\field\FieldConfigInterface; /** * Implements hook_help(). @@ -496,25 +496,25 @@ function views_language_list($field = 'name', $flags = LanguageInterface::STATE_ } /** - * Implements hook_ENTITY_TYPE_create() for 'field_instance_config'. + * Implements hook_ENTITY_TYPE_create() for 'field_config'. */ -function views_field_instance_config_create(FieldInstanceConfigInterface $field_instance) { +function views_field_config_create(FieldConfigInterface $field_instance) { // @todo: Is this necessary? Use cache tags to only delete Views' cache data? \Drupal::cache('discovery')->deleteAll(); } /** - * Implements hook_ENTITY_TYPE_update() for 'field_instance_config'. + * Implements hook_ENTITY_TYPE_update() for 'field_config'. */ -function views_field_instance_config_update(FieldInstanceConfigInterface $field_instance) { +function views_field_config_update(FieldConfigInterface $field_instance) { Cache::deleteTags(array('extension' => 'views')); \Drupal::cache('render')->deleteAll(); } /** - * Implements hook_ENTITY_TYPE_delete() for 'field_instance_config'. + * Implements hook_ENTITY_TYPE_delete() for 'field_config'. */ -function views_field_instance_config_delete(FieldInstanceConfigInterface $field_instance) { +function views_field_config_delete(FieldConfigInterface $field_instance) { Cache::deleteTags(array('extension' => 'views')); \Drupal::cache('render')->deleteAll(); } diff --git a/core/profiles/standard/config/install/entity.form_display.node.article.default.yml b/core/profiles/standard/config/install/entity.form_display.node.article.default.yml index 359aa18..cf16fc4 100644 --- a/core/profiles/standard/config/install/entity.form_display.node.article.default.yml +++ b/core/profiles/standard/config/install/entity.form_display.node.article.default.yml @@ -39,10 +39,10 @@ hidden: { } status: true dependencies: entity: - - field.instance.node.article.body - - field.instance.node.article.comment - - field.instance.node.article.field_image - - field.instance.node.article.field_tags + - field.field.node.article.body + - field.field.node.article.comment + - field.field.node.article.field_image + - field.field.node.article.field_tags - node.type.article module: - comment diff --git a/core/profiles/standard/config/install/entity.view_display.node.article.default.yml b/core/profiles/standard/config/install/entity.view_display.node.article.default.yml index 1599151..a0da43b 100644 --- a/core/profiles/standard/config/install/entity.view_display.node.article.default.yml +++ b/core/profiles/standard/config/install/entity.view_display.node.article.default.yml @@ -26,9 +26,9 @@ content: third_party_settings: { } dependencies: entity: - - field.instance.node.article.body - - field.instance.node.article.field_image - - field.instance.node.article.field_tags + - field.field.node.article.body + - field.field.node.article.field_image + - field.field.node.article.field_tags - node.type.article module: - comment diff --git a/core/profiles/standard/config/install/entity.view_display.node.article.teaser.yml b/core/profiles/standard/config/install/entity.view_display.node.article.teaser.yml index d22ab13..22dcce7 100644 --- a/core/profiles/standard/config/install/entity.view_display.node.article.teaser.yml +++ b/core/profiles/standard/config/install/entity.view_display.node.article.teaser.yml @@ -28,9 +28,9 @@ content: dependencies: entity: - entity.view_mode.node.teaser - - field.instance.node.article.body - - field.instance.node.article.field_image - - field.instance.node.article.field_tags + - field.field.node.article.body + - field.field.node.article.field_image + - field.field.node.article.field_tags - node.type.article module: - image diff --git a/core/profiles/standard/config/install/field.instance.node.article.field_image.yml b/core/profiles/standard/config/install/field.field.node.article.field_image.yml similarity index 100% rename from core/profiles/standard/config/install/field.instance.node.article.field_image.yml rename to core/profiles/standard/config/install/field.field.node.article.field_image.yml diff --git a/core/profiles/standard/config/install/field.instance.node.article.field_tags.yml b/core/profiles/standard/config/install/field.field.node.article.field_tags.yml similarity index 100% rename from core/profiles/standard/config/install/field.instance.node.article.field_tags.yml rename to core/profiles/standard/config/install/field.field.node.article.field_tags.yml diff --git a/core/profiles/standard/config/install/field.instance.user.user.user_picture.yml b/core/profiles/standard/config/install/field.field.user.user.user_picture.yml similarity index 100% rename from core/profiles/standard/config/install/field.instance.user.user.user_picture.yml rename to core/profiles/standard/config/install/field.field.user.user.user_picture.yml diff --git a/core/tests/Drupal/Tests/Core/Config/StorageComparerTest.php b/core/tests/Drupal/Tests/Core/Config/StorageComparerTest.php index ca33a5f..2263126 100644 --- a/core/tests/Drupal/Tests/Core/Config/StorageComparerTest.php +++ b/core/tests/Drupal/Tests/Core/Config/StorageComparerTest.php @@ -63,7 +63,7 @@ protected function getConfigData() { 'uuid' => $uuid->generate(), ), // Config entity which requires another config entity. - 'field.instance.node.article.body' => array( + 'field.field.node.article.body' => array( 'id' => 'node.article.body', 'uuid' => $uuid->generate(), 'dependencies' => array( @@ -141,7 +141,7 @@ public function testCreateChangelistNoChange() { public function testCreateChangelistCreate() { $target_data = $source_data = $this->getConfigData(); unset($target_data['field.storage.node.body']); - unset($target_data['field.instance.node.article.body']); + unset($target_data['field.field.node.article.body']); unset($target_data['views.view.test_view']); $this->sourceStorage->expects($this->once()) @@ -170,7 +170,7 @@ public function testCreateChangelistCreate() { $expected = array( 'field.storage.node.body', 'views.view.test_view', - 'field.instance.node.article.body', + 'field.field.node.article.body', ); $this->assertEquals($expected, $this->storageComparer->getChangelist('create')); $this->assertEmpty($this->storageComparer->getChangelist('delete')); @@ -183,7 +183,7 @@ public function testCreateChangelistCreate() { public function testCreateChangelistDelete() { $target_data = $source_data = $this->getConfigData(); unset($source_data['field.storage.node.body']); - unset($source_data['field.instance.node.article.body']); + unset($source_data['field.field.node.article.body']); unset($source_data['views.view.test_view']); $this->sourceStorage->expects($this->once()) @@ -210,7 +210,7 @@ public function testCreateChangelistDelete() { $this->storageComparer->createChangelist(); $expected = array( - 'field.instance.node.article.body', + 'field.field.node.article.body', 'views.view.test_view', 'field.storage.node.body', ); @@ -225,7 +225,7 @@ public function testCreateChangelistDelete() { public function testCreateChangelistUpdate() { $target_data = $source_data = $this->getConfigData(); $source_data['system.site']['title'] = 'Drupal New!'; - $source_data['field.instance.node.article.body']['new_config_key'] = 'new data'; + $source_data['field.field.node.article.body']['new_config_key'] = 'new data'; $source_data['field.storage.node.body']['new_config_key'] = 'new data'; $this->sourceStorage->expects($this->once()) @@ -254,7 +254,7 @@ public function testCreateChangelistUpdate() { $expected = array( 'field.storage.node.body', 'system.site', - 'field.instance.node.article.body', + 'field.field.node.article.body', ); $this->assertEquals($expected, $this->storageComparer->getChangelist('update')); $this->assertEmpty($this->storageComparer->getChangelist('create')); diff --git a/core/tests/Drupal/Tests/Core/Entity/BaseFieldDefinitionTest.php b/core/tests/Drupal/Tests/Core/Entity/BaseFieldDefinitionTest.php index 4387790..d7e85ef 100644 --- a/core/tests/Drupal/Tests/Core/Entity/BaseFieldDefinitionTest.php +++ b/core/tests/Drupal/Tests/Core/Entity/BaseFieldDefinitionTest.php @@ -47,7 +47,7 @@ protected function setUp() { 'settings' => array( 'some_setting' => 'value 1' ), - 'instance_settings' => array( + 'field_settings' => array( 'some_instance_setting' => 'value 2', ), ); @@ -64,9 +64,9 @@ protected function setUp() { ->with($this->fieldType) ->will($this->returnValue($this->fieldTypeDefinition['settings'])); $field_type_manager->expects($this->any()) - ->method('getDefaultInstanceSettings') + ->method('getDefaultFieldSettings') ->with($this->fieldType) - ->will($this->returnValue($this->fieldTypeDefinition['instance_settings'])); + ->will($this->returnValue($this->fieldTypeDefinition['field_settings'])); $container = new ContainerBuilder(); $container->set('plugin.manager.field.field_type', $field_type_manager); @@ -120,7 +120,7 @@ public function testFieldSettings() { $value = $this->randomMachineName(); $definition->setSetting($setting, $value); $this->assertEquals($value, $definition->getSetting($setting)); - $default_settings = $this->fieldTypeDefinition['settings'] + $this->fieldTypeDefinition['instance_settings']; + $default_settings = $this->fieldTypeDefinition['settings'] + $this->fieldTypeDefinition['field_settings']; $this->assertEquals(array($setting => $value) + $default_settings, $definition->getSettings()); } @@ -129,7 +129,7 @@ public function testFieldSettings() { */ public function testDefaultFieldSettings() { $definition = BaseFieldDefinition::create($this->fieldType); - $expected_settings = $this->fieldTypeDefinition['settings'] + $this->fieldTypeDefinition['instance_settings']; + $expected_settings = $this->fieldTypeDefinition['settings'] + $this->fieldTypeDefinition['field_settings']; $this->assertEquals($expected_settings, $definition->getSettings()); foreach ($expected_settings as $setting => $value) { $this->assertEquals($value, $definition->getSetting($setting)); diff --git a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php index 39f8d76..a04739c 100644 --- a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php +++ b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php @@ -159,7 +159,7 @@ protected function setUp() { ->method('getDefaultSettings') ->will($this->returnValue(array())); $this->fieldTypePluginManager->expects($this->any()) - ->method('getDefaultInstanceSettings') + ->method('getDefaultFieldSettings') ->will($this->returnValue(array())); $container = new ContainerBuilder(); diff --git a/core/tests/Drupal/Tests/Core/Entity/ContentEntityDatabaseStorageTest.php b/core/tests/Drupal/Tests/Core/Entity/ContentEntityDatabaseStorageTest.php index fde0d84..a8c8022 100644 --- a/core/tests/Drupal/Tests/Core/Entity/ContentEntityDatabaseStorageTest.php +++ b/core/tests/Drupal/Tests/Core/Entity/ContentEntityDatabaseStorageTest.php @@ -970,7 +970,7 @@ public function testFieldSqlSchemaForEntityWithStringIdentifier() { ->method('getDefaultSettings') ->will($this->returnValue(array())); $field_type_manager->expects($this->exactly(2)) - ->method('getDefaultInstanceSettings') + ->method('getDefaultFieldSettings') ->will($this->returnValue(array())); $this->fieldDefinitions['id'] = BaseFieldDefinition::create('string')