core/src/main/java/com/orientechnologies/common/serialization/types/OStringSerializer.java
@Override
  public String deserializeFromByteBufferObject(ByteBuffer buffer) {
    int len = buffer.getInt();

    final char[] chars = new char[len];
    final byte[] binaryData = new byte[2 * len];
    buffer.get(binaryData);

    for (int i = 0; i < len; i++)
      chars[i] = (char) ((0xFF & binaryData[i << 1]) | ((0xFF & binaryData[(i << 1) + 1]) << 8));

    return new String(chars);
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public int getObjectSizeInByteBuffer(ByteBuffer buffer) {
    return buffer.getInt() * 2 + OIntegerSerializer.INT_SIZE;
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public String deserializeFromByteBufferObject(ByteBuffer buffer, OWALChanges walChanges, int offset) {
    int len = walChanges.getIntValue(buffer, offset);

    final char[] chars = new char[len];
    offset += OIntegerSerializer.INT_SIZE;

    byte[] binaryData = walChanges.getBinaryValue(buffer, offset, 2 * len);

    for (int i = 0; i < len; i++)
      chars[i] = (char) ((0xFF & binaryData[i << 1]) | ((0xFF & binaryData[(i << 1) + 1]) << 8));

    return new String(chars);
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public int getObjectSizeInByteBuffer(ByteBuffer buffer, OWALChanges walChanges, int offset) {
    return walChanges.getIntValue(buffer, offset) * 2 + OIntegerSerializer.INT_SIZE;
  }
}
@Override
  public String deserializeFromByteBufferObject(ByteBuffer buffer) {
    int len = buffer.getInt();

    final char[] chars = new char[len];
    final byte[] binaryData = new byte[2 * len];
    buffer.get(binaryData);

    for (int i = 0; i < len; i++)
      chars[i] = (char) ((0xFF & binaryData[i << 1]) | ((0xFF & binaryData[(i << 1) + 1]) << 8));

    return new String(chars);
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public int getObjectSizeInByteBuffer(ByteBuffer buffer) {
    return buffer.getInt() * 2 + OIntegerSerializer.INT_SIZE;
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public String deserializeFromByteBufferObject(ByteBuffer buffer, OWALChanges walChanges, int offset) {
    int len = walChanges.getIntValue(buffer, offset);

    final char[] chars = new char[len];
    offset += OIntegerSerializer.INT_SIZE;

    byte[] binaryData = walChanges.getBinaryValue(buffer, offset, 2 * len);

    for (int i = 0; i < len; i++)
      chars[i] = (char) ((0xFF & binaryData[i << 1]) | ((0xFF & binaryData[(i << 1) + 1]) << 8));

    return new String(chars);
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public int getObjectSizeInByteBuffer(ByteBuffer buffer, OWALChanges walChanges, int offset) {
    return walChanges.getIntValue(buffer, offset) * 2 + OIntegerSerializer.INT_SIZE;
  }
}
@ Override public String deserializeFromByteBufferObject ( ByteBuffer buffer ) { int len = buffer . getInt ( ) ; final char [ ] chars = new char [ len ] ; final byte [ ] binaryData = new byte [ 2 * len ] ; buffer . get ( binaryData ) ; for ( int i = 0 ; i < len ; i ++ ) chars [ i ] = ( char ) ( ( 0xFF & binaryData [ i << 1 ] ) | ( ( 0xFF & binaryData [ ( i << 1 ) + 1 ] ) << 8 ) ) ; return new String ( chars ) ; } /**
   * {@inheritDoc}
   */ @ Override public int getObjectSizeInByteBuffer ( ByteBuffer buffer ) { return buffer . getInt ( ) * 2 + OIntegerSerializer . INT_SIZE ; } /**
   * {@inheritDoc}
   */ @ Override public String deserializeFromByteBufferObject ( ByteBuffer buffer , OWALChanges walChanges , int offset ) { int len = walChanges . getIntValue ( buffer , offset ) ; final char [ ] chars = new char [ len ] ; offset += OIntegerSerializer . INT_SIZE ; byte [ ] binaryData = walChanges . getBinaryValue ( buffer , offset , 2 * len ) ; for ( int i = 0 ; i < len ; i ++ ) chars [ i ] = ( char ) ( ( 0xFF & binaryData [ i << 1 ] ) | ( ( 0xFF & binaryData [ ( i << 1 ) + 1 ] ) << 8 ) ) ; return new String ( chars ) ; } /**
   * {@inheritDoc}
   */ @ Override public int getObjectSizeInByteBuffer ( ByteBuffer buffer , OWALChanges walChanges , int offset ) { return walChanges . getIntValue ( buffer , offset ) * 2 + OIntegerSerializer . INT_SIZE ; } }
{@inheritDoc}
{