mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-08 21:52:55 +08:00
♻️ Extract bearer-logic from onboarding module
This commit is contained in:
parent
5c7fc56d12
commit
0b77ff9e55
2 changed files with 6 additions and 31 deletions
|
@ -116,6 +116,12 @@ return array(
|
||||||
return 'WC-';
|
return 'WC-';
|
||||||
},
|
},
|
||||||
'api.bearer' => static function ( ContainerInterface $container ): Bearer {
|
'api.bearer' => static function ( ContainerInterface $container ): Bearer {
|
||||||
|
$is_connected = $container->get( 'settings.flag.is-connected' );
|
||||||
|
|
||||||
|
if ( ! $is_connected ) {
|
||||||
|
return new ConnectBearer();
|
||||||
|
}
|
||||||
|
|
||||||
return new PayPalBearer(
|
return new PayPalBearer(
|
||||||
$container->get( 'api.paypal-bearer-cache' ),
|
$container->get( 'api.paypal-bearer-cache' ),
|
||||||
$container->get( 'api.host' ),
|
$container->get( 'api.host' ),
|
||||||
|
|
|
@ -11,9 +11,6 @@ namespace WooCommerce\PayPalCommerce\Onboarding;
|
||||||
|
|
||||||
use WooCommerce\PayPalCommerce\Onboarding\Render\OnboardingOptionsRenderer;
|
use WooCommerce\PayPalCommerce\Onboarding\Render\OnboardingOptionsRenderer;
|
||||||
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;
|
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;
|
||||||
use WooCommerce\PayPalCommerce\ApiClient\Authentication\Bearer;
|
|
||||||
use WooCommerce\PayPalCommerce\ApiClient\Authentication\ConnectBearer;
|
|
||||||
use WooCommerce\PayPalCommerce\ApiClient\Authentication\PayPalBearer;
|
|
||||||
use WooCommerce\PayPalCommerce\ApiClient\Helper\Cache;
|
use WooCommerce\PayPalCommerce\ApiClient\Helper\Cache;
|
||||||
use WooCommerce\PayPalCommerce\Onboarding\Assets\OnboardingAssets;
|
use WooCommerce\PayPalCommerce\Onboarding\Assets\OnboardingAssets;
|
||||||
use WooCommerce\PayPalCommerce\Onboarding\Endpoint\LoginSellerEndpoint;
|
use WooCommerce\PayPalCommerce\Onboarding\Endpoint\LoginSellerEndpoint;
|
||||||
|
@ -86,34 +83,6 @@ return array(
|
||||||
return $container->get( 'api.paypal-website-url-production' );
|
return $container->get( 'api.paypal-website-url-production' );
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
'api.bearer' => static function ( ContainerInterface $container ): Bearer {
|
|
||||||
|
|
||||||
$state = $container->get( 'onboarding.state' );
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The State.
|
|
||||||
*
|
|
||||||
* @var State $state
|
|
||||||
*/
|
|
||||||
if ( $state->current_state() < State::STATE_ONBOARDED ) {
|
|
||||||
return new ConnectBearer();
|
|
||||||
}
|
|
||||||
$cache = new Cache( 'ppcp-paypal-bearer' );
|
|
||||||
$key = $container->get( 'api.key' );
|
|
||||||
$secret = $container->get( 'api.secret' );
|
|
||||||
$host = $container->get( 'api.host' );
|
|
||||||
$logger = $container->get( 'woocommerce.logger.woocommerce' );
|
|
||||||
$settings = $container->get( 'wcgateway.settings' );
|
|
||||||
return new PayPalBearer(
|
|
||||||
$cache,
|
|
||||||
$host,
|
|
||||||
$key,
|
|
||||||
$secret,
|
|
||||||
$logger,
|
|
||||||
$settings
|
|
||||||
);
|
|
||||||
},
|
|
||||||
'onboarding.state' => function( ContainerInterface $container ) : State {
|
'onboarding.state' => function( ContainerInterface $container ) : State {
|
||||||
$settings = $container->get( 'wcgateway.settings' );
|
$settings = $container->get( 'wcgateway.settings' );
|
||||||
return new State( $settings );
|
return new State( $settings );
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue