【magento2支付接口专题5】请求构建器

请求构建器(Request Builder)是Magento 2 支付网关的一个组成部分负责从多个部分建立请求。

基本接口

请求构建器(Request Builder)基本接口是\Magento\Payment\Gateway\Request\BuilderInterface.

建造者组合(Builder composite)

\Magento\Payment\Gateway\Request\BuilderComposite 是一个容器的列表实现\Magento\Payment\Gateway\Request\BuilderInterface接口。它获取类、类型或虚拟类型名称的列表,并通过BuilderComposite::build([])懒加载实例化。因此,根据需要,您可以有许多对象,但只有部分,需要一个请求被实例化。

级联策略定义在 BuilderComposite::merge() 方法. 因此,如果您需要更改策略,您需要添加您的自定义实现 BuilderComposite.

添加一个建造者组合(Builder composite)

建造者组合(Builder composite)添加使用 依赖注入 在 di.xml文件. 建造者组合(Builder composite)可能包括简单的建设者以及其他建造者组合(Builder composite)。

例子,添加一个建造者组合在Braintree支付提供商 (app/code/Magento/Braintree/etc/di.xml):

...

    
        
            Magento\Braintree\Gateway\Request\CustomerDataBuilder
            Magento\Braintree\Gateway\Request\PaymentDataBuilder
            Magento\Braintree\Gateway\Request\ChannelDataBuilder
            Magento\Braintree\Gateway\Request\AddressDataBuilder
            Magento\Braintree\Gateway\Request\ThreeDSecureDataBuilder
            Magento\Braintree\Gateway\Request\KountPaymentDataBuilder
        
    

...

    
        
            BraintreeAuthorizeRequest
            Magento\Braintree\Gateway\Request\SettlementDataBuilder
        
    

你可能感兴趣的:(magento2)