@Override
    protected String extractPrincipalId(final Credential credential, final Optional<Principal> currentPrincipal) {
        return resolvePrincipalInternal(((X509CertificateCredential) credential).getCertificate());
    }
Abstract class in support of multiple resolvers for X509 Certificates.

@author Scott Battaglia
@since 3.0.0
support/cas-server-support-x509-core/src/main/java/org/apereo/cas/adaptors/x509/authentication/principal/AbstractX509PrincipalResolver.java