| Server IP : 5.129.245.98 / Your IP : 216.73.217.19 Web Server : Apache/2.4.66 (Debian) System : Linux 1b8c17c336b9 6.8.0-111-generic #111-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 11 23:16:02 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/woocommerce/src/Internal/Admin/Agentic/ |
Upload File : |
<?php
declare(strict_types=1);
namespace Automattic\WooCommerce\Internal\Admin\Agentic;
use Automattic\Jetpack\Constants;
use Automattic\WooCommerce\Internal\RegisterHooksInterface;
use Automattic\WooCommerce\Utilities\FeaturesUtil;
/**
* AgenticController class
*
* Main controller for Agentic Commerce Protocol features.
* Manages initialization of webhooks and future settings for the Agentic feature.
*
* @since 10.3.0
*/
class AgenticController implements RegisterHooksInterface {
/**
* Register this class instance to the appropriate hooks.
*
* @internal
*/
public function register() {
// Don't register hooks during installation.
if ( Constants::is_true( 'WC_INSTALLING' ) ) {
return;
}
// We want to run on init for translations but before woocommerce_init so that
// we can hook the new integration settings page. We should be able to simplify
// this by just hooking here when we no longer need to check if the feature is enabled.
add_action( 'before_woocommerce_init', array( $this, 'on_init' ) );
}
/**
* Hook into WordPress on init.
*
* @internal
*/
public function on_init() {
// Bail if the feature is not enabled.
if ( ! FeaturesUtil::feature_is_enabled( 'agentic_checkout' ) ) {
return;
}
// Resolve webhook manager from container.
wc_get_container()->get( AgenticWebhookManager::class )->register();
}
}