Ejemplo n.º 1
0
        public override void SetBytes(int index, IChannelBuffer src, int srcIndex, int length)
        {
            if (src is ByteBufferBackedChannelBuffer)
            {
                ByteBufferBackedChannelBuffer bbsrc = (ByteBufferBackedChannelBuffer)src;
                IByteBuffer data = bbsrc.Buffer.Duplicate();

                data.Slice(srcIndex, length);
                SetBytes(index, data);
            }
            else if (Buffer.HasArray)
            {
                src.GetBytes(srcIndex, Buffer.Array, index + Buffer.ArrayOffset, length);
            }
            else
            {
                src.GetBytes(srcIndex, this, index, length);
            }
        }
Ejemplo n.º 2
0
 public override void SetBytes(int index, IChannelBuffer src, int srcIndex, int length)
 {
     if (src is HeapChannelBuffer buffer)
     {
         SetBytes(index, buffer.Array, srcIndex, length);
     }
     else
     {
         src.GetBytes(srcIndex, _array, index, length);
     }
 }