private void cacheAllClasses(String name) throws ClassNotFoundException {
        JarFile jarFile = null;
        String stripClassName = "";
        try {
            jarFile = new JarFile(FILE_PATH_NAME);
        } catch (IOException e) {
            LOG.error("Jar file " + FILE_PATH_NAME + " not found" + e.getMessage());
        }
        Enumeration<JarEntry> entries = jarFile.entries();
        while (entries.hasMoreElements()) {
            JarEntry jarEntry = entries.nextElement();
            if (match(normalize(jarEntry.getName()), PACKAGE_NAME)) {
                try {
                    byte[] classData = loadClassData(jarFile, jarEntry);
                    stripClassName = stripClassName(normalize(jarEntry.getName()));
                    if (classData != null && stripClassName.equals(name)) {
                        Class<?> clazz = defineClass(stripClassName, classData, 0, classData.length);
                        localCache.put(clazz.getName(), clazz);
                        LOG.info("Class " + name + " loaded in local cache");
                    }
                } catch (IOException e) {
                    throw new ClassNotFoundException("Cannot load class " + jarEntry.getName() + ": " + e);
                }
            }
        }

    }