Package org.harctoolbox.harchardware.ir
Class GlobalCache.SerialPort
java.lang.Object
org.harctoolbox.harchardware.ir.GlobalCache.SerialPort
- All Implemented Interfaces:
Closeable
,AutoCloseable
,IBytesCommand
,ICommandLineDevice
,IHarcHardware
- Enclosing class:
- GlobalCache
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
void
Returns the hardware version (not the version of the driver software).boolean
isValid()
Checks validity of an instance.void
open()
Opens the device with previously set parameters.byte[]
readBytes
(int length) Reads a line of text.readString
(boolean wait) Reads a line of text.boolean
ready()
Tells whether this stream is ready to be read.void
sendBytes
(byte[] cmd) void
sendString
(String cmd) Sends a command (a String) to the instance.void
setDebug
(int debug) Sets a debug parameter.void
setTimeout
(int timeout) Set timeout in milliseconds.void
setVerbose
(boolean verbose) Sets a verbosity flag, causing commands to be executed verbosely.
-
Method Details
-
sendString
Description copied from interface:ICommandLineDevice
Sends a command (a String) to the instance.- Specified by:
sendString
in interfaceICommandLineDevice
- Parameters:
cmd
- Command string to be sent.- Throws:
IOException
-
readString
Description copied from interface:ICommandLineDevice
Reads a line of text. A line is considered to be terminated by any one of a line feed ('\n'), a carriage return ('\r'), or a carriage return followed immediately by a linefeed.- Specified by:
readString
in interfaceICommandLineDevice
- Parameters:
wait
- if true, wait until something arrives, otherwise return null if nothing there.- Returns:
- A String containing the contents of the line, not including any line-termination characters, or null if no input available.
- Throws:
IOException
-
readString
Description copied from interface:ICommandLineDevice
Reads a line of text. A line is considered to be terminated by any one of a line feed ('\n'), a carriage return ('\r'), or a carriage return followed immediately by a linefeed.- Specified by:
readString
in interfaceICommandLineDevice
- Returns:
- A String containing the contents of the line, not including any line-termination characters, or null if no input available.
- Throws:
IOException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
sendBytes
- Specified by:
sendBytes
in interfaceIBytesCommand
- Throws:
IOException
-
readBytes
- Specified by:
readBytes
in interfaceIBytesCommand
- Throws:
IOException
-
getVersion
Description copied from interface:IHarcHardware
Returns the hardware version (not the version of the driver software). May be null if no relevant information available.- Specified by:
getVersion
in interfaceIHarcHardware
- Returns:
- Version string. Semantics can vary.
-
setVerbose
public void setVerbose(boolean verbose) Description copied from interface:IHarcHardware
Sets a verbosity flag, causing commands to be executed verbosely. Exact semantic depends on the implementation. Typically, all communication with the device is echoed to stderr.- Specified by:
setVerbose
in interfaceIHarcHardware
- Parameters:
verbose
- on or off
-
setDebug
public void setDebug(int debug) Description copied from interface:IHarcHardware
Sets a debug parameter. Exact semantic depends on the implementation.- Specified by:
setDebug
in interfaceIHarcHardware
-
setTimeout
Description copied from interface:IHarcHardware
Set timeout in milliseconds. Exact semantics may be dependent on the hardware.- Specified by:
setTimeout
in interfaceIHarcHardware
- Parameters:
timeout
- Timeout in milliseconds.- Throws:
SocketException
-
isValid
public boolean isValid()Description copied from interface:IHarcHardware
Checks validity of an instance. Exact meaning can vary.- Specified by:
isValid
in interfaceIHarcHardware
- Returns:
- validity of the instance.
-
open
public void open()Description copied from interface:IHarcHardware
Opens the device with previously set parameters.- Specified by:
open
in interfaceIHarcHardware
-
ready
Description copied from interface:ICommandLineDevice
Tells whether this stream is ready to be read. A buffered character stream is ready if the buffer is not empty, or if the underlying character stream is ready.- Specified by:
ready
in interfaceICommandLineDevice
- Returns:
- True if the next read() is guaranteed not to block for input, false otherwise. Note that returning false does not guarantee that the next read will block.
- Throws:
IOException
- If an I/O error occurs
-
flushInput
- Specified by:
flushInput
in interfaceICommandLineDevice
- Throws:
IOException
-