Automattic\WooCommerce\Api\Infrastructure
Main::assert_is_controller_subclass
Assert that a class name resolves to a concrete GraphQLControllerBase subclass.
Метод класса: Main{}
Хуков нет.
Возвращает
null. Ничего (null).
Использование
$result = Main::assert_is_controller_subclass( $controller_class_name ): void;
- $controller_class_name(строка) (обязательный)
- Fully-qualified name of the class to validate.
Код Main::assert_is_controller_subclass() Main::assert is controller subclass WC 11.0.1
private static function assert_is_controller_subclass( string $controller_class_name ): void {
// Differentiate "class does not exist" (typo / stale autoloader) from
// "class exists but is not a subclass" — is_subclass_of() collapses
// both into false, which is confusing when debugging a bootstrap typo.
if ( ! class_exists( $controller_class_name ) ) {
throw new \InvalidArgumentException(
sprintf(
'GraphQL controller class "%s" does not exist or is not autoloadable. Check the spelling, or run `composer dump-autoload` if it was added since the last autoloader regeneration.',
esc_html( $controller_class_name )
)
);
}
if ( ! is_subclass_of( $controller_class_name, GraphQLControllerBase::class ) ) {
throw new \InvalidArgumentException(
sprintf(
'Class "%s" must extend %s.',
esc_html( $controller_class_name ),
esc_html( GraphQLControllerBase::class )
)
);
}
}