Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / modules / node / src / Plugin / Action / SaveNode.php
index e358fef36c986411b52f66134e03bceb8e7be5aa..d9eea0c921de624a723220a977e0985bdfec104f 100644 (file)
@@ -2,36 +2,33 @@
 
 namespace Drupal\node\Plugin\Action;
 
-use Drupal\Core\Action\ActionBase;
-use Drupal\Core\Session\AccountInterface;
+use Drupal\Component\Datetime\TimeInterface;
+use Drupal\Core\Action\Plugin\Action\SaveAction;
+use Drupal\Core\Entity\EntityTypeManagerInterface;
 
 /**
  * Provides an action that can save any entity.
  *
+ * @deprecated in Drupal 8.5.x, to be removed before Drupal 9.0.0.
+ *   Use \Drupal\Core\Action\Plugin\Action\SaveAction instead.
+ *
+ * @see \Drupal\Core\Action\Plugin\Action\SaveAction
+ * @see https://www.drupal.org/node/2919303
+ *
  * @Action(
  *   id = "node_save_action",
  *   label = @Translation("Save content"),
  *   type = "node"
  * )
  */
-class SaveNode extends ActionBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  public function execute($entity = NULL) {
-    // We need to change at least one value, otherwise the changed timestamp
-    // will not be updated.
-    $entity->changed = 0;
-    $entity->save();
-  }
+class SaveNode extends SaveAction {
 
   /**
    * {@inheritdoc}
    */
-  public function access($object, AccountInterface $account = NULL, $return_as_object = FALSE) {
-    /** @var \Drupal\node\NodeInterface $object */
-    return $object->access('update', $account, $return_as_object);
+  public function __construct($configuration, $plugin_id, $plugin_definition, EntityTypeManagerInterface $entity_type_manager, TimeInterface $time) {
+    parent::__construct($configuration, $plugin_id, $plugin_definition, $entity_type_manager, $time);
+    @trigger_error(__NAMESPACE__ . '\SaveNode is deprecated in Drupal 8.5.x, will be removed before Drupal 9.0.0. Use \Drupal\Core\Action\Plugin\Action\SaveAction instead. See https://www.drupal.org/node/2919303.', E_USER_DEPRECATED);
   }
 
 }