Refactor remaining modules to Modularity.

Remove Dhii dependencies.
This commit is contained in:
Pedro Silva 2023-12-19 17:26:09 +00:00
parent 5837d65b18
commit 429232f60f
No known key found for this signature in database
GPG key ID: E2EE20C0669D24B3
45 changed files with 341 additions and 481 deletions

View file

@ -9,8 +9,6 @@ declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\StatusReport;
use WooCommerce\PayPalCommerce\Vendor\Dhii\Modular\Module\ModuleInterface;
return static function (): ModuleInterface {
return static function (): StatusReportModule {
return new StatusReportModule();
};

View file

@ -9,10 +9,11 @@ declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\StatusReport;
use WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Module\ExecutableModule;
use WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Module\ExtendingModule;
use WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Module\ModuleClassNameIdTrait;
use WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Module\ServiceModule;
use WooCommerce\PayPalCommerce\WcSubscriptions\Helper\SubscriptionHelper;
use WooCommerce\PayPalCommerce\Vendor\Dhii\Container\ServiceProvider;
use WooCommerce\PayPalCommerce\Vendor\Dhii\Modular\Module\ModuleInterface;
use WooCommerce\PayPalCommerce\Vendor\Interop\Container\ServiceProviderInterface;
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;
use WooCommerce\PayPalCommerce\ApiClient\Authentication\Bearer;
use WooCommerce\PayPalCommerce\ApiClient\Endpoint\BillingAgreementsEndpoint;
@ -26,16 +27,21 @@ use WooCommerce\PayPalCommerce\Webhooks\WebhookEventStorage;
/**
* Class StatusReportModule
*/
class StatusReportModule implements ModuleInterface {
class StatusReportModule implements ServiceModule, ExtendingModule, ExecutableModule {
use ModuleClassNameIdTrait;
/**
* {@inheritDoc}
*/
public function setup(): ServiceProviderInterface {
return new ServiceProvider(
require __DIR__ . '/../services.php',
require __DIR__ . '/../extensions.php'
);
public function services(): array {
return require __DIR__ . '/../services.php';
}
/**
* {@inheritDoc}
*/
public function extensions(): array {
return require __DIR__ . '/../extensions.php';
}
/**
@ -43,7 +49,7 @@ class StatusReportModule implements ModuleInterface {
*
* @param ContainerInterface $c A services container instance.
*/
public function run( ContainerInterface $c ): void {
public function run( ContainerInterface $c ): bool {
add_action(
'woocommerce_system_status_report',
function () use ( $c ) {
@ -183,12 +189,9 @@ class StatusReportModule implements ModuleInterface {
);
}
);
}
/**
* {@inheritDoc}
*/
public function getKey() { }
return true;
}
/**
* It returns the current onboarding status.