provides, true ); } /** * Registers items with the container */ public function register(): void { $this->getContainer()->add( 'cloudflare_api_key_factory', APIKeyFactory::class )->addArgument( 'options' ); $this->getContainer()->add( 'cloudflare_client', Client::class ) ->addArgument( $this->getContainer()->get( 'cloudflare_api_key_factory' )->create() ); $this->getContainer()->add( 'cloudflare_endpoints', Endpoints::class ) ->addArgument( 'cloudflare_client' ); $this->getContainer()->add( 'cloudflare', Cloudflare::class ) ->addArguments( [ 'options', 'cloudflare_endpoints', ] ); $this->getContainer()->addShared( 'cloudflare_subscriber', CloudflareSubscriber::class ) ->addArguments( [ 'cloudflare', 'options', 'options_api', 'cloudflare_api_key_factory', ] ); $this->getContainer()->addShared( 'cloudflare_admin_subscriber', CloudflareAdminSubscriber::class ); } }