Payum\Paypal\ExpressCheckout\Nvp\PaypalExpressCheckoutGatewayFactory::populateConfig PHP Method

populateConfig() protected method

{@inheritDoc}
protected populateConfig ( Payum\Core\Bridge\Spl\ArrayObject $config )
$config Payum\Core\Bridge\Spl\ArrayObject
    protected function populateConfig(ArrayObject $config)
    {
        $config->defaults(array('payum.factory_name' => 'paypal_express_checkout_nvp', 'payum.factory_title' => 'PayPal ExpressCheckout', 'payum.template.confirm_order' => '@PayumPaypalExpressCheckout/confirmOrder.html.twig', 'payum.action.capture' => new CaptureAction(), 'payum.action.cancel' => new CancelAction(), 'payum.action.authorize' => new AuthorizeAction(), 'payum.action.convert_payment' => new ConvertPaymentAction(), 'payum.action.notify' => new NotifyAction(), 'payum.action.status' => new PaymentDetailsStatusAction(), 'payum.action.sync' => new PaymentDetailsSyncAction(), 'payum.action.recurring_status' => new RecurringPaymentDetailsStatusAction(), 'payum.action.recurring_sync' => new RecurringPaymentDetailsSyncAction(), 'payum.action.api.set_express_checkout' => new SetExpressCheckoutAction(), 'payum.action.api.get_express_checkout_details' => new GetExpressCheckoutDetailsAction(), 'payum.action.api.get_transaction_details' => new GetTransactionDetailsAction(), 'payum.action.api.do_express_checkout_payment' => new DoExpressCheckoutPaymentAction(), 'payum.action.api.create_recurring_payment_profile' => new CreateRecurringPaymentProfileAction(), 'payum.action.api.update_recurring_payment_profile' => new UpdateRecurringPaymentProfileAction(), 'payum.action.api.get_recurring_payments_profile_details' => new GetRecurringPaymentsProfileDetailsAction(), 'payum.action.api.cancel_recurring_payments_profile' => new CancelRecurringPaymentsProfileAction(), 'payum.action.api.manage_recurring_payments_profile_status' => new ManageRecurringPaymentsProfileStatusAction(), 'payum.action.api.create_billing_agreement' => new CreateBillingAgreementAction(), 'payum.action.api.do_reference_transaction' => new DoReferenceTransactionAction(), 'payum.action.api.do_capture' => new DoCaptureAction(), 'payum.action.api.authorize_token' => new AuthorizeTokenAction(), 'payum.action.api.do_void' => new DoVoidAction(), 'payum.action.api.confirm_order' => function (ArrayObject $config) {
            return new ConfirmOrderAction($config['payum.template.confirm_order']);
        }));
        if (false == $config['payum.api']) {
            $config['payum.default_options'] = array('username' => '', 'password' => '', 'signature' => '', 'sandbox' => true);
            $config->defaults($config['payum.default_options']);
            $config['payum.required_options'] = array('username', 'password', 'signature');
            $config['payum.api'] = function (ArrayObject $config) {
                $config->validateNotEmpty($config['payum.required_options']);
                $paypalConfig = array('username' => $config['username'], 'password' => $config['password'], 'signature' => $config['signature'], 'sandbox' => $config['sandbox']);
                return new Api($paypalConfig, $config['payum.http_client'], $config['httplug.message_factory']);
            };
        }
        $config['payum.paths'] = array_replace(['PayumPaypalExpressCheckout' => __DIR__ . '/Resources/views'], $config['payum.paths'] ?: []);
    }
PaypalExpressCheckoutGatewayFactory