Class BufferUtils


  • public class BufferUtils
    extends java.lang.Object
    Author:
    Alexey Stashok
    • Constructor Summary

      Constructors 
      Constructor Description
      BufferUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void get​(java.nio.ByteBuffer srcBuffer, byte[] dstBytes, int dstOffset, int length)  
      static void put​(byte[] srcBytes, int srcOffset, int length, java.nio.ByteBuffer dstBuffer)  
      static void put​(java.nio.ByteBuffer srcBuffer, int srcOffset, int length, java.nio.ByteBuffer dstBuffer)  
      static void setPositionLimit​(Buffer buffer, int position, int limit)  
      static void setPositionLimit​(java.nio.ByteBuffer buffer, int position, int limit)  
      static java.nio.ByteBuffer slice​(java.nio.ByteBuffer chunk, int size)
      Slice ByteBuffer of required size from big chunk.
      static java.nio.ByteBuffer slice​(java.nio.ByteBuffer byteBuffer, int position, int limit)
      Get the ByteBuffer's slice basing on its passed position and limit.
      static java.lang.String toStringContent​(java.nio.ByteBuffer byteBuffer, java.nio.charset.Charset charset, int position, int limit)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • EMPTY_BYTE_BUFFER

        public static final java.nio.ByteBuffer EMPTY_BYTE_BUFFER
      • EMPTY_BYTE_BUFFER_ARRAY

        public static final java.nio.ByteBuffer[] EMPTY_BYTE_BUFFER_ARRAY
    • Constructor Detail

      • BufferUtils

        public BufferUtils()
    • Method Detail

      • slice

        public static java.nio.ByteBuffer slice​(java.nio.ByteBuffer chunk,
                                                int size)
        Slice ByteBuffer of required size from big chunk. Passed chunk position will be changed, after the slicing (chunk.position += size).
        Parameters:
        chunk - big ByteBuffer pool.
        size - required slice size.
        Returns:
        sliced ByteBuffer of required size.
      • slice

        public static java.nio.ByteBuffer slice​(java.nio.ByteBuffer byteBuffer,
                                                int position,
                                                int limit)
        Get the ByteBuffer's slice basing on its passed position and limit. Position and limit values of the passed ByteBuffer won't be changed. The result ByteBuffer position will be equal to 0, and limit equal to number of sliced bytes (limit - position).
        Parameters:
        byteBuffer - ByteBuffer to slice/
        position - the position in the passed byteBuffer, the slice will start from.
        limit - the limit in the passed byteBuffer, the slice will be ended.
        Returns:
        sliced ByteBuffer of required size.
      • toStringContent

        public static java.lang.String toStringContent​(java.nio.ByteBuffer byteBuffer,
                                                       java.nio.charset.Charset charset,
                                                       int position,
                                                       int limit)
      • setPositionLimit

        public static void setPositionLimit​(java.nio.ByteBuffer buffer,
                                            int position,
                                            int limit)
      • setPositionLimit

        public static void setPositionLimit​(Buffer buffer,
                                            int position,
                                            int limit)
      • put

        public static void put​(java.nio.ByteBuffer srcBuffer,
                               int srcOffset,
                               int length,
                               java.nio.ByteBuffer dstBuffer)
      • get

        public static void get​(java.nio.ByteBuffer srcBuffer,
                               byte[] dstBytes,
                               int dstOffset,
                               int length)
      • put

        public static void put​(byte[] srcBytes,
                               int srcOffset,
                               int length,
                               java.nio.ByteBuffer dstBuffer)