class XLogUtils {

    public static Set<String> getRemainingClassNames(Set<Class<?>> classes,
            Set<String> classNames) {
        if (classes == null || classes.size() == 0 || classNames == null) {
            return classNames;
        }
        Set<String> nameFromClasses = new HashSet<String>();
        for (Class clazz : classes) {
            try {
                if (clazz != null && clazz.getCanonicalName() != null) {
                    nameFromClasses.add(clazz.getCanonicalName().replaceAll("\\$", "."));
                }
            } catch (Throwable throwable) {
                // ignore
            }
        }

        nameFromClasses.retainAll(classNames);
        classNames.removeAll(nameFromClasses);

        return classNames;
    }

    private  XLogUtils();

}