Package org.apache.maven.plugins.shade
Class DefaultShader
- java.lang.Object
-
- org.apache.maven.plugins.shade.DefaultShader
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
DefaultShader.CrcAndSize
Data holder for CRC and Size.private static class
DefaultShader.DefaultPackageMapper
A package mapper based on a list ofRelocator
sprivate static class
DefaultShader.LazyInitRemapper
private static interface
DefaultShader.PackageMapper
private static class
DefaultShader.ShadeClassRemapper
private static class
DefaultShader.ZipHeaderPeekInputStream
InputStream
that can peek ahead at zip header bytes.
-
Field Summary
Fields Modifier and Type Field Description private static int
BUFFER_SIZE
private org.slf4j.Logger
logger
-
Constructor Summary
Constructors Constructor Description DefaultShader()
DefaultShader(org.slf4j.Logger logger)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addDirectory(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, long time)
private void
addJavaSource(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, long time, java.io.InputStream is, java.util.List<Relocator> relocators)
private void
addRemappedClass(java.util.jar.JarOutputStream jos, java.io.File jar, java.lang.String name, long time, java.io.InputStream is, DefaultShader.DefaultPackageMapper packageMapper)
private void
addResource(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, java.util.concurrent.Callable<java.io.InputStream> input, long time, int method)
private java.util.List<Filter>
getFilters(java.io.File jar, java.util.List<Filter> filters)
private long
getTime(java.util.zip.ZipEntry entry)
private void
goThroughAllJarEntriesForManifestTransformer(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, ManifestResourceTransformer manifestTransformer, java.util.jar.JarOutputStream jos)
private boolean
isExcludedEntry(java.lang.String name)
private boolean
isFiltered(java.util.List<Filter> filters, java.lang.String name)
private void
logSummaryOfDuplicates(java.util.Map<java.util.Collection<java.io.File>,java.util.HashSet<java.lang.String>> overlapping)
private java.util.jar.JarFile
newJarFile(java.io.File jar)
private boolean
resourceTransformed(java.util.List<ResourceTransformer> resourceTransformers, java.lang.String name, java.io.InputStream is, java.util.List<Relocator> relocators, long time)
void
shade(ShadeRequest shadeRequest)
Perform a shading operation.private void
shadeDir(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, java.io.File jar, java.io.File current, java.lang.String prefix, java.util.List<Filter> jarFilters)
private void
shadeJar(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, java.io.File jar, java.util.List<Filter> jarFilters)
private void
shadeJarEntry(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, java.io.File jar, java.util.concurrent.Callable<java.io.InputStream> inputProvider, java.lang.String name, long time, int method)
private void
shadeJars(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, DefaultShader.DefaultPackageMapper packageMapper)
private void
showOverlappingWarning()
-
-
-
Field Detail
-
BUFFER_SIZE
private static final int BUFFER_SIZE
- See Also:
- Constant Field Values
-
logger
private final org.slf4j.Logger logger
-
-
Method Detail
-
getTime
private long getTime(java.util.zip.ZipEntry entry)
-
shade
public void shade(ShadeRequest shadeRequest) throws java.io.IOException, org.apache.maven.plugin.MojoExecutionException
Description copied from interface:Shader
Perform a shading operation.
-
shadeJars
private void shadeJars(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, DefaultShader.DefaultPackageMapper packageMapper) throws java.io.IOException
- Throws:
java.io.IOException
-
shadeDir
private void shadeDir(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, java.io.File jar, java.io.File current, java.lang.String prefix, java.util.List<Filter> jarFilters) throws java.io.IOException
- Throws:
java.io.IOException
-
shadeJar
private void shadeJar(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, java.io.File jar, java.util.List<Filter> jarFilters) throws java.io.IOException
- Throws:
java.io.IOException
-
isExcludedEntry
private boolean isExcludedEntry(java.lang.String name)
-
shadeJarEntry
private void shadeJarEntry(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, java.util.List<ResourceTransformer> transformers, DefaultShader.DefaultPackageMapper packageMapper, java.util.jar.JarOutputStream jos, java.util.Map<java.lang.String,java.util.HashSet<java.io.File>> duplicates, java.io.File jar, java.util.concurrent.Callable<java.io.InputStream> inputProvider, java.lang.String name, long time, int method) throws java.lang.Exception
- Throws:
java.lang.Exception
-
goThroughAllJarEntriesForManifestTransformer
private void goThroughAllJarEntriesForManifestTransformer(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, ManifestResourceTransformer manifestTransformer, java.util.jar.JarOutputStream jos) throws java.io.IOException
- Throws:
java.io.IOException
-
showOverlappingWarning
private void showOverlappingWarning()
-
logSummaryOfDuplicates
private void logSummaryOfDuplicates(java.util.Map<java.util.Collection<java.io.File>,java.util.HashSet<java.lang.String>> overlapping)
-
newJarFile
private java.util.jar.JarFile newJarFile(java.io.File jar) throws java.io.IOException
- Throws:
java.io.IOException
-
getFilters
private java.util.List<Filter> getFilters(java.io.File jar, java.util.List<Filter> filters)
-
addDirectory
private void addDirectory(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, long time) throws java.io.IOException
- Throws:
java.io.IOException
-
addRemappedClass
private void addRemappedClass(java.util.jar.JarOutputStream jos, java.io.File jar, java.lang.String name, long time, java.io.InputStream is, DefaultShader.DefaultPackageMapper packageMapper) throws java.io.IOException, org.apache.maven.plugin.MojoExecutionException
- Throws:
java.io.IOException
org.apache.maven.plugin.MojoExecutionException
-
isFiltered
private boolean isFiltered(java.util.List<Filter> filters, java.lang.String name)
-
resourceTransformed
private boolean resourceTransformed(java.util.List<ResourceTransformer> resourceTransformers, java.lang.String name, java.io.InputStream is, java.util.List<Relocator> relocators, long time) throws java.io.IOException
- Throws:
java.io.IOException
-
addJavaSource
private void addJavaSource(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, long time, java.io.InputStream is, java.util.List<Relocator> relocators) throws java.io.IOException
- Throws:
java.io.IOException
-
addResource
private void addResource(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, java.util.concurrent.Callable<java.io.InputStream> input, long time, int method) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-