Yoast\WP\SEO\MyYoast_Client\Infrastructure\Registration

Client_Registration::registerpublicYoast 1.0

Registers the plugin as an OAuth client via DCR (RFC 7591).

Uses a database-backed exclusive lock to prevent concurrent registrations.

Метод класса: Client_Registration{}

Хуков нет.

Возвращает

Registered_Client. The registration result.

Использование

$Client_Registration = new Client_Registration();
$Client_Registration->register( $redirect_uris ): Registered_Client;
$redirect_uris(string[]) (обязательный)
The OAuth redirect URIs to register.

Код Client_Registration::register() Yoast 28.3

public function register( array $redirect_uris ): Registered_Client {
	// Acquire lock and execute registration.
	try {
		return $this->lock_helper->execute(
			'wpseo_myyoast_dcr_lock:' . $this->issuer_config->get_issuer_key() . ':' . \get_current_blog_id(),
			function () use ( $redirect_uris ) {
				return $this->do_register( $redirect_uris );
			},
			self::DCR_LOCK_TTL_IN_SECONDS,
		);
	} catch ( Lock_Timeout_Exception $e ) {
		$this->logger->warning( 'DCR lock contention: another registration is already in progress.' );
		throw new Registration_Failed_Exception( 'Another registration is already in progress.' );
	}
}