public void processResource()

in src/main/java/org/apache/maven/plugins/shade/resource/ServicesResourceTransformer.java [56:83]


    public void processResource(String resource, InputStream is, final List<Relocator> relocators, long time)
            throws IOException {
        resource = resource.substring(SERVICES_PATH.length() + 1);
        for (Relocator relocator : relocators) {
            if (relocator.canRelocateClass(resource)) {
                resource = relocator.relocateClass(resource);
                break;
            }
        }
        resource = SERVICES_PATH + '/' + resource;

        Set<String> out = serviceEntries.computeIfAbsent(resource, k -> new LinkedHashSet<>());

        Scanner scanner = new Scanner(is, StandardCharsets.UTF_8.name());
        while (scanner.hasNextLine()) {
            String relContent = scanner.nextLine();
            for (Relocator relocator : relocators) {
                if (relocator.canRelocateClass(relContent)) {
                    relContent = relocator.applyToSourceContent(relContent);
                }
            }
            out.add(relContent);
        }

        if (time > this.time) {
            this.time = time;
        }
    }