You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2021/12/31 12:41:46 UTC
[karaf] branch karaf-4.3.x updated: [KARAF-7304] Introduce cleanall startup argument
This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch karaf-4.3.x
in repository https://gitbox.apache.org/repos/asf/karaf.git
The following commit(s) were added to refs/heads/karaf-4.3.x by this push:
new 5ffcf94 [KARAF-7304] Introduce cleanall startup argument
5ffcf94 is described below
commit 5ffcf942690b31aa7db59b888d478303083bbd2f
Author: Jean-Baptiste Onofré <jb...@apache.org>
AuthorDate: Fri Dec 31 11:48:44 2021 +0100
[KARAF-7304] Introduce cleanall startup argument
(cherry picked from commit 95f840c3b35732a5271d284502a265f6da57e8ea)
---
main/src/main/java/org/apache/karaf/main/Main.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/main/src/main/java/org/apache/karaf/main/Main.java b/main/src/main/java/org/apache/karaf/main/Main.java
index a5f6bf3..0793861 100644
--- a/main/src/main/java/org/apache/karaf/main/Main.java
+++ b/main/src/main/java/org/apache/karaf/main/Main.java
@@ -235,7 +235,9 @@ public class Main {
}
public void launch() throws Exception {
- if (Arrays.asList(args).contains("clean")) {
+ boolean clean = Arrays.asList(args).contains("clean");
+ boolean cleanall = Arrays.asList(args).contains("cleanall");
+ if (clean || cleanall) {
// clean instance
final Path dataDir = new File(System.getProperty(ConfigProperties.PROP_KARAF_DATA)).toPath();
final Path logDir = new File(System.getProperty(ConfigProperties.PROP_KARAF_LOG)).toPath();
@@ -244,14 +246,14 @@ public class Main {
Files.walkFileTree(dataDir, new SimpleFileVisitor<Path>() {
@Override
public FileVisitResult visitFile(final Path file, final BasicFileAttributes attributes) throws IOException {
- if (!file.startsWith(logDir)) {
+ if (cleanall || (clean && !file.startsWith(logDir))) {
Files.delete(file);
}
return super.visitFile(file, attributes);
}
@Override
public FileVisitResult postVisitDirectory(final Path dir, final IOException exception) throws IOException {
- if (dir.compareTo(logDir) != 0) {
+ if (cleanall || (clean && dir.compareTo(logDir) != 0)) {
Files.delete(dir);
}
return super.postVisitDirectory(dir, exception);