@Override final public int available() throws IOException { checkState(); if (ioctl(m_FD, FIONREAD, im_Available) < 0) { PureJavaSerialPort.this.close(); throw new IOException(); } return im_Available[0]; }
@Override final public int available() throws IOException { if (m_FD < 0) return 0; checkState(); if (ioctl(m_FD, FIONREAD, im_Available) < 0) { PureJavaSerialPort.this.close(); System.out.println(Native.getLastError()); throw new IOException(); } return im_Available[0]; }
@Override final public int available() throws IOException { if (m_FD < 0) return 0; checkState(); if (ioctl(m_FD, FIONREAD, im_Available) < 0) { PureJavaSerialPort.this.close(); System.out.println(Native.getLastError()); throw new IOException(); } return im_Available[0]; }
private void checkReturnCode(int code) { if (code != 0) { String msg = String.format("JTermios call returned %d at %s", code, lineno(1)); log = log && log(1, "%s\n", msg); try { close(); } catch (Exception e) { StackTraceElement st = e.getStackTrace()[0]; String msg2 = String.format("close threw %s at class %s line% d", e.getClass().getName(), st.getClassName(), st.getLineNumber()); log = log && log(1, "%s\n", msg2); } throw new PureJavaIllegalStateException(msg); } }
private void checkReturnCode(int code) { if (code != 0) { String msg = String.format("JTermios call returned %d at %s", code, lineno(1)); log = log && log(1, "%s\n", msg); try { close(); } catch (Exception e) { StackTraceElement st = e.getStackTrace()[0]; String msg2 = String.format("close threw %s at class %s line% d", e.getClass().getName(), st.getClassName(), st.getLineNumber()); log = log && log(1, "%s\n", msg2); } throw new PureJavaIllegalStateException(msg); } }
private void checkReturnCode(int code) { if (code != 0) { String msg = String.format("JTermios call returned %d at %s", code, lineno(1)); log = log && log(1, "%s\n", msg); try { close(); } catch (Exception e) { StackTraceElement st = e.getStackTrace()[0]; String msg2 = String.format("close threw %s at class %s line% d", e.getClass().getName(), st.getClassName(), st.getLineNumber()); log = log && log(1, "%s\n", msg2); } throw new PureJavaIllegalStateException(msg); } }
@Override final public void write(byte[] buffer, int offset, int length) throws IOException { if (buffer == null) throw new IllegalArgumentException(); if (offset < 0 || length < 0 || offset + length > buffer.length) throw new IndexOutOfBoundsException("buffer.lengt " + buffer.length + " offset " + offset + " length " + length); checkState(); while (length > 0) { int n = buffer.length - offset; if (n > im_Buffer.length) n = im_Buffer.length; if (n > length) n = length; if (offset > 0) { System.arraycopy(buffer, offset, im_Buffer, 0, n); n = jtermios.JTermios.write(m_FD, im_Buffer, n); } else n = jtermios.JTermios.write(m_FD, buffer, n); if (n < 0) { PureJavaSerialPort.this.close(); throw new IOException(); } length -= n; offset += n; } m_OutputEmptyNotified = false; }
@Override final public void write(byte[] buffer, int offset, int length) throws IOException { if (buffer == null) throw new IllegalArgumentException(); if (offset < 0 || length < 0 || offset + length > buffer.length) throw new IndexOutOfBoundsException("buffer.lengt " + buffer.length + " offset " + offset + " length " + length); checkState(); while (length > 0) { int n = buffer.length - offset; if (n > im_Buffer.length) n = im_Buffer.length; if (n > length) n = length; if (offset > 0) { System.arraycopy(buffer, offset, im_Buffer, 0, n); n = jtermios.JTermios.write(m_FD, im_Buffer, n); } else n = jtermios.JTermios.write(m_FD, buffer, n); if (n < 0) { PureJavaSerialPort.this.close(); throw new IOException(); } length -= n; offset += n; } m_OutputEmptyNotified = false; }
@Override final public void write(byte[] buffer, int offset, int length) throws IOException { if (buffer == null) throw new IllegalArgumentException(); if (offset < 0 || length < 0 || offset + length > buffer.length) throw new IndexOutOfBoundsException("buffer.lengt " + buffer.length + " offset " + offset + " length " + length); checkState(); while (length > 0) { int n = buffer.length - offset; if (n > im_Buffer.length) n = im_Buffer.length; if (n > length) n = length; if (offset > 0) { System.arraycopy(buffer, offset, im_Buffer, 0, n); n = jtermios.JTermios.write(m_FD, im_Buffer, n); } else n = jtermios.JTermios.write(m_FD, buffer, n); if (n < 0) { PureJavaSerialPort.this.close(); throw new IOException(); } length -= n; offset += n; } m_OutputEmptyNotified = false; }
if (n < 0) { log = log && log(1, "select() or poll() returned %d, errno %d\n", n, errno()); close(); break;
if (n < 0) { log = log && log(1, "select() or poll() returned %d, errno %d\n", n, errno()); close(); break;
if (n < 0) { log = log && log(1, "select() or poll() returned %d, errno %d\n", n, errno()); close(); break;