private void processGrpcClientBeansAnnotations(final Class<?> clazz) {
        for (final GrpcClientBean annotation : clazz.getAnnotationsByType(GrpcClientBean.class)) {
            final String beanNameToCreate = getBeanName(annotation);
            try {
                final ConfigurableListableBeanFactory beanFactory = getConfigurableBeanFactory();
                final Object beanValue =
                        processInjectionPoint(null, annotation.clazz(), annotation.client());
                beanFactory.registerSingleton(beanNameToCreate, beanValue);
            } catch (final Exception e) {
                throw new BeanCreationException(annotation + " on class " + clazz.getName(), beanNameToCreate,
                        "Unexpected exception while creating and registering bean",
                        e);
            }
        }
    }
Processes the given class's {@link GrpcClientBean} annotations.

@param clazz The class to process.
grpc-client-spring-boot-starter/src/main/java/net/devh/boot/grpc/client/inject/GrpcClientBeanPostProcessor.java