<?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="Sparsh\AutoRelatedProducts\Api\Data\AutoRelatedRuleInterface" type="Sparsh\AutoRelatedProducts\Model\AutoRelatedRule" />
	<type name="Magento\Framework\EntityManager\MetadataPool">
        <arguments>
            <argument name="metadata" xsi:type="array">
                <item name="Sparsh\AutoRelatedProducts\Api\Data\AutoRelatedRuleInterface" xsi:type="array">
                    <item name="entityTableName" xsi:type="string">sparsh_auto_related_products_rule</item>
                    <item name="identifierField" xsi:type="string">rule_id</item>
                </item>
            </argument>
        </arguments>
    </type>
    <type name="Magento\Framework\EntityManager\Operation\AttributePool">
        <arguments>
            <argument name="extensionActions" xsi:type="array">
                <item name="Sparsh_AutoRelatedProducts" xsi:type="array">
                    <item name="Sparsh\AutoRelatedProducts\Api\Data\AutoRelatedRuleInterface" xsi:type="array">
                        <item name="read" xsi:type="string">Sparsh\AutoRelatedProducts\Model\ResourceModel\ReadHandler</item>
                        <item name="create" xsi:type="string">Sparsh\AutoRelatedProducts\Model\ResourceModel\SaveHandler</item>
                        <item name="update" xsi:type="string">Sparsh\AutoRelatedProducts\Model\ResourceModel\SaveHandler</item>
                    </item>
                </item>
            </argument>
        </arguments>
    </type>
    <virtualType name="Sparsh\AutoRelatedProducts\Model\ResourceModel\Rule\AssociatedEntityMap" type="Magento\Framework\DataObject">
        <arguments>
            <argument name="data" xsi:type="array">
                <item name="store" xsi:type="array">
                    <item name="associations_table" xsi:type="string">sparsh_auto_related_products_rule_store</item>
                    <item name="rule_id_field" xsi:type="string">rule_id</item>
                    <item name="entity_id_field" xsi:type="string">store_id</item>
                </item>
                <item name="customer_group" xsi:type="array">
                    <item name="associations_table" xsi:type="string">sparsh_auto_related_products_rule_group</item>
                    <item name="rule_id_field" xsi:type="string">rule_id</item>
                    <item name="entity_id_field" xsi:type="string">customer_group_id</item>
                </item>
            </argument>
        </arguments>
    </virtualType>
    <type name="Magento\Framework\EntityManager\HydratorPool">
        <arguments>
            <argument name="hydrators" xsi:type="array">
                <item name="Sparsh\AutoRelatedProducts\Api\Data\AutoRelatedRuleInterface" xsi:type="string">Magento\Framework\EntityManager\AbstractModelHydrator</item>
            </argument>
        </arguments>
    </type>
</config>
