class LogOnlySignatureTrustEngine implements TrustedCredentialTrustEngine<Signature>, SignatureTrustEngine {
        private final SignatureTrustEngine wrapped;

        public LogOnlySignatureTrustEngine(final SignatureTrustEngine wrapped) {
            LOGGER.error("SIGNATURE VALIDATION DISABLED, DO NOT USE THIS ON PRODUCTION");
            this.wrapped = wrapped;
        }

        @Override
        public CredentialResolver getCredentialResolver() {
            return ((TrustedCredentialTrustEngine<?>) wrapped).getCredentialResolver();
        }

        @Override
        public KeyInfoCredentialResolver getKeyInfoResolver() {
            return wrapped.getKeyInfoResolver();
        }

        @Override
        public boolean validate(final Signature token, final CriteriaSet trustBasisCriteria) throws SecurityException {
            try {
                if (!wrapped.validate(token, trustBasisCriteria)) {
                    LOGGER.error("Signature validation failed, continuing anyway. Criteria: " + trustBasisCriteria);
                }
            } catch (final SecurityException e) {
                LOGGER.error("Signature validation failed, continuing anyway. Criteria: " + trustBasisCriteria + ", cause: "
                        + e.getMessage(), e);
            }
            return true;
        }


        @Override
        public boolean validate(final byte[] signature, final byte[] content, final String algorithmURI,
                                final CriteriaSet trustBasisCriteria,
                                final Credential candidateCredential) throws SecurityException {<FILL_FUNCTION_BODY>}
    }

            try {
                if (!wrapped.validate(signature, content, algorithmURI, trustBasisCriteria, candidateCredential)) {
                    LOGGER.error("Signature validation failed, continuing anyway. Criteria: " + trustBasisCriteria);
                }
            } catch (final SecurityException e) {
                LOGGER.error("Signature validation failed, continuing anyway. Criteria: " + trustBasisCriteria + ", cause: "
                        + e.getMessage(), e);
            }
            return true;
        
<no_super_class>