Version 1
[yaffs-website] / web / core / modules / migrate / src / Event / MigrateMapDeleteEvent.php
diff --git a/web/core/modules/migrate/src/Event/MigrateMapDeleteEvent.php b/web/core/modules/migrate/src/Event/MigrateMapDeleteEvent.php
new file mode 100644 (file)
index 0000000..331331c
--- /dev/null
@@ -0,0 +1,60 @@
+<?php
+
+namespace Drupal\migrate\Event;
+
+use Drupal\migrate\Plugin\MigrateIdMapInterface;
+use Symfony\Component\EventDispatcher\Event;
+
+/**
+ * Wraps a migrate map delete event for event listeners.
+ */
+class MigrateMapDeleteEvent extends Event {
+
+  /**
+   * Map plugin.
+   *
+   * @var \Drupal\migrate\Plugin\MigrateIdMapInterface
+   */
+  protected $map;
+
+  /**
+   * Array of source ID fields.
+   *
+   * @var array
+   */
+  protected $sourceId;
+
+  /**
+   * Constructs a migration map delete event object.
+   *
+   * @param \Drupal\migrate\Plugin\MigrateIdMapInterface $map
+   *   Map plugin.
+   * @param array $source_id
+   *   Array of source ID fields representing the object being deleted from the map.
+   */
+  public function __construct(MigrateIdMapInterface $map, array $source_id) {
+    $this->map = $map;
+    $this->sourceId = $source_id;
+  }
+
+  /**
+   * Gets the map plugin.
+   *
+   * @return \Drupal\migrate\Plugin\MigrateIdMapInterface
+   *   The map plugin that caused the event to fire.
+   */
+  public function getMap() {
+    return $this->map;
+  }
+
+  /**
+   * Gets the source ID of the item being removed from the map.
+   *
+   * @return array
+   *   Array of source ID fields.
+   */
+  public function getSourceId() {
+    return $this->sourceId;
+  }
+
+}