private void shadeJar()

in src/main/java/org/apache/maven/plugins/shade/DefaultShader.java [323:367]


    private void shadeJar(
            ShadeRequest shadeRequest,
            Set<String> resources,
            List<ResourceTransformer> transformers,
            DefaultPackageMapper packageMapper,
            JarOutputStream jos,
            Map<String, HashSet<File>> duplicates,
            File jar,
            List<Filter> jarFilters)
            throws IOException {
        try (JarFile jarFile = newJarFile(jar)) {

            for (Enumeration<JarEntry> j = jarFile.entries(); j.hasMoreElements(); ) {
                final JarEntry entry = j.nextElement();

                String name = entry.getName();

                if (entry.isDirectory() || isFiltered(jarFilters, name) || isExcludedEntry(name)) {
                    continue;
                }

                try {
                    shadeJarEntry(
                            shadeRequest,
                            resources,
                            transformers,
                            packageMapper,
                            jos,
                            duplicates,
                            jar,
                            new Callable<InputStream>() {
                                @Override
                                public InputStream call() throws Exception {
                                    return jarFile.getInputStream(entry);
                                }
                            },
                            name,
                            getTime(entry),
                            entry.getMethod());
                } catch (Exception e) {
                    throw new IOException(String.format("Problem shading JAR %s entry %s: %s", jar, name, e), e);
                }
            }
        }
    }