From 439ec694813fd14d35df36193320859a22bf9933 Mon Sep 17 00:00:00 2001 From: rusefi Date: Wed, 22 Jul 2020 14:22:08 -0400 Subject: [PATCH] reducing code duplication --- .../com/rusefi/io/serial/AbstractIoStream.java | 17 +++++++++++++++++ .../io/serial/SerialIoStreamJSerialComm.java | 10 ++-------- .../java/com/rusefi/io/tcp/TcpIoStream.java | 15 ++------------- 3 files changed, 21 insertions(+), 21 deletions(-) create mode 100644 java_console/io/src/main/java/com/rusefi/io/serial/AbstractIoStream.java diff --git a/java_console/io/src/main/java/com/rusefi/io/serial/AbstractIoStream.java b/java_console/io/src/main/java/com/rusefi/io/serial/AbstractIoStream.java new file mode 100644 index 0000000000..b89b0c6dde --- /dev/null +++ b/java_console/io/src/main/java/com/rusefi/io/serial/AbstractIoStream.java @@ -0,0 +1,17 @@ +package com.rusefi.io.serial; + +import com.rusefi.io.IoStream; + +public abstract class AbstractIoStream implements IoStream { + private boolean isClosed; + + @Override + public void close() { + isClosed = true; + } + + @Override + public boolean isClosed() { + return isClosed; + } +} diff --git a/java_console/io/src/main/java/com/rusefi/io/serial/SerialIoStreamJSerialComm.java b/java_console/io/src/main/java/com/rusefi/io/serial/SerialIoStreamJSerialComm.java index 3ea85368c1..76b8e3135a 100644 --- a/java_console/io/src/main/java/com/rusefi/io/serial/SerialIoStreamJSerialComm.java +++ b/java_console/io/src/main/java/com/rusefi/io/serial/SerialIoStreamJSerialComm.java @@ -14,8 +14,7 @@ import com.rusefi.io.IoStream; * Andrey Belomutskiy, (c) 2013-2020 * 06/03/2019 */ -public class SerialIoStreamJSerialComm implements IoStream { - private boolean isClosed; +public class SerialIoStreamJSerialComm extends AbstractIoStream { private SerialPort sp; private final String port; private final Logger logger; @@ -62,11 +61,6 @@ public class SerialIoStreamJSerialComm implements IoStream { } - @Override - public boolean isClosed() { - return isClosed; - } - @Override public IncomingDataBuffer getDataBuffer() { return dataBuffer; @@ -75,7 +69,7 @@ public class SerialIoStreamJSerialComm implements IoStream { @Override public void close() { logger.info(port + ": Closing port..."); - isClosed = true; + super.close(); sp.closePort(); logger.info(port + ": Closed port."); } diff --git a/java_console/io/src/main/java/com/rusefi/io/tcp/TcpIoStream.java b/java_console/io/src/main/java/com/rusefi/io/tcp/TcpIoStream.java index e0d71c23a8..3a81610baa 100644 --- a/java_console/io/src/main/java/com/rusefi/io/tcp/TcpIoStream.java +++ b/java_console/io/src/main/java/com/rusefi/io/tcp/TcpIoStream.java @@ -4,7 +4,7 @@ import com.opensr5.Logger; import com.opensr5.io.DataListener; import com.rusefi.binaryprotocol.IncomingDataBuffer; import com.rusefi.io.ByteReader; -import com.rusefi.io.IoStream; +import com.rusefi.io.serial.AbstractIoStream; import java.io.BufferedInputStream; import java.io.IOException; @@ -16,12 +16,11 @@ import java.net.Socket; * Andrey Belomutskiy, (c) 2013-2020 * 5/11/2015. */ -public class TcpIoStream implements IoStream { +public class TcpIoStream extends AbstractIoStream { private final InputStream input; private final OutputStream output; private final Logger logger; private final String loggingPrefix; - private boolean isClosed; private final IncomingDataBuffer dataBuffer; public TcpIoStream(Logger logger, Socket socket) throws IOException { @@ -52,11 +51,6 @@ public class TcpIoStream implements IoStream { return dataBuffer; } - @Override - public void close() { - isClosed = true; - } - @Override public void write(byte[] bytes) throws IOException { output.write(bytes); @@ -68,9 +62,4 @@ public class TcpIoStream implements IoStream { ByteReader.runReaderLoop(loggingPrefix, listener, input::read, logger); } - - @Override - public boolean isClosed() { - return isClosed; - } }