Class MergeFilesTransformer

java.lang.Object
org.eclipse.jetty.toolchain.shade.MergeFilesTransformer
All Implemented Interfaces:
org.apache.maven.plugins.shade.resource.ResourceTransformer

public class MergeFilesTransformer extends Object implements org.apache.maven.plugins.shade.resource.ResourceTransformer

This transformer (used by Maven Shade plugin will merge few files files content in the resource within the shaded jar.

Per default the current content of the resource (if existing) will preserved. This can be changed using the parameter preserveResourceContent

  • Field Details

    • files

      private List<String> files
      paths to files to merge in the jar
    • resource

      private String resource
      the resource in the jar file to generate/modify
    • preserveResourceContent

      private boolean preserveResourceContent
      if the content of the resource must be preserve true per default
    • data

      private ByteArrayOutputStream data
  • Constructor Details

    • MergeFilesTransformer

      public MergeFilesTransformer()
    • MergeFilesTransformer

      public MergeFilesTransformer(List<String> files, String resource, boolean preserveResourceContent)
  • Method Details

    • canTransformResource

      public boolean canTransformResource(String resource)
      Specified by:
      canTransformResource in interface org.apache.maven.plugins.shade.resource.ResourceTransformer
    • processResource

      public void processResource(String resource, InputStream is, List<org.apache.maven.plugins.shade.relocation.Relocator> relocators) throws IOException
      Specified by:
      processResource in interface org.apache.maven.plugins.shade.resource.ResourceTransformer
      Throws:
      IOException
    • hasTransformedResource

      public boolean hasTransformedResource()
      Specified by:
      hasTransformedResource in interface org.apache.maven.plugins.shade.resource.ResourceTransformer
    • modifyOutputStream

      public void modifyOutputStream(JarOutputStream jos) throws IOException
      Specified by:
      modifyOutputStream in interface org.apache.maven.plugins.shade.resource.ResourceTransformer
      Throws:
      IOException