Class MemContentBuffer

java.lang.Object
xyz.cofe.cbuffer.MemContentBuffer
All Implemented Interfaces:
ContentBuffer

public class MemContentBuffer
extends java.lang.Object
implements ContentBuffer
Буфер в памяти
Author:
Kamnev Georgiy (nt.gocha@gmail.com)
  • Field Details

  • Constructor Details

  • Method Details

    • getSize

      public long getSize()
      Description copied from interface: ContentBuffer
      Возвращает размер буфера в байтах
      Specified by:
      getSize in interface ContentBuffer
      Returns:
      кол-во байт в буфере
    • setSize

      public void setSize​(long size)
      Description copied from interface: ContentBuffer
      Устанавливает размер буфера
      Specified by:
      setSize in interface ContentBuffer
      Parameters:
      size - кол-во байт в буфере
    • set

      public void set​(long offset, byte[] data, int dataOffset, int dataLen)
      Description copied from interface: ContentBuffer
      Установить байты в массиве.

      По возможности, массив должен быть расширен до необходимого размера, инче должно быть сгененировано исключение

      Specified by:
      set in interface ContentBuffer
      Parameters:
      offset - смещение в буфере от нуля
      data - массив байтов
      dataOffset - смещение в массиве байтов
      dataLen - кол-во добавляемых байтов из массива
    • get

      public byte[] get​(long offset, int dataLen)
      Description copied from interface: ContentBuffer
      Получение байтов.

      Если данные в заданном диапазоне отсуствуют - то должыен быть ввозвращает пустой массив.
      Если данные присуствуют в ограниченном размере - то данные, то возвращается массив длинной имеющимся данным.

      Specified by:
      get in interface ContentBuffer
      Parameters:
      offset - смещение (от нуля)
      dataLen - кол-во байтов
      Returns:
      байты
    • clear

      public void clear()
      Description copied from interface: ContentBuffer
      Очистка буфера, устанавливает размер в ноль
      Specified by:
      clear in interface ContentBuffer
    • clone

      public ContentBuffer clone()
      Overrides:
      clone in class java.lang.Object
    • flush

      public void flush()
      Description copied from interface: ContentBuffer
      Запись содержимого на диск/память
      Specified by:
      flush in interface ContentBuffer
    • close

      public void close()
      Description copied from interface: ContentBuffer
      Закрытие буфера
      Specified by:
      close in interface ContentBuffer
    • hasListener

      public boolean hasListener​(ContentBufferListener listener)
    • getListeners

      public java.util.Set<ContentBufferListener> getListeners()
    • addListener

      public java.lang.AutoCloseable addListener​(ContentBufferListener listener)
    • addListener

      public java.lang.AutoCloseable addListener​(ContentBufferListener listener, boolean weakLink)
    • removeListener

      public void removeListener​(ContentBufferListener listener)
    • fireEvent

      public void fireEvent​(ContentBufferEvent event)