This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-net.git


The following commit(s) were added to refs/heads/master by this push:
     new b7039ebd Camel case name
b7039ebd is described below

commit b7039ebd9e7ce05439a321b00d83cf6d315b11c8
Author: Gary Gregory <[email protected]>
AuthorDate: Sat Feb 24 12:53:22 2024 -0500

    Camel case name
    
    Refactor
---
 .../org/apache/commons/net/ftp/DeflateSocket.java  | 212 +--------------------
 .../{DeflateSocket.java => DelegateSocket.java}    |  13 +-
 .../java/org/apache/commons/net/ftp/FTPClient.java |   2 +-
 .../commons/net/ftp/FTPClientDeflateTest.java      |  31 ++-
 4 files changed, 22 insertions(+), 236 deletions(-)

diff --git a/src/main/java/org/apache/commons/net/ftp/DeflateSocket.java 
b/src/main/java/org/apache/commons/net/ftp/DeflateSocket.java
index 62f9cd47..ca7164ca 100644
--- a/src/main/java/org/apache/commons/net/ftp/DeflateSocket.java
+++ b/src/main/java/org/apache/commons/net/ftp/DeflateSocket.java
@@ -20,12 +20,7 @@ package org.apache.commons.net.ftp;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
-import java.net.InetAddress;
 import java.net.Socket;
-import java.net.SocketAddress;
-import java.net.SocketException;
-import java.nio.channels.SocketChannel;
-import java.util.Objects;
 import java.util.zip.DeflaterOutputStream;
 import java.util.zip.InflaterInputStream;
 
@@ -33,46 +28,10 @@ import java.util.zip.InflaterInputStream;
  * Wrapper class for FTP data channel sockets when compressing data in the 
"deflate" compression format. All methods except of {@link #getInputStream()} 
and
  * {@link #getOutputStream()} are calling the delegate methods directly.
  */
-class DeflateSocket extends Socket {
+final class DeflateSocket extends DelegateSocket {
 
-    static Socket wrap(final Socket plain) {
-        return new DeflateSocket(plain);
-    }
-
-    private final Socket delegate;
-
-    private DeflateSocket(final Socket delegate) {
-        this.delegate = Objects.requireNonNull(delegate, "delegate");
-    }
-
-    @Override
-    public void bind(final SocketAddress bindpoint) throws IOException {
-        delegate.bind(bindpoint);
-    }
-
-    @Override
-    public synchronized void close() throws IOException {
-        delegate.close();
-    }
-
-    @Override
-    public void connect(final SocketAddress endpoint) throws IOException {
-        delegate.connect(endpoint);
-    }
-
-    @Override
-    public void connect(final SocketAddress endpoint, final int timeout) 
throws IOException {
-        delegate.connect(endpoint, timeout);
-    }
-
-    @Override
-    public SocketChannel getChannel() {
-        return delegate.getChannel();
-    }
-
-    @Override
-    public InetAddress getInetAddress() {
-        return delegate.getInetAddress();
+    DeflateSocket(final Socket delegate) {
+        super(delegate);
     }
 
     @Override
@@ -80,173 +39,8 @@ class DeflateSocket extends Socket {
         return new InflaterInputStream(delegate.getInputStream());
     }
 
-    @Override
-    public boolean getKeepAlive() throws SocketException {
-        return delegate.getKeepAlive();
-    }
-
-    @Override
-    public InetAddress getLocalAddress() {
-        return delegate.getLocalAddress();
-    }
-
-    @Override
-    public int getLocalPort() {
-        return delegate.getLocalPort();
-    }
-
-    @Override
-    public SocketAddress getLocalSocketAddress() {
-        return delegate.getLocalSocketAddress();
-    }
-
-    @Override
-    public boolean getOOBInline() throws SocketException {
-        return delegate.getOOBInline();
-    }
-
     @Override
     public OutputStream getOutputStream() throws IOException {
         return new DeflaterOutputStream(delegate.getOutputStream());
     }
-
-    @Override
-    public int getPort() {
-        return delegate.getPort();
-    }
-
-    @Override
-    public synchronized int getReceiveBufferSize() throws SocketException {
-        return delegate.getReceiveBufferSize();
-    }
-
-    @Override
-    public SocketAddress getRemoteSocketAddress() {
-        return delegate.getRemoteSocketAddress();
-    }
-
-    @Override
-    public boolean getReuseAddress() throws SocketException {
-        return delegate.getReuseAddress();
-    }
-
-    @Override
-    public synchronized int getSendBufferSize() throws SocketException {
-        return delegate.getSendBufferSize();
-    }
-
-    @Override
-    public int getSoLinger() throws SocketException {
-        return delegate.getSoLinger();
-    }
-
-    @Override
-    public synchronized int getSoTimeout() throws SocketException {
-        return delegate.getSoTimeout();
-    }
-
-    @Override
-    public boolean getTcpNoDelay() throws SocketException {
-        return delegate.getTcpNoDelay();
-    }
-
-    @Override
-    public int getTrafficClass() throws SocketException {
-        return delegate.getTrafficClass();
-    }
-
-    @Override
-    public boolean isBound() {
-        return delegate.isBound();
-    }
-
-    @Override
-    public boolean isClosed() {
-        return delegate.isClosed();
-    }
-
-    @Override
-    public boolean isConnected() {
-        return delegate.isConnected();
-    }
-
-    @Override
-    public boolean isInputShutdown() {
-        return delegate.isInputShutdown();
-    }
-
-    @Override
-    public boolean isOutputShutdown() {
-        return delegate.isOutputShutdown();
-    }
-
-    @Override
-    public void sendUrgentData(final int data) throws IOException {
-        delegate.sendUrgentData(data);
-    }
-
-    @Override
-    public void setKeepAlive(final boolean on) throws SocketException {
-        delegate.setKeepAlive(on);
-    }
-
-    @Override
-    public void setOOBInline(final boolean on) throws SocketException {
-        delegate.setOOBInline(on);
-    }
-
-    @Override
-    public void setPerformancePreferences(final int connectionTime, final int 
latency, final int bandwidth) {
-        delegate.setPerformancePreferences(connectionTime, latency, bandwidth);
-    }
-
-    @Override
-    public synchronized void setReceiveBufferSize(final int size) throws 
SocketException {
-        delegate.setReceiveBufferSize(size);
-    }
-
-    @Override
-    public void setReuseAddress(final boolean on) throws SocketException {
-        delegate.setReuseAddress(on);
-    }
-
-    @Override
-    public synchronized void setSendBufferSize(final int size) throws 
SocketException {
-        delegate.setSendBufferSize(size);
-    }
-
-    @Override
-    public void setSoLinger(final boolean on, final int linger) throws 
SocketException {
-        delegate.setSoLinger(on, linger);
-    }
-
-    @Override
-    public synchronized void setSoTimeout(final int timeout) throws 
SocketException {
-        delegate.setSoTimeout(timeout);
-    }
-
-    @Override
-    public void setTcpNoDelay(final boolean on) throws SocketException {
-        delegate.setTcpNoDelay(on);
-    }
-
-    @Override
-    public void setTrafficClass(final int tc) throws SocketException {
-        delegate.setTrafficClass(tc);
-    }
-
-    @Override
-    public void shutdownInput() throws IOException {
-        delegate.shutdownInput();
-    }
-
-    @Override
-    public void shutdownOutput() throws IOException {
-        delegate.shutdownOutput();
-    }
-
-    @Override
-    public String toString() {
-        return delegate.toString();
-    }
 }
diff --git a/src/main/java/org/apache/commons/net/ftp/DeflateSocket.java 
b/src/main/java/org/apache/commons/net/ftp/DelegateSocket.java
similarity index 93%
copy from src/main/java/org/apache/commons/net/ftp/DeflateSocket.java
copy to src/main/java/org/apache/commons/net/ftp/DelegateSocket.java
index 62f9cd47..94472254 100644
--- a/src/main/java/org/apache/commons/net/ftp/DeflateSocket.java
+++ b/src/main/java/org/apache/commons/net/ftp/DelegateSocket.java
@@ -30,18 +30,13 @@ import java.util.zip.DeflaterOutputStream;
 import java.util.zip.InflaterInputStream;
 
 /**
- * Wrapper class for FTP data channel sockets when compressing data in the 
"deflate" compression format. All methods except of {@link #getInputStream()} 
and
- * {@link #getOutputStream()} are calling the delegate methods directly.
+ * Wrapper class for FTP data channel sockets.
  */
-class DeflateSocket extends Socket {
+abstract class DelegateSocket extends Socket {
 
-    static Socket wrap(final Socket plain) {
-        return new DeflateSocket(plain);
-    }
-
-    private final Socket delegate;
+    protected final Socket delegate;
 
-    private DeflateSocket(final Socket delegate) {
+    DelegateSocket(final Socket delegate) {
         this.delegate = Objects.requireNonNull(delegate, "delegate");
     }
 
diff --git a/src/main/java/org/apache/commons/net/ftp/FTPClient.java 
b/src/main/java/org/apache/commons/net/ftp/FTPClient.java
index 62d33d20..9d192c83 100644
--- a/src/main/java/org/apache/commons/net/ftp/FTPClient.java
+++ b/src/main/java/org/apache/commons/net/ftp/FTPClient.java
@@ -3421,6 +3421,6 @@ public class FTPClient extends FTP implements 
Configurable {
 
     @SuppressWarnings("resource")
     private Socket wrapOnDeflate(final Socket plainSocket) {
-        return fileTransferMode == DEFLATE_TRANSFER_MODE ? 
DeflateSocket.wrap(plainSocket) : plainSocket;
+        return fileTransferMode == DEFLATE_TRANSFER_MODE ? new 
DeflateSocket(plainSocket) : plainSocket;
     }
 }
diff --git a/src/test/java/org/apache/commons/net/ftp/FTPClientDeflateTest.java 
b/src/test/java/org/apache/commons/net/ftp/FTPClientDeflateTest.java
index e5b0031a..d1c7bb2b 100644
--- a/src/test/java/org/apache/commons/net/ftp/FTPClientDeflateTest.java
+++ b/src/test/java/org/apache/commons/net/ftp/FTPClientDeflateTest.java
@@ -17,15 +17,11 @@
 
 package org.apache.commons.net.ftp;
 
-import static java.nio.charset.StandardCharsets.UTF_8;
-import static java.nio.file.Files.readAllBytes;
-import static org.apache.commons.io.FileUtils.deleteDirectory;
-import static org.apache.commons.net.ftp.FTP.DEFLATE_TRANSFER_MODE;
-
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
+import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
@@ -33,6 +29,9 @@ import java.time.Instant;
 import java.util.ArrayList;
 import java.util.List;
 
+import junit.framework.TestCase;
+
+import org.apache.commons.io.FileUtils;
 import org.apache.ftpserver.FtpServer;
 import org.apache.ftpserver.FtpServerFactory;
 import org.apache.ftpserver.ftplet.Authority;
@@ -44,8 +43,6 @@ import 
org.apache.ftpserver.usermanager.PropertiesUserManagerFactory;
 import org.apache.ftpserver.usermanager.impl.BaseUser;
 import org.apache.ftpserver.usermanager.impl.WritePermission;
 
-import junit.framework.TestCase;
-
 public class FTPClientDeflateTest extends TestCase {
 
     private static final class FtpServerAndPort {
@@ -119,12 +116,12 @@ public class FTPClientDeflateTest extends TestCase {
 
     @Override
     protected void setUp() throws IOException {
-        deleteDirectory(new File(DEFAULT_HOME));
+        FileUtils.deleteDirectory(new File(DEFAULT_HOME));
     }
 
     @Override
     protected void tearDown() throws Exception {
-        deleteDirectory(new File(DEFAULT_HOME));
+        FileUtils.deleteDirectory(new File(DEFAULT_HOME));
     }
 
     public void testRetrievingFiles() throws Exception {
@@ -132,21 +129,21 @@ public class FTPClientDeflateTest extends TestCase {
         new File(DEFAULT_HOME).mkdirs();
         final String filename = "test_download.txt";
         final String fileContent = "Created at " + Instant.now();
-        Files.write(Paths.get(DEFAULT_HOME).resolve(filename), 
fileContent.getBytes(UTF_8));
+        Files.write(Paths.get(DEFAULT_HOME).resolve(filename), 
fileContent.getBytes(StandardCharsets.UTF_8));
 
         runWithFTPserver((port, user, password) -> {
             final FTPClient client = new FTPClient();
             try {
                 client.connect("localhost", port);
                 client.login(user, password);
-                assertTrue("Mode Z successfully activated", 
client.setFileTransferMode(DEFLATE_TRANSFER_MODE));
+                assertTrue("Mode Z successfully activated", 
client.setFileTransferMode(FTP.DEFLATE_TRANSFER_MODE));
 
                 final FTPFile[] files = client.listFiles();
                 assertEquals("Only single file in home directory", 1, 
files.length);
 
                 final ByteArrayOutputStream bos = new ByteArrayOutputStream();
                 assertTrue("File successfully transferred", 
client.retrieveFile(files[0].getName(), bos));
-                assertEquals("File content is not corrupted", fileContent, new 
String(bos.toByteArray(), UTF_8));
+                assertEquals("File content is not corrupted", fileContent, new 
String(bos.toByteArray(), StandardCharsets.UTF_8));
             } finally {
                 client.logout();
             }
@@ -160,20 +157,20 @@ public class FTPClientDeflateTest extends TestCase {
             try {
                 client.connect("localhost", port);
                 client.login(user, password);
-                assertTrue("Mode Z successfully activated", 
client.setFileTransferMode(DEFLATE_TRANSFER_MODE));
+                assertTrue("Mode Z successfully activated", 
client.setFileTransferMode(FTP.DEFLATE_TRANSFER_MODE));
 
                 final FTPFile[] filesBeforeUpload = client.listFiles();
                 assertEquals("No files in home directory before upload", 0, 
filesBeforeUpload.length);
 
-                final String filename = "test_upload.txt";
+                final String fileName = "test_upload.txt";
                 final String fileContent = "Created at " + Instant.now();
-                assertTrue("File successfully transferred", 
client.storeFile(filename, new 
ByteArrayInputStream(fileContent.getBytes(UTF_8))));
+                assertTrue("File successfully transferred", 
client.storeFile(fileName, new 
ByteArrayInputStream(fileContent.getBytes(StandardCharsets.UTF_8))));
 
                 final FTPFile[] filesAfterUpload = client.listFiles();
                 assertEquals("Single file in home directory after upload", 1, 
filesAfterUpload.length);
 
-                final Path p = Paths.get(DEFAULT_HOME, filename);
-                assertEquals("File content is not corrupted", fileContent, new 
String(readAllBytes(p), UTF_8));
+                final Path p = Paths.get(DEFAULT_HOME, fileName);
+                assertEquals("File content is not corrupted", fileContent, new 
String(Files.readAllBytes(p), StandardCharsets.UTF_8));
             } finally {
                 client.logout();
             }

Reply via email to