reducing code duplication

This commit is contained in:
rusefi 2020-07-22 14:22:08 -04:00
parent 76334822b3
commit 439ec69481
3 changed files with 21 additions and 21 deletions

View File

@ -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;
}
}

View File

@ -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.");
}

View File

@ -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;
}
}