public function WorkspaceMerger::getDifferringRevisionIdsOnTarget in Drupal 10
Same name and namespace in other branches
- 8 core/modules/workspaces/src/WorkspaceMerger.php \Drupal\workspaces\WorkspaceMerger::getDifferringRevisionIdsOnTarget()
- 9 core/modules/workspaces/src/WorkspaceMerger.php \Drupal\workspaces\WorkspaceMerger::getDifferringRevisionIdsOnTarget()
File
- core/modules/workspaces/src/WorkspaceMerger.php, line 148
Class
- WorkspaceMerger
- Default implementation of the workspace merger.
Namespace
Drupal\workspaces
Code
public function getDifferringRevisionIdsOnTarget() {
$target_revision_difference = [];
$tracked_entities_on_source = $this->workspaceAssociation
->getTrackedEntities($this->sourceWorkspace
->id());
$tracked_entities_on_target = $this->workspaceAssociation
->getTrackedEntities($this->targetWorkspace
->id());
foreach ($tracked_entities_on_target as $entity_type_id => $tracked_revisions) {
if (!isset($tracked_entities_on_source[$entity_type_id])) {
$target_revision_difference[$entity_type_id] = $tracked_revisions;
}
elseif ($revision_difference = array_diff_key($tracked_revisions, $tracked_entities_on_source[$entity_type_id])) {
$target_revision_difference[$entity_type_id] = $revision_difference;
}
}
return $target_revision_difference;
}