private void setExecutableIfNeeded()

in arthur-impl/src/main/java/org/apache/geronimo/arthur/impl/nativeimage/archive/Extractor.java [140:155]


    private void setExecutableIfNeeded(final Path target) throws IOException {
        final String parentFilename = target.getParent().getFileName().toString();
        final String filename = target.getFileName().toString();
        if ((parentFilename.equals("bin") && !Files.isExecutable(target)) ||
                (parentFilename.equals("lib") && (
                        filename.contains("exec") || filename.startsWith("j") ||
                                (filename.startsWith("lib") && filename.contains(".so"))))) {
            Files.setPosixFilePermissions(
                    target,
                    Stream.of(
                            OWNER_READ, OWNER_EXECUTE, OWNER_WRITE,
                            GROUP_READ, GROUP_EXECUTE,
                            OTHERS_READ, OTHERS_EXECUTE)
                            .collect(toSet()));
        }
    }