| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||

public interface INonBlockingConnection
A connection which accesses the underlying channel in a non-blocking manner. 
| Nested Class Summary | 
|---|
| Nested classes/interfaces inherited from interface org.xsocket.connection.IConnection | 
|---|
| IConnection.FlushMode | 
| Field Summary | |
|---|---|
| static int | UNLIMITED | 
| Fields inherited from interface org.xsocket.connection.IConnection | 
|---|
| DEFAULT_AUTOFLUSH, DEFAULT_CONNECTION_TIMEOUT_MILLIS, DEFAULT_FLUSH_MODE, DEFAULT_IDLE_TIMEOUT_MILLIS, INITIAL_DEFAULT_ENCODING, MAX_TIMEOUT_MILLIS, SO_KEEPALIVE, SO_LINGER, SO_RCVBUF, SO_REUSEADDR, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY | 
| Method Summary | |
|---|---|
|  void | activateSecuredMode()ad hoc activation of a secured mode (SSL). | 
|  int | available()get the number of available bytes to read | 
|  void | flush()flush the send buffer. | 
|  String | getEncoding()gets the encoding (used by string related methods like write(String) ...) | 
|  IConnection.FlushMode | getFlushmode()return the flush mode | 
|  IHandler | getHandler()gets the connection handler | 
|  int | getMaxReadBufferThreshold()get the max app read buffer size. | 
|  int | getPendingWriteDataSize()returns the size of the data which have already been written, but not yet transferred to the underlying socket. | 
|  int | getReadBufferVersion()get the version of read buffer. | 
|  Executor | getWorkerpool()return the worker pool which is used to process the call back methods | 
|  int | getWriteTransferRate()gets the send delay time. | 
|  int | indexOf(String str)Returns the index of the first occurrence of the given string. | 
|  int | indexOf(String str,
        String encoding)Returns the index of the first occurrence of the given string. | 
|  boolean | isAutoflush()get autoflush | 
|  boolean | isOpen()return if the data source is open. | 
|  boolean | isReadSuspended()returns true if read is suspended | 
|  boolean | isSecure()returns if the connection is in secured mode | 
|  boolean | isSecuredModeActivateable()returns if secured mode is activateable | 
|  void | markReadPosition()Marks the read position in the connection. | 
|  void | markWritePosition()Marks the write position in the connection. | 
|  ByteBuffer[] | readByteBufferByDelimiter(String delimiter,
                          String encoding)read a ByteBuffer by using a delimiter. | 
|  ByteBuffer[] | readByteBufferByDelimiter(String delimiter,
                          String encoding,
                          int maxLength)read a ByteBuffer by using a delimiter For performance reasons, the ByteBuffer readByteBuffer method is generally preferable to get bytes | 
|  byte[] | readBytesByDelimiter(String delimiter,
                     String encoding)read a byte array by using a delimiter For performance reasons, the ByteBuffer readByteBuffer method is generally preferable to get bytes | 
|  byte[] | readBytesByDelimiter(String delimiter,
                     String encoding,
                     int maxLength)read a byte array by using a delimiter For performance reasons, the ByteBuffer readByteBuffer method is generally preferable to get bytes | 
|  String | readStringByDelimiter(String delimiter,
                      String encoding)read a string by using a delimiter | 
|  String | readStringByDelimiter(String delimiter,
                      String encoding,
                      int maxLength)read a string by using a delimiter | 
|  String | readStringByLength(int length,
                   String encoding)read a string by using a length definition | 
|  void | removeReadMark()remove the read mark | 
|  void | removeWriteMark()remove the write mark | 
|  boolean | resetToReadMark()Resets to the marked read position. | 
|  boolean | resetToWriteMark()Resets to the marked write position. | 
|  void | resumeRead()resume reading data from the underlying subsystem | 
|  void | setAutoflush(boolean autoflush)set autoflush. | 
|  void | setEncoding(String encoding)sets the encoding (used by string related methods like write(String) ...) | 
|  void | setFlushmode(IConnection.FlushMode flushMode)set the flush mode By setting the flush mode with ASYNC (default is SYNC) the data will be transferred to the underlying connection in a asynchronous way. | 
|  void | setHandler(IHandler handler)set the connection handler. | 
|  void | setMaxReadBufferThreshold(int size)set the max app read buffer threshold | 
|  void | setWriteTransferRate(int bytesPerSecond)set the send delay time. | 
|  void | suspendRead()suspend reading data from the underlying subsystem | 
|  long | transferFrom(FileChannel source)transfer the data of the file channel to this data sink | 
|  int | write(String message,
      String encoding)write a message | 
| Methods inherited from interface org.xsocket.connection.IConnection | 
|---|
| getAttachment, getConnectionTimeoutMillis, getId, getIdleTimeoutMillis, getLocalAddress, getLocalPort, getOption, getOptions, getRemainingMillisToConnectionTimeout, getRemainingMillisToIdleTimeout, getRemoteAddress, getRemotePort, setAttachment, setConnectionTimeoutMillis, setIdleTimeoutMillis, setOption | 
| Methods inherited from interface org.xsocket.IDataSource | 
|---|
| read, readByte, readByteBufferByDelimiter, readByteBufferByDelimiter, readByteBufferByLength, readBytesByDelimiter, readBytesByDelimiter, readBytesByLength, readDouble, readInt, readLong, readShort, readStringByDelimiter, readStringByDelimiter, readStringByLength, transferTo | 
| Methods inherited from interface org.xsocket.IDataSink | 
|---|
| transferFrom, transferFrom, write, write, write, write, write, write, write, write, write, write, write, write | 
| Methods inherited from interface java.nio.channels.GatheringByteChannel | 
|---|
| write, write | 
| Methods inherited from interface java.nio.channels.WritableByteChannel | 
|---|
| write | 
| Methods inherited from interface java.nio.channels.ReadableByteChannel | 
|---|
| read | 
| Field Detail | 
|---|
static final int UNLIMITED
| Method Detail | 
|---|
void setHandler(IHandler handler)
                throws IOException
handler - the handler
IOException - If some other I/O error occursIHandler getHandler()
String getEncoding()
void setEncoding(String encoding)
encoding - the encodingvoid setAutoflush(boolean autoflush)
autoflush - true if autoflush should be activatedboolean isAutoflush()
void flush()
           throws ClosedChannelException,
                  IOException,
                  SocketTimeoutException
flush in interface FlushableIOException - If some other I/O error occurs
SocketTimeoutException - If the timeout has been reached
ClosedChannelException - if the underlying channel is closedvoid setFlushmode(IConnection.FlushMode flushMode)
flushMode - FlushMode#ASYNC if flush should be performed asynchronous,
                  FlushMode#SYNC if flush should be perform synchronousIConnection.FlushMode getFlushmode()
boolean isSecuredModeActivateable()
void activateSecuredMode()
                         throws IOException
IOException - If some other I/O error occursboolean isSecure()
int getPendingWriteDataSize()
void suspendRead()
                 throws IOException
IOException - If some other I/O error occursboolean isReadSuspended()
void resumeRead()
                throws IOException
IOException - If some other I/O error occurs
int write(String message,
          String encoding)
          throws IOException,
                 BufferOverflowException
message - the message to writeencoding - the encoding which should be used th encode the chars into byte (e.g. `US-ASCII` or `UTF-8`)
BufferOverflowException - If the no enough space is available
IOException - If some other I/O error occurs
ByteBuffer[] readByteBufferByDelimiter(String delimiter,
                                       String encoding)
                                       throws IOException,
                                              BufferUnderflowException
delimiter - the delimiterencoding - the encoding to use
BufferUnderflowException - If not enough data is available
IOException - If some other I/O error occurs
ByteBuffer[] readByteBufferByDelimiter(String delimiter,
                                       String encoding,
                                       int maxLength)
                                       throws IOException,
                                              BufferUnderflowException,
                                              MaxReadSizeExceededException
delimiter - the delimiterencoding - the encoding of the delimitermaxLength - the max length of bytes that should be read. If the limit is exceeded a MaxReadSizeExceededException will been thrown
BufferUnderflowException - If not enough data is available
MaxReadSizeExceededException - If the max read length has been exceeded and the delimiter hasn’t been found
IOException - If some other I/O error occurs
byte[] readBytesByDelimiter(String delimiter,
                            String encoding)
                            throws IOException,
                                   BufferUnderflowException
delimiter - the delimiterencoding - the encoding to use
BufferUnderflowException - If not enough data is available
IOException - If some other I/O error occurs
byte[] readBytesByDelimiter(String delimiter,
                            String encoding,
                            int maxLength)
                            throws IOException,
                                   BufferUnderflowException,
                                   MaxReadSizeExceededException
delimiter - the delimiterencoding - the encoding to usemaxLength - the max length of bytes that should be read. If the limit is exceeded a MaxReadSizeExceededException will been thrown
BufferUnderflowException - If not enough data is available
MaxReadSizeExceededException - If the max read length has been exceeded and the delimiter hasn’t been found
IOException - If some other I/O error occurs
String readStringByDelimiter(String delimiter,
                             String encoding)
                             throws IOException,
                                    BufferUnderflowException,
                                    UnsupportedEncodingException,
                                    MaxReadSizeExceededException
delimiter - the delimiterencoding - the encoding to use
MaxReadSizeExceededException - If the max read length has been exceeded and the delimiter hasn’t been found
IOException - If some other I/O error occurs
BufferUnderflowException - If not enough data is available
UnsupportedEncodingException - if the given encoding is not supported
String readStringByDelimiter(String delimiter,
                             String encoding,
                             int maxLength)
                             throws IOException,
                                    BufferUnderflowException,
                                    UnsupportedEncodingException,
                                    MaxReadSizeExceededException
delimiter - the delimiterencoding - the encoding to usemaxLength - the max length of bytes that should be read. If the limit is exceeded a MaxReadSizeExceededException will been thrown
BufferUnderflowException - If not enough data is available
MaxReadSizeExceededException - If the max read length has been exceeded and the delimiter hasn’t been found
IOException - If some other I/O error occurs
UnsupportedEncodingException - If the given encoding is not supported
String readStringByLength(int length,
                          String encoding)
                          throws IOException,
                                 BufferUnderflowException,
                                 UnsupportedEncodingException
length - the amount of bytes to read.encoding - the encoding to use
IOException - If some other I/O error occurs
BufferUnderflowException - If not enough data is available
UnsupportedEncodingException - if the given encoding is not supported
IllegalArgumentException, - if the length parameter is negative
long transferFrom(FileChannel source)
                  throws IOException,
                         BufferOverflowException
transferFrom in interface IDataSinksource - the source channel
BufferOverflowException - If the no enough space is available
IOException - If some other I/O error occurs
int indexOf(String str)
            throws IOException
str - any string
IOException - If some other I/O error occurs
int indexOf(String str,
            String encoding)
            throws IOException
str - any stringencoding - the encoding to use
IOException - If some other I/O error occurs
MaxReadSizeExceededException - If the max read length has been exceeded and the delimiter hasn’t been found
void setWriteTransferRate(int bytesPerSecond)
                          throws ClosedChannelException,
                                 IOException
INonBlockingConnection#setFlushmode(org.xsocket.connection.IConnection.FlushMode))
bytesPerSecond - the transfer rate of the outgoing data
ClosedChannelException - If the underlying socket is already closed
IOException - If some other I/O error occurs
int getWriteTransferRate()
                         throws ClosedChannelException,
                                IOException
ClosedChannelException - If the underlying socket is already closed
IOException - If some other I/O error occurs
int available()
              throws IOException
IOException
int getReadBufferVersion()
                         throws IOException
IOException - If some other I/O error occursboolean isOpen()
isOpen in interface ChannelisOpen in interface IConnectionExecutor getWorkerpool()
boolean resetToWriteMark()
boolean resetToReadMark()
void markWritePosition()
void markReadPosition()
void removeReadMark()
void removeWriteMark()
int getMaxReadBufferThreshold()
void setMaxReadBufferThreshold(int size)
maxSize - the max read buffer threshold| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||