diff --git a/app/code/Magento/CmsGraphQl/Model/Resolver/Blocks.php b/app/code/Magento/CmsGraphQl/Model/Resolver/Blocks.php index fabb479763e60..2f1c84848eb52 100644 --- a/app/code/Magento/CmsGraphQl/Model/Resolver/Blocks.php +++ b/app/code/Magento/CmsGraphQl/Model/Resolver/Blocks.php @@ -14,7 +14,6 @@ use Magento\Framework\GraphQl\Exception\GraphQlNoSuchEntityException; use Magento\Framework\GraphQl\Query\ResolverInterface; use Magento\Framework\GraphQl\Schema\Type\ResolveInfo; -use Psr\Log\LoggerInterface; /** * CMS blocks field resolver, used for GraphQL request processing @@ -26,20 +25,13 @@ class Blocks implements ResolverInterface */ private $blockDataProvider; - /** - * @var LoggerInterface - */ - private $logger; - /** * @param BlockDataProvider $blockDataProvider */ public function __construct( - BlockDataProvider $blockDataProvider, - LoggerInterface $logger + BlockDataProvider $blockDataProvider ) { $this->blockDataProvider = $blockDataProvider; - $this->logger = $logger; } /** @@ -84,19 +76,12 @@ private function getBlockIdentifiers(array $args): array private function getBlocksData(array $blockIdentifiers): array { $blocksData = []; - try { - foreach ($blockIdentifiers as $blockIdentifier) { - $blockData = $this->blockDataProvider->getData($blockIdentifier); - if (!empty($blockData)) { - $blocksData[$blockIdentifier] = $blockData; - } else { - $this->logger->warning( - sprintf('The CMS block with the "%s" Identifier is disabled.', $blockIdentifier) - ); - } + foreach ($blockIdentifiers as $blockIdentifier) { + try { + $blocksData[$blockIdentifier] = $this->blockDataProvider->getData($blockIdentifier); + } catch (NoSuchEntityException $e) { + $blocksData[$blockIdentifier] = new GraphQlNoSuchEntityException(__($e->getMessage()), $e); } - } catch (NoSuchEntityException $e) { - throw new GraphQlNoSuchEntityException(__($e->getMessage()), $e); } return $blocksData; } diff --git a/app/code/Magento/CmsGraphQl/Model/Resolver/DataProvider/Block.php b/app/code/Magento/CmsGraphQl/Model/Resolver/DataProvider/Block.php index d47a0dca27157..c1a694dcd73b7 100644 --- a/app/code/Magento/CmsGraphQl/Model/Resolver/DataProvider/Block.php +++ b/app/code/Magento/CmsGraphQl/Model/Resolver/DataProvider/Block.php @@ -49,7 +49,9 @@ public function getData(string $blockIdentifier): array $block = $this->blockRepository->getById($blockIdentifier); if (false === $block->isActive()) { - return []; + throw new NoSuchEntityException( + __('The CMS block with the "%1" ID doesn\'t exist.', $blockIdentifier) + ); } $renderedContent = $this->widgetFilter->filter($block->getContent());