Class ByteBufferEx

java.lang.Object
host.anzo.commons.io.binary.ByteBufferEx
All Implemented Interfaces:
AutoCloseable

public class ByteBufferEx extends Object implements AutoCloseable
Since:
07.05.2017
  • Constructor Details

    • ByteBufferEx

      public ByteBufferEx(int capacity, ByteOrder byteOrder, boolean isDirect)
      Create ByteBufferEx with specified order and capacity
      Parameters:
      capacity - initial capacity of ByteBufferEx
      byteOrder - byte order of ByteBufferEx
      isDirect - true if buffer must be DirectByteBuffer
    • ByteBufferEx

      public ByteBufferEx(byte @NotNull [] data, ByteOrder byteOrder)
      Wrap a specified byte array to ByteBufferEx
      Parameters:
      data - byte array to wrap
      byteOrder - byte order of created ByteBufferEx
    • ByteBufferEx

      public ByteBufferEx(InputStream inputStream, ByteOrder byteOrder) throws IOException
      Wrap specified InputStream to ByteBufferEx
      Parameters:
      inputStream - InputStream to wrap
      byteOrder - byte order of created ByteBufferEx
      Throws:
      IOException
  • Method Details

    • position

      public int position()
      Returns:
      current cursor position in buffer
    • position

      public Buffer position(int pos)
      Set the current cursor position in byte buffer
      Parameters:
      pos - cursor position
      Returns:
      buffer with changed to specified cursor position
    • limit

      public void limit(int limit)
      Set byte buffer limit
      Parameters:
      limit - limit to set
    • limit

      public int limit()
      Returns:
      current limit of byte buffer
    • remaining

      public int remaining()
      Returns:
      remaining byte count from current cursor position to limit
    • hasRemaining

      public boolean hasRemaining()
      Returns:
      true if buffer has remaining bytes from current cursor position
    • flip

      public void flip()
      Flip byte buffer content
    • capacity

      public int capacity()
      Returns:
      byte buffer capacity
    • compact

      public void compact()
      Compact byte buffer
    • clear

      public void clear()
      Clear byte buffer content
    • skip

      public final void skip(int bytes)
      Skip specified bytes count and set cursor position
      Parameters:
      bytes - bytes count
    • skipAll

      public final void skipAll()
      Skip all remaining data and set cursor to end of buffer
    • readB

      public final void readB(byte[] dst)
      Read bytes to specified byte array
      Parameters:
      dst - array to write
    • readB

      public final byte @NotNull [] readB(int len)
      Read specified bytes count to byte array
      Parameters:
      len - bytes count
      Returns:
      byte array
    • readBuffer

      @NotNull public final @NotNull ByteBufferEx readBuffer(int len)
    • readB

      public final void readB(byte[] dst, int offset, int len)
    • readC

      public final byte readC()
    • readCD

      public final int readCD()
    • readCB

      public final boolean readCB()
    • readCB

      public final boolean readCB(int align)
    • readHD

      public final int readHD()
    • readH

      public final short readH()
    • readH

      public final short readH(int position)
    • readD

      public final int readD()
    • readD

      public final int readD(int position)
    • readDQ

      public final long readDQ()
    • readDQ

      public final long readDQ(int position)
    • readD3

      public final int readD3()
    • readQ

      public final long readQ()
    • readF

      public final float readF()
    • readStringUnicode

      public final String readStringUnicode(int padding)
    • readStringUnicodeNT

      public final String readStringUnicodeNT()
    • readStringUnicodeNT

      public final String readStringUnicodeNT(int size)
    • readString

      @NotNull public final @NotNull String readString(int size)
      Read ANSI string with known size
      Parameters:
      size - string size
      Returns:
      string from buffer with specified size
    • readString

      @NotNull public final @NotNull String readString()
    • readStringNT

      @NotNull public final @NotNull String readStringNT(int size)
      Read null terminated ANSI string
      Parameters:
      size - string size
      Returns:
      string from buffer with specified size
    • readEnum

      public final <T extends Enum<T>> T readEnum(Class<T> enumClass, T defaultValue)
    • write

      public final void write(@NotNull @NotNull Object value, Integer... params)
    • writeC

      public final void writeC(boolean value)
    • writeC

      public final void writeC(int value)
    • writeC

      public final void writeC(Enum<?> value)
    • writeC

      public final void writeC(byte[] byteArray)
    • writeH

      public final void writeH(boolean value)
    • writeH

      public final void writeH(int value)
    • writeH

      public final void writeH(short[] shortArray)
    • writeH

      public final void writeH(int[] intArray)
    • writeD

      public final void writeD(boolean value)
    • writeD

      public final void writeD(int value)
    • writeD

      public final void writeD(int value, int align)
    • writeD

      public final void writeD(long value)
    • writeD

      public final void writeD(int[] intArray)
    • writeQ

      public final void writeQ(boolean value)
    • writeQ

      public final void writeQ(long value)
    • writeQ

      public final void writeQ(long[] longArray)
    • writeF

      public final void writeF(float value)
    • writeF

      public final void writeF(float[] floatArray)
    • writeF

      public final void writeF(double value)
    • writeF

      public final void writeF(int value)
    • writeArray

      public final void writeArray(Object[] objectArray)
    • writeB

      public final void writeB(byte[] data)
    • writeB

      public final void writeB(int size)
    • writeD3

      public final void writeD3(int value)
      Write specified value to buffer as 24bit integer
      Parameters:
      value - value to write
    • writeString

      public final void writeString(CharSequence charSequence, int size)
    • writeString

      public final void writeString(CharSequence charSequence)
    • writeStringUnicodeNT

      public final void writeStringUnicodeNT(CharSequence charSequence)
    • writeStringUnicode

      public final void writeStringUnicode(CharSequence charSequence, int size)
    • getPosition

      public int getPosition()
    • toByteArray

      public byte[] toByteArray()
    • writeToFile

      public boolean writeToFile(Path path)
    • checkAccess

      public boolean checkAccess()
      Returns:
      true if buffer can be accessed now
    • checkDestroy

      public void checkDestroy()
      Check if buffer must be destroyed
    • tryDestroy

      public void tryDestroy()
      Set buffer must be destroyed after current operation completed
    • close

      public void close() throws Exception
      Specified by:
      close in interface AutoCloseable
      Throws:
      Exception