[Concurrent] Add DaemonThreadFactory
Change-Id: Ifdcb7f3e9c0fcb04ff17ae3ef070e13c5eff8357
diff --git a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/CommonThreadFactory.java b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/CommonThreadFactory.java
index f7297e5..e994110 100644
--- a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/CommonThreadFactory.java
+++ b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/CommonThreadFactory.java
@@ -69,7 +69,8 @@
buildNamePrefix(threadBaseName, null), NAME_SUFFIX );
}
- public CommonThreadFactory(final ThreadGroup threadGroup, final @Nullable String threadSubGroupName) {
+ public CommonThreadFactory(final ThreadGroup threadGroup,
+ final @Nullable String threadSubGroupName) {
this(threadGroup,
buildNamePrefix(threadGroup.getName(), threadSubGroupName), NAME_SUFFIX );
}
diff --git a/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/DaemonThreadFactory.java b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/DaemonThreadFactory.java
new file mode 100644
index 0000000..e51a5e4
--- /dev/null
+++ b/jcommons/org.eclipse.statet.jcommons.util/src/org/eclipse/statet/jcommons/concurrent/DaemonThreadFactory.java
@@ -0,0 +1,50 @@
+/*=============================================================================#
+ # Copyright (c) 2020 Stephan Wahlbrink and others.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ #
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ #
+ # Contributors:
+ # Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================*/
+
+package org.eclipse.statet.jcommons.concurrent;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.jcommons.lang.Nullable;
+
+
+@NonNullByDefault
+public class DaemonThreadFactory extends CommonThreadFactory {
+
+
+ public DaemonThreadFactory(final ThreadGroup threadGroup,
+ final String threadNamePrefix, final String threadNameSuffix) {
+ super(threadGroup, threadNamePrefix, threadNameSuffix);
+ }
+
+ public DaemonThreadFactory(final String threadBaseName) {
+ super(threadBaseName);
+ }
+
+ public DaemonThreadFactory(final ThreadGroup threadGroup,
+ final @Nullable String threadSubGroupName) {
+ super(threadGroup, threadSubGroupName);
+ }
+
+ public DaemonThreadFactory(final ThreadGroup threadGroup) {
+ super(threadGroup);
+ }
+
+
+ @Override
+ protected boolean getDaemon() {
+ return true;
+ }
+
+
+}