@Override
    public InterruptResponse inquireInternal(final Authentication authentication,
                                             final RegisteredService registeredService,
                                             final Service service,
                                             final Credential credential,
                                             final RequestContext requestContext) throws Throwable {
        val principal = authentication.getPrincipal();
        val attributes = new HashMap<String, Object>(principal.getAttributes());
        attributes.putAll(authentication.getAttributes());
        val args = new Object[]{principal, attributes, service, registeredService, requestContext, LOGGER};
        LOGGER.trace("Invoking Groovy script with attributes=[{}], service=[{}] and default logger",
            attributes, service != null ? service.getId() : "null");
        return watchableScript.execute(args, InterruptResponse.class);
    }
This is {@link GroovyScriptInterruptInquirer}.

@author Misagh Moayyed
@since 5.2.0
support/cas-server-support-interrupt-core/src/main/java/org/apereo/cas/interrupt/GroovyScriptInterruptInquirer.java