<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="Magento\Signifyd\Api\Data\CaseInterface" type="Magento\Signifyd\Model\CaseEntity" />
<preference for="Magento\Signifyd\Api\CaseRepositoryInterface" type="Magento\Signifyd\Model\CaseRepository" />
<preference for="Magento\Signifyd\Api\CaseManagementInterface" type="Magento\Signifyd\Model\CaseManagement" />
<preference for="Magento\Signifyd\Api\Data\CaseSearchResultsInterface" type="Magento\Framework\Api\SearchResults" />
<preference for="Magento\Signifyd\Api\CaseCreationServiceInterface" type="Magento\Signifyd\Model\CaseServices\CreationService" />
<preference for="Magento\Signifyd\Api\GuaranteeCreationServiceInterface" type="Magento\Signifyd\Model\Guarantee\CreationService" />
<preference for="Magento\Signifyd\Api\GuaranteeCancelingServiceInterface" type="Magento\Signifyd\Model\Guarantee\CancelingService" />
<preference for="Magento\Signifyd\Model\SignifydGateway\Request\CreateCaseBuilderInterface" type="Magento\Signifyd\Model\SignifydGateway\Request\CreateCaseBuilder" />
<virtualType name="SignifydAvsDefaultMapper" type="Magento\Signifyd\Model\PredefinedVerificationCode" />
<virtualType name="SignifydCvvDefaultMapper" type="Magento\Signifyd\Model\PredefinedVerificationCode" />
<type name="Magento\Signifyd\Model\PaymentVerificationFactory">
<arguments>
<argument name="config" xsi:type="object">Magento\Payment\Gateway\Config\Config</argument>
<argument name="avsDefaultAdapter" xsi:type="object">SignifydAvsDefaultMapper</argument>
<argument name="cvvDefaultAdapter" xsi:type="object">SignifydCvvDefaultMapper</argument>
</arguments>
</type>
<type name="Magento\Signifyd\Model\SalesOrderGrid\OrderGridUpdater">
<arguments>
<argument name="entityGrid" xsi:type="object">Magento\Sales\Model\ResourceModel\Order\Grid</argument>
</arguments>
</type>
<virtualType name="SignifydIdListProvider" type="Magento\Sales\Model\ResourceModel\Provider\NotSyncedDataProvider">
<arguments>
<argument name="providers" xsi:type="array">
<item name="signifyd" xsi:type="string">Magento\Signifyd\Model\SalesOrderGrid\NotSyncedOrderIdListProvider</item>
</argument>
</arguments>
</virtualType>
<virtualType name="Magento\Sales\Model\ResourceModel\Order\Grid">
<arguments>
<argument name="idListProvider" xsi:type="object">SignifydIdListProvider</argument>
<argument name="joins" xsi:type="array">
<item name="signifyd_case" xsi:type="array">
<item name="table" xsi:type="string">signifyd_case</item>
<item name="origin_column" xsi:type="string">entity_id</item>
<item name="target_column" xsi:type="string">order_id</item>
</item>
</argument>
<argument name="columns" xsi:type="array">
<item name="signifyd_guarantee_status" xsi:type="string">signifyd_case.guarantee_disposition</item>
</argument>
</arguments>
</virtualType>
<type name="Magento\Signifyd\Model\ResourceModel\CaseEntity">
<arguments>
<argument name="connectionName" xsi:type="string">sales</argument>
</arguments>
</type>
<virtualType name="PaymentMapperSchemaLocator" type="Magento\Framework\Config\GenericSchemaLocator">
<arguments>
<argument name="moduleName" xsi:type="string">Magento_Signifyd</argument>
<argument name="schema" xsi:type="string">signifyd_payment_mapping.xsd</argument>
</arguments>
</virtualType>
<virtualType name="PaymentMapperConfigReader" type="Magento\Framework\Config\Reader\Filesystem">
<arguments>
<argument name="converter" xsi:type="object">Magento\Signifyd\Model\PaymentMethodMapper\XmlToArrayConfigConverter</argument>
<argument name="schemaLocator" xsi:type="object">PaymentMapperSchemaLocator</argument>
<argument name="fileName" xsi:type="string">signifyd_payment_mapping.xml</argument>
</arguments>
</virtualType>
<virtualType name="PaymentMethodConfigData" type="Magento\Framework\Config\Data">
<arguments>
<argument name="reader" xsi:type="object">PaymentMapperConfigReader</argument>
<argument name="cacheId" xsi:type="string">signifyd_payment_list_cache</argument>
</arguments>
</virtualType>
<type name="Magento\Signifyd\Model\PaymentMethodMapper\PaymentMethodMapper">
<arguments>
<argument name="paymentMapping" xsi:type="object">PaymentMethodConfigData</argument>
</arguments>
</type>
<type name="Magento\Config\Model\Config\TypePool">
<arguments>
<argument name="sensitive" xsi:type="array">
<item name="fraud_protection/signifyd/api_key" xsi:type="string">1</item>
<item name="fraud_protection/signifyd/api_url" xsi:type="string">1</item>
</argument>
<argument name="environment" xsi:type="array">
<item name="fraud_protection/signifyd/api_key" xsi:type="string">1</item>
<item name="fraud_protection/signifyd/api_url" xsi:type="string">1</item>
</argument>
</arguments>
</type>
<type name="Magento\Sales\Model\Order">
<plugin name="cancelGuaranteeAfterOrderCancel" type="Magento\Signifyd\Plugin\OrderPlugin" />
</type>
<type name="Magento\Payment\Model\MethodInterface">
<plugin name="cancelGuaranteeAfterPaymentDeny" type="Magento\Signifyd\Plugin\PaymentPlugin" />
</type>
</config>
|