class JmsDefaultDeserializationPolicy implements JmsDeserializationPolicy {

    @Override
    public boolean isTrustedType(JmsDestination destination, Class<?> clazz) {
        if (clazz == null) {
            return true;
        }

        String className = clazz.getCanonicalName();
        if (className == null) {
            // Shouldn't happen as we pre-processed things, but just in case..
            className = clazz.getName();
        }

        for (String denyListEntry : denyList) {
            if (CATCH_ALL_WILDCARD.equals(denyListEntry)) {
                return false;
            } else if (isClassOrPackageMatch(className, denyListEntry)) {
                return false;
            }
        }

        for (String allowListEntry : allowList) {
            if (CATCH_ALL_WILDCARD.equals(allowListEntry)) {
                return true;
            } else if (isClassOrPackageMatch(className, allowListEntry)) {
                return true;
            }
        }

        // Failing outright rejection or allow from above, reject.
        return false;
    }

    public  JmsDefaultDeserializationPolicy();
    public  JmsDefaultDeserializationPolicy(JmsDefaultDeserializationPolicy source);

}