Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. EntityUserRole.php

function EntityUserRole::import

Overrides EntityConfigBase::import

File

core/modules/user/src/Plugin/migrate/destination/EntityUserRole.php, line 75

Class

EntityUserRole
Provides a destination plugin for migrating user role entities.

Namespace

Drupal\user\Plugin\migrate\destination

Code

public function import(Row $row, array $old_destination_id_values = []) : array|bool {
    $permissions = $row->getDestinationProperty('permissions') ?? [];
    // Get permissions that do not exist on the destination.
    $invalid_permissions = array_diff($permissions, $this->destinationPermissions);
    if ($invalid_permissions) {
        sort($invalid_permissions);
        // Log the message in the migration message table.
        $message = "Permission(s) '" . implode("', '", $invalid_permissions) . "' not found.";
        $this->migration
            ->getIdMap()
            ->saveMessage($row->getSourceIdValues(), $message, MigrationInterface::MESSAGE_WARNING);
    }
    $valid_permissions = array_intersect($permissions, $this->destinationPermissions);
    $row->setDestinationProperty('permissions', $valid_permissions);
    return parent::import($row, $old_destination_id_values);
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal