Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
MessageProcessorLoader.php
Go to the documentation of this file.
1 <?php
7 
12 {
16  private $mergedMessageProcessor;
17 
21  private $defaultMessageProcessor;
22 
27  public function __construct(
28  MessageProcessorInterface $mergedMessageProcessor,
29  MessageProcessorInterface $defaultMessageProcessor
30  ) {
31  $this->mergedMessageProcessor = $mergedMessageProcessor;
32  $this->defaultMessageProcessor = $defaultMessageProcessor;
33  }
34 
41  public function load(array $messages)
42  {
43  $message = $this->getMergedMessage($messages);
44 
45  return ($message instanceof MergedMessageInterface)
46  ? $this->mergedMessageProcessor : $this->defaultMessageProcessor;
47  }
48 
55  private function getMergedMessage(array $messages)
56  {
57  $message = null;
58 
59  if ($messages) {
60  $topicMessages = array_shift($messages);
61 
62  if ($topicMessages) {
63  $message = array_shift($topicMessages);
64  }
65  }
66 
67  return $message;
68  }
69 }
__construct(MessageProcessorInterface $mergedMessageProcessor, MessageProcessorInterface $defaultMessageProcessor)
$message