[ENHANCEMENT] Explicitly close FileInputStream
diff --git a/server/blob/blob-common/src/main/java/org/apache/james/blob/api/Store.java b/server/blob/blob-common/src/main/java/org/apache/james/blob/api/Store.java
index 0c5bf1c..f13f36e 100644
--- a/server/blob/blob-common/src/main/java/org/apache/james/blob/api/Store.java
+++ b/server/blob/blob-common/src/main/java/org/apache/james/blob/api/Store.java
@@ -121,7 +121,10 @@
                     FileBackedOutputStream out = new FileBackedOutputStream(FILE_THRESHOLD);
                     try {
                         long size = in.transferTo(out);
-                        return Mono.just(new DelegateCloseableByteSource(out.asByteSource(), out::reset, size));
+                        return Mono.just(new DelegateCloseableByteSource(out.asByteSource(), () -> {
+                            out.reset();
+                            out.close();
+                        }, size));
                     } catch (Exception e) {
                         out.reset();
                         out.close();
diff --git a/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/AbstractNettyImapRequestLineReader.java b/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/AbstractNettyImapRequestLineReader.java
index 14be6d5..4460167 100644
--- a/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/AbstractNettyImapRequestLineReader.java
+++ b/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/AbstractNettyImapRequestLineReader.java
@@ -18,6 +18,8 @@
  ****************************************************************/
 package org.apache.james.imapserver.netty;
 
+import java.io.Closeable;
+import java.io.IOException;
 import java.nio.charset.StandardCharsets;
 import java.util.function.Supplier;
 
@@ -27,7 +29,7 @@
 import io.netty.buffer.Unpooled;
 import io.netty.channel.Channel;
 
-public abstract class AbstractNettyImapRequestLineReader extends ImapRequestLineReader {
+public abstract class AbstractNettyImapRequestLineReader extends ImapRequestLineReader implements Closeable {
     private static final Supplier<ByteBuf> CONTINUATION_REQUEST = () -> Unpooled.wrappedUnmodifiableBuffer(Unpooled.wrappedBuffer("+ Ok\r\n".getBytes(StandardCharsets.US_ASCII)));
 
     private final Channel channel;
@@ -49,4 +51,8 @@
         }
     }
 
+    @Override
+    public void close() throws IOException {
+
+    }
 }
diff --git a/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/NettyStreamImapRequestLineReader.java b/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/NettyStreamImapRequestLineReader.java
index ee3d533..6ca2cdc 100644
--- a/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/NettyStreamImapRequestLineReader.java
+++ b/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/NettyStreamImapRequestLineReader.java
@@ -55,7 +55,10 @@
 
         @Override
         public void close() {
-            Mono.fromRunnable(Throwing.runnable(() -> file.dispose()))
+            Mono.fromRunnable(Throwing.runnable(() -> {
+                    file.dispose();
+                    reader.close();
+                }))
                 .subscribeOn(Schedulers.boundedElastic())
                 .subscribe();
         }