48 lines
1.2 KiB
PHP
48 lines
1.2 KiB
PHP
<?php
|
|
declare( strict_types=1 );
|
|
|
|
namespace Automattic\WooCommerce\GoogleListingsAndAds\MultichannelMarketing;
|
|
|
|
use Automattic\WooCommerce\Admin\Marketing\MarketingChannels;
|
|
use Automattic\WooCommerce\GoogleListingsAndAds\Infrastructure\Registerable;
|
|
use Automattic\WooCommerce\GoogleListingsAndAds\Infrastructure\Service;
|
|
use Automattic\WooCommerce\GoogleListingsAndAds\Proxies\WC;
|
|
|
|
defined( 'ABSPATH' ) || exit;
|
|
|
|
/**
|
|
* Class MarketingChannelRegistrar
|
|
*
|
|
* @package Automattic\WooCommerce\GoogleListingsAndAds\MultichannelMarketing
|
|
*
|
|
* @since 2.3.10
|
|
*/
|
|
class MarketingChannelRegistrar implements Service, Registerable {
|
|
/**
|
|
* @var MarketingChannels
|
|
*/
|
|
protected $marketing_channels;
|
|
|
|
/**
|
|
* @var GLAChannel
|
|
*/
|
|
protected $channel;
|
|
|
|
/**
|
|
* MarketingChannelRegistrar constructor.
|
|
*
|
|
* @param GLAChannel $channel
|
|
* @param WC $wc
|
|
*/
|
|
public function __construct( GLAChannel $channel, WC $wc ) {
|
|
$this->marketing_channels = $wc->wc_get_container()->get( MarketingChannels::class );
|
|
$this->channel = $channel;
|
|
}
|
|
|
|
/**
|
|
* Register as a WooCommerce marketing channel.
|
|
*/
|
|
public function register(): void {
|
|
$this->marketing_channels->register( $this->channel );
|
|
}
|
|
}
|