reducing code duplication
This commit is contained in:
parent
76334822b3
commit
439ec69481
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -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.");
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue