@Override
    public void registerHints(final RuntimeHints hints, final ClassLoader classLoader) {
        hints.resources()
            .registerPattern("metadata/*.xml");

        registerSerializationHints(hints, JsonResourceMetadataResolver.SamlServiceProviderMetadata.class,
            SamlRegisteredService.class,
            SamlArtifactTicketImpl.class,
            SamlAttributeQueryTicketImpl.class);

        registerReflectionHints(hints,
            List.of(
                SamlIdPDistributedSessionCookieCipherExecutor.class,
                SamlRegisteredService.class,
                SamlIdPMetadataGenerator.class,
                SamlIdPMetadataLocator.class
            ));
        registerReflectionHints(hints,
            findSubclassesInPackage(MetadataResolver.class,
                "org.opensaml.saml.metadata", CentralAuthenticationService.NAMESPACE));
        registerReflectionHints(hints,
            findSubclassesInPackage(SamlIdPMetadataLocator.class, CentralAuthenticationService.NAMESPACE));
        registerReflectionHints(hints,
            findSubclassesInPackage(SamlIdPMetadataGenerator.class, CentralAuthenticationService.NAMESPACE));

        registerProxyHints(hints, SamlRegisteredServiceMetadataResolver.class);
        registerProxyHints(hints, SamlRegisteredServiceMetadataResolutionPlanConfigurer.class);
        registerSpringProxyHints(hints, DisposableBean.class, SamlRegisteredServiceMetadataResolver.class);
    }
This is {@link SamlIdPRuntimeHints}.

@author Misagh Moayyed
@since 7.0.0
support/cas-server-support-saml-idp/src/main/java/org/apereo/cas/nativex/SamlIdPRuntimeHints.java