refqueue) {
return new WeakReference<>(file, refqueue);
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/events/AbstractFileChangeEvent.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/events/AbstractFileChangeEvent.java
index ef7a4398e9..15d3c8a1b3 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/events/AbstractFileChangeEvent.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/events/AbstractFileChangeEvent.java
@@ -26,7 +26,7 @@
public abstract class AbstractFileChangeEvent extends FileChangeEvent {
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*
* @param fileObject the file object.
*/
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileMonitor.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileMonitor.java
index 48c07ae524..d058d2a259 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileMonitor.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileMonitor.java
@@ -79,8 +79,6 @@
// TODO Add a Builder so we can construct and start.
public class DefaultFileMonitor implements Runnable, FileMonitor, AutoCloseable {
- private static final ThreadFactory THREAD_FACTORY = new BasicThreadFactory.Builder().daemon(true).priority(Thread.MIN_PRIORITY).build();
-
/**
* File monitor agent.
*/
@@ -266,6 +264,8 @@ private void resetChildrenList() {
}
+ private static final ThreadFactory THREAD_FACTORY = new BasicThreadFactory.Builder().daemon(true).priority(Thread.MIN_PRIORITY).build();
+
private static final Log LOG = LogFactory.getLog(DefaultFileMonitor.class);
private static final Duration DEFAULT_DELAY = Duration.ofSeconds(1);
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemConfigBuilder.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemConfigBuilder.java
index c3374ac7ca..5bd16c19c8 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemConfigBuilder.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemConfigBuilder.java
@@ -25,6 +25,7 @@
* Default options usable for all file systems.
*/
public class DefaultFileSystemConfigBuilder extends FileSystemConfigBuilder {
+
/**
* Dummy class that implements FileSystem.
*/
@@ -43,6 +44,13 @@ public static DefaultFileSystemConfigBuilder getInstance() {
return BUILDER;
}
+ /**
+ * Constructs a new instance.
+ */
+ public DefaultFileSystemConfigBuilder() {
+ // empty
+ }
+
@Override
protected Class extends FileSystem> getConfigClass() {
return DefaultFileSystem.class;
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemManager.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemManager.java
index fa298145f4..633d927559 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemManager.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultFileSystemManager.java
@@ -174,6 +174,13 @@ public URLStreamHandler createURLStreamHandler(final String protocol) {
*/
private boolean init;
+ /**
+ * Constructs a new instance.
+ */
+ public DefaultFileSystemManager() {
+ // empty
+ }
+
/**
* Closes the given file system.
*
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultProviderConfiguration.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultProviderConfiguration.java
index 810ad137e2..cc82aff56b 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultProviderConfiguration.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/DefaultProviderConfiguration.java
@@ -20,6 +20,14 @@
* Same as {@link ProviderConfiguration} but for the default provider.
*/
public class DefaultProviderConfiguration extends ProviderConfiguration {
+
+ /**
+ * Constructs a new instance.
+ */
+ public DefaultProviderConfiguration() {
+ // empty
+ }
+
@Override
public boolean isDefault() {
return true;
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/FileContentInfoFilenameFactory.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/FileContentInfoFilenameFactory.java
index fb674be47c..b943516b27 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/FileContentInfoFilenameFactory.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/FileContentInfoFilenameFactory.java
@@ -32,6 +32,13 @@ public class FileContentInfoFilenameFactory implements FileContentInfoFactory {
private static final FileContentInfo NULL_INSTANCE = new DefaultFileContentInfo(null, null);
+ /**
+ * Constructs a new instance.
+ */
+ public FileContentInfoFilenameFactory() {
+ // empty
+ }
+
@Override
public FileContentInfo create(final FileContent fileContent) {
String contentType = null;
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/StandardFileSystemManager.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/StandardFileSystemManager.java
index f9fab054e7..d018e3c2a1 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/StandardFileSystemManager.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/StandardFileSystemManager.java
@@ -53,6 +53,13 @@ public class StandardFileSystemManager extends DefaultFileSystemManager {
private URL configUri;
private ClassLoader classLoader;
+ /**
+ * Constructs a new instance.
+ */
+ public StandardFileSystemManager() {
+ // empty
+ }
+
/**
* Adds an extension map.
*
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/VirtualFileProvider.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/VirtualFileProvider.java
index 9687d48652..1a3e3300e8 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/VirtualFileProvider.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/impl/VirtualFileProvider.java
@@ -30,6 +30,13 @@
*/
public class VirtualFileProvider extends AbstractVfsContainer {
+ /**
+ * Constructs a new instance.
+ */
+ public VirtualFileProvider() {
+ // empty
+ }
+
/**
* Close a VirtualFileSystem by removing it from the {@code #components} list of this provider.
*
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperation.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperation.java
index 1b6649d9ea..edabf00dce 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperation.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperation.java
@@ -30,6 +30,8 @@ public abstract class AbstractFileOperation implements FileOperation {
private final FileObject fileObject;
/**
+ * Constructs a new instance for subclasses.
+ *
* @param file The FileObject.
*/
public AbstractFileOperation(final FileObject file) {
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperationProvider.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperationProvider.java
index 26258c8a2c..4cbdb0b3f6 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperationProvider.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/operations/AbstractFileOperationProvider.java
@@ -35,6 +35,13 @@ public abstract class AbstractFileOperationProvider implements FileOperationProv
*/
private final Collection> operations = new ArrayList<>();
+ /**
+ * Constructs a new instance for subclasses.
+ */
+ public AbstractFileOperationProvider() {
+ // empty
+ }
+
/**
* Add new FileOperation to list of known operations.
*
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileName.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileName.java
index 1975a46c0b..52e8a5c439 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileName.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileName.java
@@ -92,7 +92,7 @@ public static boolean checkName(final String basePath, final String path, final
private String key;
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*
* @param scheme The scheme.
* @param absolutePath the absolute path, maybe empty or null.
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileNameParser.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileNameParser.java
index 115ec51958..872f1b596f 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileNameParser.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileNameParser.java
@@ -21,6 +21,13 @@
*/
public abstract class AbstractFileNameParser implements FileNameParser {
+ /**
+ * Constructs a new instance for subclasses.
+ */
+ public AbstractFileNameParser() {
+ // empty
+ }
+
@Override
public boolean encodeCharacter(final char ch) {
return ch == '%';
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java
index a8da6c0430..6f65e63f62 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java
@@ -137,7 +137,7 @@ private static void traverse(final DefaultFileSelectorInfo fileInfo, final FileS
private FileOperations operations;
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*
* @param fileName the file name.
* @param fileSystem the file system.
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileProvider.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileProvider.java
index b1e1553b47..652701f3da 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileProvider.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileProvider.java
@@ -46,7 +46,7 @@ public abstract class AbstractFileProvider extends AbstractVfsContainer implemen
private FileNameParser fileNameParser;
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*/
public AbstractFileProvider() {
fileNameParser = GenericFileNameParser.getInstance();
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileSystem.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileSystem.java
index bd9ba7e482..66069b9d2d 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileSystem.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractFileSystem.java
@@ -97,7 +97,9 @@ public abstract class AbstractFileSystem extends AbstractVfsComponent implements
*/
private final AtomicInteger openStreams = new AtomicInteger();
- /** Only provided for Serializable subclasses. */
+ /**
+ * Only provided for Serializable subclasses.
+ */
AbstractFileSystem() {
this(null, null, null);
}
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractLayeredFileProvider.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractLayeredFileProvider.java
index 43beb7ef14..49d6dd639c 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractLayeredFileProvider.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractLayeredFileProvider.java
@@ -28,7 +28,7 @@
public abstract class AbstractLayeredFileProvider extends AbstractFileProvider {
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*/
public AbstractLayeredFileProvider() {
setFileNameParser(LayeredFileNameParser.getInstance());
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractOriginatingFileProvider.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractOriginatingFileProvider.java
index d6c0321180..78a7c6beda 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractOriginatingFileProvider.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractOriginatingFileProvider.java
@@ -29,7 +29,7 @@
public abstract class AbstractOriginatingFileProvider extends AbstractFileProvider {
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*/
public AbstractOriginatingFileProvider() {
}
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessContent.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessContent.java
index 645fe9a811..8fb92c1919 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessContent.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessContent.java
@@ -32,7 +32,7 @@
public abstract class AbstractRandomAccessContent implements RandomAccessContent {
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*
* @param mode the RandomAccessMode.
*/
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessStreamContent.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessStreamContent.java
index b32621b6b5..7cdda068c6 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessStreamContent.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractRandomAccessStreamContent.java
@@ -28,7 +28,7 @@
public abstract class AbstractRandomAccessStreamContent extends AbstractRandomAccessContent {
/**
- * Constructs a new instance.
+ * Constructs a new instance for subclasses.
*
* @param mode the RandomAccessMode.
*/
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsComponent.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsComponent.java
index 0b37dbaa90..a5953f4b95 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsComponent.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsComponent.java
@@ -27,6 +27,13 @@ public abstract class AbstractVfsComponent implements VfsComponent {
private VfsComponentContext context;
private Log log;
+ /**
+ * Constructs a new instance for subclasses.
+ */
+ public AbstractVfsComponent() {
+ // empty
+ }
+
/**
* Closes the provider. This implementation does nothing.
*/
diff --git a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsContainer.java b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsContainer.java
index 8f3f1f74b0..cf38d03ef0 100644
--- a/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsContainer.java
+++ b/commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/AbstractVfsContainer.java
@@ -31,6 +31,13 @@ public abstract class AbstractVfsContainer extends AbstractVfsComponent {
*/
private final ArrayList