Class ObjectReader


  • public class ObjectReader
    extends java.lang.Object
    The object reader object is an object used in conjunction with java.nio TCP messages. This object stores the message bytes in a XByteBuffer until a full package has been received. This object uses an XByteBuffer which is an extendable object buffer that also allows for message encoding and decoding.
    • Constructor Summary

      Constructors 
      Constructor Description
      ObjectReader​(int packetSize)  
      ObjectReader​(java.net.Socket socket)
      Creates an ObjectReader for a TCP socket
      ObjectReader​(java.nio.channels.SocketChannel channel)
      Creates an ObjectReader for a TCP NIO socket channel
    • Field Detail

      • lastAccess

        protected long lastAccess
      • accessed

        protected boolean accessed
    • Constructor Detail

      • ObjectReader

        public ObjectReader​(int packetSize)
      • ObjectReader

        public ObjectReader​(java.nio.channels.SocketChannel channel)
        Creates an ObjectReader for a TCP NIO socket channel
        Parameters:
        channel - - the channel to be read.
      • ObjectReader

        public ObjectReader​(java.net.Socket socket)
        Creates an ObjectReader for a TCP socket
        Parameters:
        socket - Socket
    • Method Detail

      • access

        public void access()
      • finish

        public void finish()
      • isAccessed

        public boolean isAccessed()
      • append

        public int append​(java.nio.ByteBuffer data,
                          int len,
                          boolean count)
        Append new bytes to buffer.
        Parameters:
        data - new transfer buffer
        len - length in buffer
        count - whether to return the count
        Returns:
        number of messages that was sent to callback (or -1 if count == false)
        See Also:
        XByteBuffer.countPackages()
      • append

        public int append​(byte[] data,
                          int off,
                          int len,
                          boolean count)
      • bufferSize

        public int bufferSize()
      • hasPackage

        public boolean hasPackage()
      • count

        public int count()
        Returns the number of packages that the reader has read
        Returns:
        int
      • close

        public void close()
      • getLastAccess

        public long getLastAccess()
      • isCancelled

        public boolean isCancelled()
      • setLastAccess

        public void setLastAccess​(long lastAccess)
      • setCancelled

        public void setCancelled​(boolean cancelled)