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 classDefaultShader.CrcAndSizeData holder for CRC and Size.private static classDefaultShader.DefaultPackageMapperA package mapper based on a list ofRelocatorsprivate static classDefaultShader.LazyInitRemapperprivate static interfaceDefaultShader.PackageMapperprivate static classDefaultShader.ShadeClassRemapperprivate static classDefaultShader.ZipHeaderPeekInputStreamInputStreamthat can peek ahead at zip header bytes.
-
Field Summary
Fields Modifier and Type Field Description private static intBUFFER_SIZEprivate org.slf4j.Loggerlogger
-
Constructor Summary
Constructors Constructor Description DefaultShader()DefaultShader(org.slf4j.Logger logger)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddDirectory(java.util.Set<java.lang.String> resources, java.util.jar.JarOutputStream jos, java.lang.String name, long time)private voidaddJavaSource(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 voidaddRemappedClass(java.util.jar.JarOutputStream jos, java.io.File jar, java.lang.String name, long time, java.io.InputStream is, DefaultShader.DefaultPackageMapper packageMapper)private voidaddResource(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 longgetTime(java.util.zip.ZipEntry entry)private voidgoThroughAllJarEntriesForManifestTransformer(ShadeRequest shadeRequest, java.util.Set<java.lang.String> resources, ManifestResourceTransformer manifestTransformer, java.util.jar.JarOutputStream jos)private static booleanhasX5455ExtendedTimestamp(java.util.zip.ZipEntry zipEntry)Returnstrueif passed inZipEntryhas extra data that contains the extended timestamp (0x5455).private booleanisExcludedEntry(java.lang.String name)private booleanisFiltered(java.util.List<Filter> filters, java.lang.String name)private voidlogSummaryOfDuplicates(java.util.Map<java.util.Collection<java.io.File>,java.util.HashSet<java.lang.String>> overlapping)private java.util.jar.JarFilenewJarFile(java.io.File jar)private booleanresourceTransformed(java.util.List<ResourceTransformer> resourceTransformers, java.lang.String name, java.io.InputStream is, java.util.List<Relocator> relocators, long time)voidshade(ShadeRequest shadeRequest)Perform a shading operation.private voidshadeDir(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 voidshadeJar(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 voidshadeJarEntry(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 voidshadeJars(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 voidshowOverlappingWarning()
-
-
-
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)
-
hasX5455ExtendedTimestamp
private static boolean hasX5455ExtendedTimestamp(java.util.zip.ZipEntry zipEntry)
Returnstrueif passed inZipEntryhas extra data that contains the extended timestamp (0x5455).- See Also:
- X5455_ExtendedTimestamp
-
shade
public void shade(ShadeRequest shadeRequest) throws java.io.IOException, org.apache.maven.plugin.MojoExecutionException
Description copied from interface:ShaderPerform 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.IOExceptionorg.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
-
-