You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gradle-plugins/gradle-plugin-shadow/src/main/groovy/org/xbib/gradle/plugin/shadow/transformers/DontIncludeResourceTransfor...

38 lines
946 B
Groovy

package org.xbib.gradle.plugin.shadow.transformers
import org.gradle.api.file.FileTreeElement
import org.xbib.gradle.plugin.shadow.zip.ZipOutputStream
/**
* A resource processor that prevents the inclusion of an arbitrary resource into the shaded JAR.
* Modified from org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer
*/
class DontIncludeResourceTransformer implements Transformer {
String resource
@Override
boolean canTransformResource(FileTreeElement element) {
def path = element.relativePath.pathString
if (path.endsWith(resource)) {
return true
}
return false
}
@Override
void transform(TransformerContext context) {
// no op
}
@Override
boolean hasTransformedResource() {
return false
}
@Override
void modifyOutputStream(ZipOutputStream os, boolean preserveFileTimestamps) {
// no op
}
}