Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions | Protected Member Functions | Protected Attributes
MessageList Class Reference

Public Member Functions

 __construct (\Magento\Framework\ObjectManagerInterface $objectManager, $messages=[])
 
 getMessageByIdentity ($identity)
 
 asArray ()
 

Protected Member Functions

 _loadMessages ()
 

Protected Attributes

 $_messageClasses
 
 $_messages
 

Detailed Description

Class for processing the list of system messages

Class MessageList @api

Since
100.0.2

Definition at line 16 of file MessageList.php.

Constructor & Destructor Documentation

◆ __construct()

__construct ( \Magento\Framework\ObjectManagerInterface  $objectManager,
  $messages = [] 
)
Parameters
\Magento\Framework\ObjectManagerInterface$objectManager
array$messages

Definition at line 36 of file MessageList.php.

37  {
38  $this->_objectManager = $objectManager;
39  $this->_messageClasses = $messages;
40  }
$objectManager
Definition: bootstrap.php:17

Member Function Documentation

◆ _loadMessages()

_loadMessages ( )
protected

Load messages to display

Returns
void
Exceptions

Definition at line 49 of file MessageList.php.

50  {
51  if (!empty($this->_messages)) {
52  return;
53  }
54  foreach ($this->_messageClasses as $key => $messageClass) {
55  if (!$messageClass) {
56  throw new \InvalidArgumentException('Message class for message "' . $key . '" is not set');
57  }
58  $message = $this->_objectManager->get($messageClass);
59  if ($message instanceof \Magento\Framework\Notification\MessageInterface) {
60  $this->_messages[$message->getIdentity()] = $message;
61  } else {
62  throw new \UnexpectedValueException("Message class has to implement the message interface.");
63  }
64  }
65  }
$message

◆ asArray()

asArray ( )

Retrieve list of all messages

Returns
\Magento\Framework\Notification\MessageInterface[]

Definition at line 84 of file MessageList.php.

◆ getMessageByIdentity()

getMessageByIdentity (   $identity)

Retrieve message by

Parameters
string$identity
Returns
null|\Magento\Framework\Notification\MessageInterface

Definition at line 73 of file MessageList.php.

74  {
75  $this->_loadMessages();
76  return $this->_messages[$identity] ?? null;
77  }

Field Documentation

◆ $_messageClasses

$_messageClasses
protected

Definition at line 23 of file MessageList.php.

◆ $_messages

$_messages
protected

Definition at line 30 of file MessageList.php.


The documentation for this class was generated from the following file: