Class ManifestResourceTransformer
- java.lang.Object
-
- org.apache.maven.plugins.shade.resource.AbstractCompatibilityTransformer
-
- org.apache.maven.plugins.shade.resource.ManifestResourceTransformer
-
- All Implemented Interfaces:
ReproducibleResourceTransformer,ResourceTransformer
public class ManifestResourceTransformer extends AbstractCompatibilityTransformer
A resource processor that allows the arbitrary addition of attributes to the first MANIFEST.MF that is found in the set of JARs being processed, or to a newly created manifest for the shaded JAR.- Since:
- 1.2
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<java.lang.String>additionalAttributesprivate java.util.List<java.lang.String>defaultAttributesprivate java.lang.StringmainClassprivate java.util.jar.Manifestmanifestprivate booleanmanifestDiscoveredprivate java.util.Map<java.lang.String,java.lang.Object>manifestEntriesprivate longtime
-
Constructor Summary
Constructors Constructor Description ManifestResourceTransformer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanTransformResource(java.lang.String resource)booleanhasTransformedResource()voidmodifyOutputStream(java.util.jar.JarOutputStream jos)voidprocessResource(java.lang.String resource, java.io.InputStream is, java.util.List<Relocator> relocators, long time)Transform an individual resourceprivate java.lang.Stringrelocate(java.lang.String originalValue, java.util.List<Relocator> relocators)voidsetAdditionalAttributes(java.util.List<java.lang.String> additionalAttributes)voidsetMainClass(java.lang.String mainClass)voidsetManifestEntries(java.util.Map<java.lang.String,java.lang.Object> manifestEntries)-
Methods inherited from class org.apache.maven.plugins.shade.resource.AbstractCompatibilityTransformer
processResource
-
-
-
-
Field Detail
-
defaultAttributes
private final java.util.List<java.lang.String> defaultAttributes
-
mainClass
private java.lang.String mainClass
-
manifestEntries
private java.util.Map<java.lang.String,java.lang.Object> manifestEntries
-
additionalAttributes
private java.util.List<java.lang.String> additionalAttributes
-
manifestDiscovered
private boolean manifestDiscovered
-
manifest
private java.util.jar.Manifest manifest
-
time
private long time
-
-
Method Detail
-
setMainClass
public void setMainClass(java.lang.String mainClass)
-
setManifestEntries
public void setManifestEntries(java.util.Map<java.lang.String,java.lang.Object> manifestEntries)
-
setAdditionalAttributes
public void setAdditionalAttributes(java.util.List<java.lang.String> additionalAttributes)
-
canTransformResource
public boolean canTransformResource(java.lang.String resource)
-
processResource
public void processResource(java.lang.String resource, java.io.InputStream is, java.util.List<Relocator> relocators, long time) throws java.io.IOExceptionDescription copied from interface:ReproducibleResourceTransformerTransform an individual resource- Parameters:
resource- The resource nameis- An input stream for the resource, the implementation should *not* close this streamrelocators- A list of relocatorstime- the time of the resource to process- Throws:
java.io.IOException- When the IO blows up
-
hasTransformedResource
public boolean hasTransformedResource()
-
modifyOutputStream
public void modifyOutputStream(java.util.jar.JarOutputStream jos) throws java.io.IOException- Throws:
java.io.IOException
-
relocate
private java.lang.String relocate(java.lang.String originalValue, java.util.List<Relocator> relocators)
-
-