You are here

class Location in Geolocation Field 8.3

Same name in this branch
  1. 8.3 src/Annotation/Location.php \Drupal\geolocation\Annotation\Location
  2. 8.3 src/Plugin/geolocation/MapCenter/Location.php \Drupal\geolocation\Plugin\geolocation\MapCenter\Location
  3. 8.3 src/Plugin/geolocation/LocationInput/Location.php \Drupal\geolocation\Plugin\geolocation\LocationInput\Location
  4. 8.3 src/Plugin/migrate/field/Location.php \Drupal\geolocation\Plugin\migrate\field\Location
  5. 8.3 modules/geolocation_address/src/Plugin/migrate/field/Location.php \Drupal\geolocation_address\Plugin\migrate\field\Location

A migrate field plugin for Drupal 7 Location CCK field values.

The plugin extends Address module's plugin definition to migrate address-like field values into an address field, and geolocation values to a separate geolocation field.

Hierarchy

Expanded class hierarchy of Location

See also

geolocation_address_migrate_field_info_alter()

geolocation_migrate_field_info_alter()

4 files declare their use of Location
geolocation_address.module in modules/geolocation_address/geolocation_address.module
Provide address integration where due.
LocationGeolocationFieldInstance.php in modules/geolocation_address/src/Plugin/migrate/source/LocationGeolocationFieldInstance.php
LocationGeolocationFieldStorage.php in modules/geolocation_address/src/Plugin/migrate/source/LocationGeolocationFieldStorage.php
LocationGeolocationFieldWidget.php in modules/geolocation_address/src/Plugin/migrate/source/LocationGeolocationFieldWidget.php
6 string references to 'Location'
views.view.geolocation_demo_commonmap_boundary_filter_with_ajax.yml in modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_commonmap_boundary_filter_with_ajax.yml
modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_commonmap_boundary_filter_with_ajax.yml
views.view.geolocation_demo_commonmap_with_attachment.yml in modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_commonmap_with_attachment.yml
modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_commonmap_with_attachment.yml
views.view.geolocation_demo_commonmap_with_marker_icons.yml in modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_commonmap_with_marker_icons.yml
modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_commonmap_with_marker_icons.yml
views.view.geolocation_demo_common_map_ajax.yml in modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_common_map_ajax.yml
modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_common_map_ajax.yml
views.view.geolocation_demo_interactive_commonmap_with_address_input.yml in modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_interactive_commonmap_with_address_input.yml
modules/geolocation_google_maps/modules/geolocation_google_maps_demo/config/optional/views.view.geolocation_demo_interactive_commonmap_with_address_input.yml

... See full list

File

modules/geolocation_address/src/Plugin/migrate/field/Location.php, line 20

Namespace

Drupal\geolocation_address\Plugin\migrate\field
View source
class Location extends LocationAddress {

  /**
   * Suffix added to the geolocation field.
   *
   * @var string
   */
  const GEOLOCATION_FIELD_NAME_SUFFIX = '_geoloc';

  /**
   * @param string $field_name
   *   The location field's name in the source.
   *
   * @return string
   *   The field name of the geolocation field.
   */
  public static function getGeolocationFieldName(string $field_name) {
    return mb_substr($field_name, 0, FieldStorageConfig::NAME_MAX_LENGTH - mb_strlen(static::GEOLOCATION_FIELD_NAME_SUFFIX)) . static::GEOLOCATION_FIELD_NAME_SUFFIX;
  }

  /**
   * {@inheritdoc}
   */
  public function defineValueProcessPipeline(MigrationInterface $migration, $field_name, $data) {
    parent::defineValueProcessPipeline($migration, $field_name, $data);

    // Address cannot store geographical locations, so we need a separate
    // geolocation field.
    $geolocation_field_name = self::getGeolocationFieldName($field_name);
    $migration
      ->mergeProcessOfProperty($geolocation_field_name, [
      'plugin' => 'location_to_geolocation',
      'source' => $field_name,
    ]);

    // Add the new geolocation field's migration as a required dependency.
    $migration_dependencies = $migration
      ->getMigrationDependencies() + [
      'required' => [],
    ];
    $geolocation_field_instance_migration_plugin_id = implode(PluginBase::DERIVATIVE_SEPARATOR, [
      'd7_field_instance_location',
      $data['entity_type'],
      $data['bundle'],
    ]);
    $geolocation_field_widget_migration_plugin_id = implode(PluginBase::DERIVATIVE_SEPARATOR, [
      'd7_field_instance_widget_settings_location',
      $data['entity_type'],
      $data['bundle'],
    ]);
    $migration_dependencies['required'] = array_unique(array_merge(array_values($migration_dependencies['required']), [
      $geolocation_field_instance_migration_plugin_id,
      $geolocation_field_widget_migration_plugin_id,
    ]));
    $migration
      ->set('migration_dependencies', $migration_dependencies);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
AddressField::getFieldFormatterMap public function Get a map between D6 formatters and D8 formatters for this field type. Overrides FieldPluginBase::getFieldFormatterMap
AddressField::getFieldWidgetMap public function Get a map between D6 and D8 widgets for this field type. Overrides FieldPluginBase::getFieldWidgetMap
AddressField::processFieldValues public function Defines the process pipeline for field values. Overrides FieldPluginBase::processFieldValues
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
FieldPluginBase::alterFieldFormatterMigration public function Apply any custom processing to the field formatter migration. Overrides MigrateFieldInterface::alterFieldFormatterMigration
FieldPluginBase::alterFieldInstanceMigration public function Apply any custom processing to the field instance migration. Overrides MigrateFieldInterface::alterFieldInstanceMigration 2
FieldPluginBase::alterFieldMigration public function Apply any custom processing to the field migration. Overrides MigrateFieldInterface::alterFieldMigration
FieldPluginBase::alterFieldWidgetMigration public function Apply any custom processing to the field widget migration. Overrides MigrateFieldInterface::alterFieldWidgetMigration
FieldPluginBase::getFieldFormatterType public function Get the field formatter type from the source. Overrides MigrateFieldInterface::getFieldFormatterType 1
FieldPluginBase::getFieldType public function Computes the destination type of a migrated field. Overrides MigrateFieldInterface::getFieldType 6
FieldPluginBase::getFieldWidgetType public function Get the field widget type from the source. Overrides MigrateFieldInterface::getFieldWidgetType 1
FieldPluginBase::processField Deprecated public function Alters the migration for field definitions.
FieldPluginBase::processFieldFormatter Deprecated public function Alter field formatter migration.
FieldPluginBase::processFieldInstance Deprecated public function Alert field instance migration.
FieldPluginBase::processFieldWidget Deprecated public function Alter field widget migration.
Location::defineValueProcessPipeline public function Apply any custom processing to the field bundle migrations. Overrides AddressField::defineValueProcessPipeline
Location::GEOLOCATION_FIELD_NAME_SUFFIX constant Suffix added to the geolocation field.
Location::getGeolocationFieldName public static function
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. 92
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.