Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / lib / Drupal / Core / Messenger / MessengerInterface.php
diff --git a/web/core/lib/Drupal/Core/Messenger/MessengerInterface.php b/web/core/lib/Drupal/Core/Messenger/MessengerInterface.php
new file mode 100644 (file)
index 0000000..0d5e63a
--- /dev/null
@@ -0,0 +1,134 @@
+<?php
+
+namespace Drupal\Core\Messenger;
+
+/**
+ * Stores runtime messages sent out to individual users on the page.
+ *
+ * An example for these messages is for example: "Content X got saved".
+ */
+interface MessengerInterface {
+
+  /**
+   * A status message.
+   */
+  const TYPE_STATUS = 'status';
+
+  /**
+   * A warning.
+   */
+  const TYPE_WARNING = 'warning';
+
+  /**
+   * An error.
+   */
+  const TYPE_ERROR = 'error';
+
+  /**
+   * Adds a new message to the queue.
+   *
+   * The messages will be displayed in the order they got added later.
+   *
+   * @param string|\Drupal\Component\Render\MarkupInterface $message
+   *   (optional) The translated message to be displayed to the user. For
+   *   consistency with other messages, it should begin with a capital letter
+   *   and end with a period.
+   * @param string $type
+   *   (optional) The message's type. Either self::TYPE_STATUS,
+   *   self::TYPE_WARNING, or self::TYPE_ERROR.
+   * @param bool $repeat
+   *   (optional) If this is FALSE and the message is already set, then the
+   *   message won't be repeated. Defaults to FALSE.
+   *
+   * @return $this
+   */
+  public function addMessage($message, $type = self::TYPE_STATUS, $repeat = FALSE);
+
+  /**
+   * Adds a new status message to the queue.
+   *
+   * @param string|\Drupal\Component\Render\MarkupInterface $message
+   *   (optional) The translated message to be displayed to the user. For
+   *   consistency with other messages, it should begin with a capital letter
+   *   and end with a period.
+   * @param bool $repeat
+   *   (optional) If this is FALSE and the message is already set, then the
+   *   message won't be repeated. Defaults to FALSE.
+   *
+   * @return $this
+   */
+  public function addStatus($message, $repeat = FALSE);
+
+  /**
+   * Adds a new error message to the queue.
+   *
+   * @param string|\Drupal\Component\Render\MarkupInterface $message
+   *   (optional) The translated message to be displayed to the user. For
+   *   consistency with other messages, it should begin with a capital letter
+   *   and end with a period.
+   * @param bool $repeat
+   *   (optional) If this is FALSE and the message is already set, then the
+   *   message won't be repeated. Defaults to FALSE.
+   *
+   * @return $this
+   */
+  public function addError($message, $repeat = FALSE);
+
+  /**
+   * Adds a new warning message to the queue.
+   *
+   * @param string|\Drupal\Component\Render\MarkupInterface $message
+   *   (optional) The translated message to be displayed to the user. For
+   *   consistency with other messages, it should begin with a capital letter
+   *   and end with a period.
+   * @param bool $repeat
+   *   (optional) If this is FALSE and the message is already set, then the
+   *   message won't be repeated. Defaults to FALSE.
+   *
+   * @return $this
+   */
+  public function addWarning($message, $repeat = FALSE);
+
+  /**
+   * Gets all messages.
+   *
+   * @return string[][]|\Drupal\Component\Render\MarkupInterface[][]
+   *   Keys are message types and values are indexed arrays of messages. Message
+   *   types are either self::TYPE_STATUS, self::TYPE_WARNING, or
+   *   self::TYPE_ERROR.
+   */
+  public function all();
+
+  /**
+   * Gets all messages of a certain type.
+   *
+   * @param string $type
+   *   The messages' type. Either self::TYPE_STATUS, self::TYPE_WARNING,
+   *   or self::TYPE_ERROR.
+   *
+   * @return string[]|\Drupal\Component\Render\MarkupInterface[]
+   *   The messages of given type.
+   */
+  public function messagesByType($type);
+
+  /**
+   * Deletes all messages.
+   *
+   * @return string[]|\Drupal\Component\Render\MarkupInterface[]
+   *   The deleted messages.
+   */
+  public function deleteAll();
+
+  /**
+   * Deletes all messages of a certain type.
+   *
+   * @param string $type
+   *   The messages' type. Either self::TYPE_STATUS, self::TYPE_WARNING, or
+   *   self::TYPE_ERROR.
+   *
+   * @return string[]|\Drupal\Component\Render\MarkupInterface[]
+   *   The deleted messages of given type.
+   */
+  public function deleteByType($type);
+
+}