Package org.apache.maven.plugins.shade
Class DefaultShader
java.lang.Object
org.apache.maven.plugins.shade.DefaultShader
- All Implemented Interfaces:
Shader
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classData holder for CRC and Size.private static classA package mapper based on a list ofRelocatorsprivate static classprivate static interfaceprivate static classprivate static classInputStreamthat can peek ahead at zip header bytes. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate final org.slf4j.Logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddDirectory(Set<String> resources, JarOutputStream jos, String name, long time) private voidaddJavaSource(Set<String> resources, JarOutputStream jos, String name, long time, InputStream is, List<Relocator> relocators) private voidaddRemappedClass(JarOutputStream jos, File jar, String name, long time, InputStream is, DefaultShader.DefaultPackageMapper packageMapper) private voidaddResource(Set<String> resources, JarOutputStream jos, String name, Callable<InputStream> input, long time, int method) getFilters(File jar, List<Filter> filters) private longprivate voidgoThroughAllJarEntriesForManifestTransformer(ShadeRequest shadeRequest, Set<String> resources, ManifestResourceTransformer manifestTransformer, JarOutputStream jos) private booleanisExcludedEntry(String name) private booleanisFiltered(List<Filter> filters, String name) private voidlogSummaryOfDuplicates(Map<Collection<File>, HashSet<String>> overlapping) private JarFilenewJarFile(File jar) private booleanresourceTransformed(List<ResourceTransformer> resourceTransformers, String name, InputStream is, List<Relocator> relocators, long time) voidshade(ShadeRequest shadeRequest) Perform a shading operation.private voidshadeDir(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, JarOutputStream jos, Map<String, HashSet<File>> duplicates, File jar, File current, String prefix, List<Filter> jarFilters) private voidshadeJar(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, JarOutputStream jos, Map<String, HashSet<File>> duplicates, File jar, List<Filter> jarFilters) private voidshadeJarEntry(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, JarOutputStream jos, Map<String, HashSet<File>> duplicates, File jar, Callable<InputStream> inputProvider, String name, long time, int method) private voidshadeJars(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, JarOutputStream jos, Map<String, HashSet<File>> duplicates, DefaultShader.DefaultPackageMapper packageMapper) private void
-
Field Details
-
BUFFER_SIZE
private static final int BUFFER_SIZE- See Also:
-
logger
private final org.slf4j.Logger logger
-
-
Constructor Details
-
DefaultShader
public DefaultShader() -
DefaultShader
public DefaultShader(org.slf4j.Logger logger)
-
-
Method Details
-
getTime
-
shade
public void shade(ShadeRequest shadeRequest) throws IOException, org.apache.maven.plugin.MojoExecutionException Description copied from interface:ShaderPerform a shading operation.- Specified by:
shadein interfaceShader- Parameters:
shadeRequest- holds the many parameters to this method- Throws:
IOException- for IO errors reading the thingorg.apache.maven.plugin.MojoExecutionException- for anything else that goes wrong.
-
shadeJars
private void shadeJars(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, JarOutputStream jos, Map<String, HashSet<File>> duplicates, DefaultShader.DefaultPackageMapper packageMapper) throws IOException- Throws:
IOException
-
shadeDir
private void shadeDir(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, JarOutputStream jos, Map<String, HashSet<File>> duplicates, File jar, File current, String prefix, List<Filter> jarFilters) throws IOException- Throws:
IOException
-
shadeJar
private void shadeJar(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, JarOutputStream jos, Map<String, HashSet<File>> duplicates, File jar, List<Filter> jarFilters) throws IOException- Throws:
IOException
-
isExcludedEntry
-
shadeJarEntry
private void shadeJarEntry(ShadeRequest shadeRequest, Set<String> resources, List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, JarOutputStream jos, Map<String, HashSet<File>> duplicates, File jar, Callable<InputStream> inputProvider, String name, long time, int method) throws Exception- Throws:
Exception
-
goThroughAllJarEntriesForManifestTransformer
private void goThroughAllJarEntriesForManifestTransformer(ShadeRequest shadeRequest, Set<String> resources, ManifestResourceTransformer manifestTransformer, JarOutputStream jos) throws IOException - Throws:
IOException
-
showOverlappingWarning
private void showOverlappingWarning() -
logSummaryOfDuplicates
-
newJarFile
- Throws:
IOException
-
getFilters
-
addDirectory
private void addDirectory(Set<String> resources, JarOutputStream jos, String name, long time) throws IOException - Throws:
IOException
-
addRemappedClass
private void addRemappedClass(JarOutputStream jos, File jar, String name, long time, InputStream is, DefaultShader.DefaultPackageMapper packageMapper) throws IOException, org.apache.maven.plugin.MojoExecutionException - Throws:
IOExceptionorg.apache.maven.plugin.MojoExecutionException
-
isFiltered
-
resourceTransformed
private boolean resourceTransformed(List<ResourceTransformer> resourceTransformers, String name, InputStream is, List<Relocator> relocators, long time) throws IOException - Throws:
IOException
-
addJavaSource
private void addJavaSource(Set<String> resources, JarOutputStream jos, String name, long time, InputStream is, List<Relocator> relocators) throws IOException - Throws:
IOException
-
addResource
private void addResource(Set<String> resources, JarOutputStream jos, String name, Callable<InputStream> input, long time, int method) throws Exception - Throws:
Exception
-