code: @Override
      public void readFields(DataInput in)
              throws IOException {
          // Read the length as a variable int
          int length = WritableUtils.readVInt(in);
          // If necessary increase the buffer capacity
          if (length > _text.capacity()) {
              _text = ByteBuffer.allocate(length);
          }
          // For efficiency read directly into the buffer's array
          in.readFully(_text.array(), 0, length);
          // Since we bypassed putting into the buffer set the position and limit directly
          _text.position(0);
          _text.limit(length);
          // Set the map to null since the contents may have changed.
          _map = null;
      }
docs: Sets this instance's content from the input.