<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <preference for="Firegento\ContentProvisioning\Api\ConfigurationInterface" type="Firegento\ContentProvisioning\Model\Config\Data" /> <preference for="Firegento\ContentProvisioning\Api\StoreCodeResolverInterface" type="Firegento\ContentProvisioning\Model\Resolver\StoreCodeResolver" /> <preference for="Firegento\ContentProvisioning\Api\Data\PageEntryInterface" type="Firegento\ContentProvisioning\Model\PageEntry" /> <preference for="Firegento\ContentProvisioning\Api\Data\BlockEntryInterface" type="Firegento\ContentProvisioning\Model\BlockEntry" /> <preference for="Firegento\ContentProvisioning\Api\TargetMediaDirectoryPathProviderInterface" type="Firegento\ContentProvisioning\Model\Configuration\TargetMediaDirectoryPathProvider" /> <virtualType name="Firegento\ContentProvisioning\Virtual\Config\Parser\PageContentParser" type="Firegento\ContentProvisioning\Model\Config\Parser\ContentParser"> <arguments> <argument name="arrayKey" xsi:type="const">Firegento\ContentProvisioning\Api\Data\PageEntryInterface::CONTENT</argument> </arguments> </virtualType> <virtualType name="Firegento\ContentProvisioning\Virtual\Config\Parser\PageParserChain" type="Firegento\ContentProvisioning\Model\Config\Parser\ParserChain"> <arguments> <argument name="parser" xsi:type="array"> <item name="meta" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\MetaDataParser</item> <item name="stores" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\StoresParser</item> <item name="content" xsi:type="object">Firegento\ContentProvisioning\Virtual\Config\Parser\PageContentParser</item> <item name="content_heading" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\ContentHeadingParser</item> <item name="seo" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\SeoParser</item> <item name="design" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\DesignParser</item> <item name="custom_design" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\CustomDesignParser</item> <item name="media_directory" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\MediaDirectoryParser</item> </argument> </arguments> </virtualType> <virtualType name="Firegento\ContentProvisioning\Virtual\Config\Parser\BlockContentParser" type="Firegento\ContentProvisioning\Model\Config\Parser\ContentParser"> <arguments> <argument name="arrayKey" xsi:type="const">Firegento\ContentProvisioning\Api\Data\BlockEntryInterface::CONTENT</argument> </arguments> </virtualType> <virtualType name="Firegento\ContentProvisioning\Virtual\Config\Parser\BlockParserChain" type="Firegento\ContentProvisioning\Model\Config\Parser\ParserChain"> <arguments> <argument name="parser" xsi:type="array"> <item name="meta" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\MetaDataParser</item> <item name="stores" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\StoresParser</item> <item name="content" xsi:type="object">Firegento\ContentProvisioning\Virtual\Config\Parser\BlockContentParser</item> <item name="media_directory" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\MediaDirectoryParser</item> </argument> </arguments> </virtualType> <virtualType name="Firegento\ContentProvisioning\Virtual\Config\PageNodeConverter" type="Firegento\ContentProvisioning\Model\Config\NodeConverter"> <arguments> <argument name="configParser" xsi:type="object">Firegento\ContentProvisioning\Virtual\Config\Parser\PageParserChain</argument> <argument name="nodeName" xsi:type="string">page</argument> </arguments> </virtualType> <virtualType name="Firegento\ContentProvisioning\Virtual\Config\BlockNodeConverter" type="Firegento\ContentProvisioning\Model\Config\NodeConverter"> <arguments> <argument name="configParser" xsi:type="object">Firegento\ContentProvisioning\Virtual\Config\Parser\BlockParserChain</argument> <argument name="nodeName" xsi:type="string">block</argument> </arguments> </virtualType> <type name="Firegento\ContentProvisioning\Model\Config\Converter"> <arguments> <argument name="pageNodeConverter" xsi:type="object">Firegento\ContentProvisioning\Virtual\Config\PageNodeConverter</argument> <argument name="blockNodeConverter" xsi:type="object">Firegento\ContentProvisioning\Virtual\Config\BlockNodeConverter</argument> </arguments> </type> <virtualType name="Firegento\ContentProvisioning\Model\Config\Reader" type="Magento\Framework\Config\Reader\Filesystem"> <arguments> <argument name="fileName" xsi:type="string">content_provisioning.xml</argument> <argument name="converter" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Converter</argument> <argument name="schemaLocator" xsi:type="object">Firegento\ContentProvisioning\Model\Config\SchemaLocator</argument> <argument name="idAttributes" xsi:type="array"> <item name="/config/page" xsi:type="string">key</item> <item name="/config/block" xsi:type="string">key</item> </argument> </arguments> </virtualType> <type name="Firegento\ContentProvisioning\Model\Config\Data"> <arguments> <argument name="reader" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Reader</argument> <argument name="cacheId" xsi:type="string">content_provisioning_config</argument> </arguments> </type> <type name="Magento\Framework\Console\CommandListInterface"> <arguments> <argument name="commands" xsi:type="array"> <item name="contentProvisioning.PageList" xsi:type="object">Firegento\ContentProvisioning\Model\Console\PageListCommand</item> <item name="contentProvisioning.BlockList" xsi:type="object">Firegento\ContentProvisioning\Model\Console\BlockListCommand</item> <item name="contentProvisioning.PageAdd" xsi:type="object">Firegento\ContentProvisioning\Model\Console\AddPageCommand</item> <item name="contentProvisioning.BlockAdd" xsi:type="object">Firegento\ContentProvisioning\Model\Console\AddBlockCommand</item> </argument> </arguments> </type> <type name="Firegento\ContentProvisioning\Model\Resolver\ContentResolverProvider"> <arguments> <argument name="contentResolvers" xsi:type="array"> <item name="plain" xsi:type="object">Firegento\ContentProvisioning\Model\Resolver\PlainContentResolver</item> <item name="file" xsi:type="object">Firegento\ContentProvisioning\Model\Resolver\FileContentResolver</item> </argument> </arguments> </type> <type name="Firegento\ContentProvisioning\Model\Config\Parser\Query\FetchMediaFilesChain"> <arguments> <argument name="parsers" xsi:type="array"> <item name="media_directive" xsi:type="object">Firegento\ContentProvisioning\Model\Config\Parser\Query\Media\MediaDirectiveFileParser</item> </argument> </arguments> </type> </config>