public class EncodingConvertFilter extends FilterAdapter
| Modifier and Type | Field and Description |
|---|---|
static String |
ATTR_CHARSET_CONVERTER |
static String |
ATTR_CHARSET_PARAMETER |
| Constructor and Description |
|---|
EncodingConvertFilter() |
callableStatement_getArray, callableStatement_getArray, callableStatement_getBigDecimal, callableStatement_getBigDecimal, callableStatement_getBigDecimal, callableStatement_getBlob, callableStatement_getBlob, callableStatement_getBoolean, callableStatement_getBoolean, callableStatement_getByte, callableStatement_getByte, callableStatement_getBytes, callableStatement_getBytes, callableStatement_getCharacterStream, callableStatement_getCharacterStream, callableStatement_getClob, callableStatement_getClob, callableStatement_getDate, callableStatement_getDate, callableStatement_getDate, callableStatement_getDate, callableStatement_getDouble, callableStatement_getDouble, callableStatement_getFloat, callableStatement_getFloat, callableStatement_getInt, callableStatement_getInt, callableStatement_getLong, callableStatement_getLong, callableStatement_getNCharacterStream, callableStatement_getNCharacterStream, callableStatement_getNClob, callableStatement_getNClob, callableStatement_getNString, callableStatement_getNString, callableStatement_getRef, callableStatement_getRef, callableStatement_getRowId, callableStatement_getRowId, callableStatement_getShort, callableStatement_getShort, callableStatement_getSQLXML, callableStatement_getSQLXML, callableStatement_getTime, callableStatement_getTime, callableStatement_getTime, callableStatement_getTime, callableStatement_getTimestamp, callableStatement_getTimestamp, callableStatement_getTimestamp, callableStatement_getTimestamp, callableStatement_getURL, callableStatement_getURL, callableStatement_registerOutParameter, callableStatement_registerOutParameter, callableStatement_registerOutParameter, callableStatement_registerOutParameter, callableStatement_registerOutParameter, callableStatement_registerOutParameter, callableStatement_setAsciiStream, callableStatement_setAsciiStream, callableStatement_setAsciiStream, callableStatement_setBigDecimal, callableStatement_setBinaryStream, callableStatement_setBinaryStream, callableStatement_setBinaryStream, callableStatement_setBlob, callableStatement_setBlob, callableStatement_setBlob, callableStatement_setBoolean, callableStatement_setByte, callableStatement_setBytes, callableStatement_setClob, callableStatement_setClob, callableStatement_setClob, callableStatement_setDate, callableStatement_setDate, callableStatement_setDouble, callableStatement_setFloat, callableStatement_setInt, callableStatement_setLong, callableStatement_setNCharacterStream, callableStatement_setNCharacterStream, callableStatement_setNClob, callableStatement_setNClob, callableStatement_setNClob, callableStatement_setNString, callableStatement_setNull, callableStatement_setNull, callableStatement_setRowId, callableStatement_setShort, callableStatement_setSQLXML, callableStatement_setTime, callableStatement_setTime, callableStatement_setTimestamp, callableStatement_setTimestamp, callableStatement_setURL, callableStatement_wasNull, clob_free, clob_getAsciiStream, clob_length, clob_position, clob_setAsciiStream, clob_setCharacterStream, clob_truncate, configFromProperties, connection_abort, connection_clearWarnings, connection_close, connection_commit, connection_createArrayOf, connection_createBlob, connection_createClob, connection_createNClob, connection_createSQLXML, connection_createStatement, connection_createStatement, connection_createStatement, connection_createStruct, connection_getAutoCommit, connection_getCatalog, connection_getClientInfo, connection_getClientInfo, connection_getHoldability, connection_getMetaData, connection_getNetworkTimeout, connection_getSchema, connection_getTransactionIsolation, connection_getTypeMap, connection_getWarnings, connection_isClosed, connection_isReadOnly, connection_isValid, connection_releaseSavepoint, connection_rollback, connection_rollback, connection_setAutoCommit, connection_setCatalog, connection_setClientInfo, connection_setClientInfo, connection_setHoldability, connection_setNetworkTimeout, connection_setReadOnly, connection_setSavepoint, connection_setSavepoint, connection_setSchema, connection_setTransactionIsolation, connection_setTypeMap, dataSource_getConnection, dataSource_releaseConnection, destroy, init, isWrapperFor, isWrapperFor, preparedStatement_addBatch, preparedStatement_clearParameters, preparedStatement_execute, preparedStatement_executeQuery, preparedStatement_executeUpdate, preparedStatement_getMetaData, preparedStatement_getParameterMetaData, preparedStatement_setArray, preparedStatement_setAsciiStream, preparedStatement_setAsciiStream, preparedStatement_setAsciiStream, preparedStatement_setBigDecimal, preparedStatement_setBinaryStream, preparedStatement_setBinaryStream, preparedStatement_setBinaryStream, preparedStatement_setBlob, preparedStatement_setBlob, preparedStatement_setBlob, preparedStatement_setBoolean, preparedStatement_setByte, preparedStatement_setBytes, preparedStatement_setClob, preparedStatement_setClob, preparedStatement_setClob, preparedStatement_setDate, preparedStatement_setDate, preparedStatement_setDouble, preparedStatement_setFloat, preparedStatement_setInt, preparedStatement_setLong, preparedStatement_setNCharacterStream, preparedStatement_setNCharacterStream, preparedStatement_setNClob, preparedStatement_setNClob, preparedStatement_setNClob, preparedStatement_setNString, preparedStatement_setNull, preparedStatement_setNull, preparedStatement_setRef, preparedStatement_setRowId, preparedStatement_setShort, preparedStatement_setSQLXML, preparedStatement_setTime, preparedStatement_setTime, preparedStatement_setTimestamp, preparedStatement_setTimestamp, preparedStatement_setUnicodeStream, preparedStatement_setURL, resultSet_absolute, resultSet_afterLast, resultSet_beforeFirst, resultSet_cancelRowUpdates, resultSet_clearWarnings, resultSet_close, resultSet_deleteRow, resultSet_findColumn, resultSet_first, resultSet_getArray, resultSet_getArray, resultSet_getAsciiStream, resultSet_getAsciiStream, resultSet_getBigDecimal, resultSet_getBigDecimal, resultSet_getBigDecimal, resultSet_getBigDecimal, resultSet_getBinaryStream, resultSet_getBinaryStream, resultSet_getBlob, resultSet_getBlob, resultSet_getBoolean, resultSet_getBoolean, resultSet_getByte, resultSet_getByte, resultSet_getBytes, resultSet_getBytes, resultSet_getCharacterStream, resultSet_getCharacterStream, resultSet_getClob, resultSet_getClob, resultSet_getConcurrency, resultSet_getCursorName, resultSet_getDate, resultSet_getDate, resultSet_getDate, resultSet_getDate, resultSet_getDouble, resultSet_getDouble, resultSet_getFetchDirection, resultSet_getFetchSize, resultSet_getFloat, resultSet_getFloat, resultSet_getHoldability, resultSet_getInt, resultSet_getInt, resultSet_getLong, resultSet_getLong, resultSet_getMetaData, resultSet_getNCharacterStream, resultSet_getNCharacterStream, resultSet_getNClob, resultSet_getNClob, resultSet_getNString, resultSet_getNString, resultSet_getRef, resultSet_getRef, resultSet_getRow, resultSet_getRowId, resultSet_getRowId, resultSet_getShort, resultSet_getShort, resultSet_getSQLXML, resultSet_getSQLXML, resultSet_getStatement, resultSet_getTime, resultSet_getTime, resultSet_getTime, resultSet_getTime, resultSet_getTimestamp, resultSet_getTimestamp, resultSet_getTimestamp, resultSet_getTimestamp, resultSet_getType, resultSet_getUnicodeStream, resultSet_getUnicodeStream, resultSet_getURL, resultSet_getURL, resultSet_getWarnings, resultSet_insertRow, resultSet_isAfterLast, resultSet_isBeforeFirst, resultSet_isClosed, resultSet_isFirst, resultSet_isLast, resultSet_last, resultSet_moveToCurrentRow, resultSet_moveToInsertRow, resultSet_next, resultSet_previous, resultSet_refreshRow, resultSet_relative, resultSet_rowDeleted, resultSet_rowInserted, resultSet_rowUpdated, resultSet_setFetchDirection, resultSet_setFetchSize, resultSet_updateArray, resultSet_updateArray, resultSet_updateAsciiStream, resultSet_updateAsciiStream, resultSet_updateAsciiStream, resultSet_updateAsciiStream, resultSet_updateAsciiStream, resultSet_updateAsciiStream, resultSet_updateBigDecimal, resultSet_updateBigDecimal, resultSet_updateBinaryStream, resultSet_updateBinaryStream, resultSet_updateBinaryStream, resultSet_updateBinaryStream, resultSet_updateBinaryStream, resultSet_updateBinaryStream, resultSet_updateBlob, resultSet_updateBlob, resultSet_updateBlob, resultSet_updateBlob, resultSet_updateBlob, resultSet_updateBlob, resultSet_updateBoolean, resultSet_updateBoolean, resultSet_updateByte, resultSet_updateByte, resultSet_updateBytes, resultSet_updateBytes, resultSet_updateCharacterStream, resultSet_updateCharacterStream, resultSet_updateCharacterStream, resultSet_updateCharacterStream, resultSet_updateCharacterStream, resultSet_updateCharacterStream, resultSet_updateClob, resultSet_updateClob, resultSet_updateClob, resultSet_updateClob, resultSet_updateClob, resultSet_updateClob, resultSet_updateDate, resultSet_updateDate, resultSet_updateDouble, resultSet_updateDouble, resultSet_updateFloat, resultSet_updateFloat, resultSet_updateInt, resultSet_updateInt, resultSet_updateLong, resultSet_updateLong, resultSet_updateNCharacterStream, resultSet_updateNCharacterStream, resultSet_updateNCharacterStream, resultSet_updateNCharacterStream, resultSet_updateNClob, resultSet_updateNClob, resultSet_updateNClob, resultSet_updateNClob, resultSet_updateNClob, resultSet_updateNClob, resultSet_updateNString, resultSet_updateNString, resultSet_updateNull, resultSet_updateNull, resultSet_updateObject, resultSet_updateObject, resultSet_updateObject, resultSet_updateObject, resultSet_updateRef, resultSet_updateRef, resultSet_updateRow, resultSet_updateRowId, resultSet_updateRowId, resultSet_updateShort, resultSet_updateShort, resultSet_updateSQLXML, resultSet_updateSQLXML, resultSet_updateString, resultSet_updateString, resultSet_updateTime, resultSet_updateTime, resultSet_updateTimestamp, resultSet_updateTimestamp, resultSet_wasNull, resultSetMetaData_getCatalogName, resultSetMetaData_getColumnClassName, resultSetMetaData_getColumnCount, resultSetMetaData_getColumnDisplaySize, resultSetMetaData_getColumnLabel, resultSetMetaData_getColumnName, resultSetMetaData_getColumnType, resultSetMetaData_getColumnTypeName, resultSetMetaData_getPrecision, resultSetMetaData_getScale, resultSetMetaData_getSchemaName, resultSetMetaData_getTableName, resultSetMetaData_isAutoIncrement, resultSetMetaData_isCaseSensitive, resultSetMetaData_isCurrency, resultSetMetaData_isDefinitelyWritable, resultSetMetaData_isNullable, resultSetMetaData_isReadOnly, resultSetMetaData_isSearchable, resultSetMetaData_isSigned, resultSetMetaData_isWritable, statement_cancel, statement_clearBatch, statement_clearWarnings, statement_close, statement_executeBatch, statement_getConnection, statement_getFetchDirection, statement_getFetchSize, statement_getGeneratedKeys, statement_getMaxFieldSize, statement_getMaxRows, statement_getMoreResults, statement_getMoreResults, statement_getQueryTimeout, statement_getResultSet, statement_getResultSetConcurrency, statement_getResultSetHoldability, statement_getResultSetType, statement_getUpdateCount, statement_getWarnings, statement_isClosed, statement_isPoolable, statement_setCursorName, statement_setEscapeProcessing, statement_setFetchDirection, statement_setFetchSize, statement_setMaxFieldSize, statement_setMaxRows, statement_setPoolable, statement_setQueryTimeout, unwrap, unwrapaddNotificationListener, getNotificationInfo, removeNotificationListener, removeNotificationListener, sendNotificationpublic static final String ATTR_CHARSET_PARAMETER
public static final String ATTR_CHARSET_CONVERTER
public ConnectionProxy connection_connect(FilterChain chain, Properties info) throws SQLException
connection_connect in interface Filterconnection_connect in class FilterAdapterSQLExceptionpublic String resultSet_getString(FilterChain chain, ResultSetProxy result, int columnIndex) throws SQLException
resultSet_getString in interface FilterresultSet_getString in class FilterAdapterSQLExceptionpublic String resultSet_getString(FilterChain chain, ResultSetProxy result, String columnLabel) throws SQLException
resultSet_getString in interface FilterresultSet_getString in class FilterAdapterSQLExceptionpublic Object resultSet_getObject(FilterChain chain, ResultSetProxy result, int columnIndex) throws SQLException
resultSet_getObject in interface FilterresultSet_getObject in class FilterAdapterSQLExceptionpublic Object resultSet_getObject(FilterChain chain, ResultSetProxy result, int columnIndex, Map<String,Class<?>> map) throws SQLException
resultSet_getObject in interface FilterresultSet_getObject in class FilterAdapterSQLExceptionpublic Object resultSet_getObject(FilterChain chain, ResultSetProxy result, String columnLabel) throws SQLException
resultSet_getObject in interface FilterresultSet_getObject in class FilterAdapterSQLExceptionpublic Object resultSet_getObject(FilterChain chain, ResultSetProxy result, String columnLabel, Map<String,Class<?>> map) throws SQLException
resultSet_getObject in interface FilterresultSet_getObject in class FilterAdapterSQLExceptionpublic Object decodeObject(ConnectionProxy connection, Object object) throws SQLException
SQLExceptionpublic Object decodeObject(CallableStatementProxy stmt, Object object) throws SQLException
SQLExceptionpublic String encode(ConnectionProxy connection, String s) throws SQLException
SQLExceptionpublic String decode(ConnectionProxy connection, String s) throws SQLException
SQLExceptionpublic PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql) throws SQLException
connection_prepareStatement in interface Filterconnection_prepareStatement in class FilterAdapterSQLExceptionpublic PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int autoGeneratedKeys) throws SQLException
connection_prepareStatement in interface Filterconnection_prepareStatement in class FilterAdapterSQLExceptionpublic PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency) throws SQLException
connection_prepareStatement in interface Filterconnection_prepareStatement in class FilterAdapterSQLExceptionpublic PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException
connection_prepareStatement in interface Filterconnection_prepareStatement in class FilterAdapterSQLExceptionpublic PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, int[] columnIndexes) throws SQLException
connection_prepareStatement in interface Filterconnection_prepareStatement in class FilterAdapterSQLExceptionpublic PreparedStatementProxy connection_prepareStatement(FilterChain chain, ConnectionProxy connection, String sql, String[] columnNames) throws SQLException
connection_prepareStatement in interface Filterconnection_prepareStatement in class FilterAdapterSQLExceptionpublic CallableStatementProxy connection_prepareCall(FilterChain chain, ConnectionProxy connection, String sql) throws SQLException
connection_prepareCall in interface Filterconnection_prepareCall in class FilterAdapterSQLExceptionpublic CallableStatementProxy connection_prepareCall(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency) throws SQLException
connection_prepareCall in interface Filterconnection_prepareCall in class FilterAdapterSQLExceptionpublic CallableStatementProxy connection_prepareCall(FilterChain chain, ConnectionProxy connection, String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException
connection_prepareCall in interface Filterconnection_prepareCall in class FilterAdapterSQLExceptionpublic String connection_nativeSQL(FilterChain chain, ConnectionProxy connection, String sql) throws SQLException
connection_nativeSQL in interface Filterconnection_nativeSQL in class FilterAdapterSQLExceptionpublic void statement_addBatch(FilterChain chain, StatementProxy statement, String sql) throws SQLException
statement_addBatch in interface Filterstatement_addBatch in class FilterAdapterSQLExceptionpublic boolean statement_execute(FilterChain chain, StatementProxy statement, String sql) throws SQLException
statement_execute in interface Filterstatement_execute in class FilterAdapterSQLExceptionpublic boolean statement_execute(FilterChain chain, StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException
statement_execute in interface Filterstatement_execute in class FilterAdapterSQLExceptionpublic boolean statement_execute(FilterChain chain, StatementProxy statement, String sql, int[] columnIndexes) throws SQLException
statement_execute in interface Filterstatement_execute in class FilterAdapterSQLExceptionpublic boolean statement_execute(FilterChain chain, StatementProxy statement, String sql, String[] columnNames) throws SQLException
statement_execute in interface Filterstatement_execute in class FilterAdapterSQLExceptionpublic ResultSetProxy statement_executeQuery(FilterChain chain, StatementProxy statement, String sql) throws SQLException
statement_executeQuery in interface Filterstatement_executeQuery in class FilterAdapterSQLExceptionpublic int statement_executeUpdate(FilterChain chain, StatementProxy statement, String sql) throws SQLException
statement_executeUpdate in interface Filterstatement_executeUpdate in class FilterAdapterSQLExceptionpublic int statement_executeUpdate(FilterChain chain, StatementProxy statement, String sql, int autoGeneratedKeys) throws SQLException
statement_executeUpdate in interface Filterstatement_executeUpdate in class FilterAdapterSQLExceptionpublic int statement_executeUpdate(FilterChain chain, StatementProxy statement, String sql, int[] columnIndexes) throws SQLException
statement_executeUpdate in interface Filterstatement_executeUpdate in class FilterAdapterSQLExceptionpublic int statement_executeUpdate(FilterChain chain, StatementProxy statement, String sql, String[] columnNames) throws SQLException
statement_executeUpdate in interface Filterstatement_executeUpdate in class FilterAdapterSQLExceptionpublic void preparedStatement_setString(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, String x) throws SQLException
preparedStatement_setString in interface FilterpreparedStatement_setString in class FilterAdapterSQLExceptionpublic void preparedStatement_setCharacterStream(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, Reader reader) throws SQLException
preparedStatement_setCharacterStream in interface FilterpreparedStatement_setCharacterStream in class FilterAdapterSQLExceptionpublic void preparedStatement_setCharacterStream(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, Reader reader, int length) throws SQLException
preparedStatement_setCharacterStream in interface FilterpreparedStatement_setCharacterStream in class FilterAdapterSQLExceptionpublic void preparedStatement_setCharacterStream(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, Reader reader, long length) throws SQLException
preparedStatement_setCharacterStream in interface FilterpreparedStatement_setCharacterStream in class FilterAdapterSQLExceptionpublic void preparedStatement_setObject(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, Object x) throws SQLException
preparedStatement_setObject in interface FilterpreparedStatement_setObject in class FilterAdapterSQLExceptionpublic void preparedStatement_setObject(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, Object x, int targetSqlType) throws SQLException
preparedStatement_setObject in interface FilterpreparedStatement_setObject in class FilterAdapterSQLExceptionpublic void preparedStatement_setObject(FilterChain chain, PreparedStatementProxy statement, int parameterIndex, Object x, int targetSqlType, int scaleOrLength) throws SQLException
preparedStatement_setObject in interface FilterpreparedStatement_setObject in class FilterAdapterSQLExceptionpublic long clob_position(FilterChain chain, ClobProxy wrapper, String searchstr, long start) throws SQLException
clob_position in interface Filterclob_position in class FilterAdapterSQLExceptionpublic String clob_getSubString(FilterChain chain, ClobProxy wrapper, long pos, int length) throws SQLException
clob_getSubString in interface Filterclob_getSubString in class FilterAdapterSQLExceptionpublic Reader clob_getCharacterStream(FilterChain chain, ClobProxy wrapper) throws SQLException
clob_getCharacterStream in interface Filterclob_getCharacterStream in class FilterAdapterSQLExceptionpublic Reader clob_getCharacterStream(FilterChain chain, ClobProxy wrapper, long pos, long length) throws SQLException
clob_getCharacterStream in interface Filterclob_getCharacterStream in class FilterAdapterSQLExceptionpublic int clob_setString(FilterChain chain, ClobProxy wrapper, long pos, String str) throws SQLException
clob_setString in interface Filterclob_setString in class FilterAdapterSQLExceptionpublic int clob_setString(FilterChain chain, ClobProxy wrapper, long pos, String str, int offset, int len) throws SQLException
clob_setString in interface Filterclob_setString in class FilterAdapterSQLExceptionpublic void callableStatement_setCharacterStream(FilterChain chain, CallableStatementProxy statement, String parameterName, Reader reader) throws SQLException
callableStatement_setCharacterStream in interface FiltercallableStatement_setCharacterStream in class FilterAdapterSQLExceptionpublic void callableStatement_setCharacterStream(FilterChain chain, CallableStatementProxy statement, String parameterName, Reader reader, int length) throws SQLException
callableStatement_setCharacterStream in interface FiltercallableStatement_setCharacterStream in class FilterAdapterSQLExceptionpublic void callableStatement_setCharacterStream(FilterChain chain, CallableStatementProxy statement, String parameterName, Reader reader, long length) throws SQLException
callableStatement_setCharacterStream in interface FiltercallableStatement_setCharacterStream in class FilterAdapterSQLExceptionpublic void callableStatement_setString(FilterChain chain, CallableStatementProxy statement, String parameterName, String x) throws SQLException
callableStatement_setString in interface FiltercallableStatement_setString in class FilterAdapterSQLExceptionpublic void callableStatement_setObject(FilterChain chain, CallableStatementProxy statement, String parameterName, Object x) throws SQLException
callableStatement_setObject in interface FiltercallableStatement_setObject in class FilterAdapterSQLExceptionpublic void callableStatement_setObject(FilterChain chain, CallableStatementProxy statement, String parameterName, Object x, int targetSqlType) throws SQLException
callableStatement_setObject in interface FiltercallableStatement_setObject in class FilterAdapterSQLExceptionpublic void callableStatement_setObject(FilterChain chain, CallableStatementProxy statement, String parameterName, Object x, int targetSqlType, int scale) throws SQLException
callableStatement_setObject in interface FiltercallableStatement_setObject in class FilterAdapterSQLExceptionpublic String callableStatement_getString(FilterChain chain, CallableStatementProxy statement, int parameterIndex) throws SQLException
callableStatement_getString in interface FiltercallableStatement_getString in class FilterAdapterSQLExceptionpublic String callableStatement_getString(FilterChain chain, CallableStatementProxy statement, String parameterName) throws SQLException
callableStatement_getString in interface FiltercallableStatement_getString in class FilterAdapterSQLExceptionpublic Object callableStatement_getObject(FilterChain chain, CallableStatementProxy statement, int parameterIndex) throws SQLException
callableStatement_getObject in interface FiltercallableStatement_getObject in class FilterAdapterSQLExceptionpublic Object callableStatement_getObject(FilterChain chain, CallableStatementProxy statement, int parameterIndex, Map<String,Class<?>> map) throws SQLException
callableStatement_getObject in interface FiltercallableStatement_getObject in class FilterAdapterSQLExceptionpublic Object callableStatement_getObject(FilterChain chain, CallableStatementProxy statement, String parameterName) throws SQLException
callableStatement_getObject in interface FiltercallableStatement_getObject in class FilterAdapterSQLExceptionpublic Object callableStatement_getObject(FilterChain chain, CallableStatementProxy statement, String parameterName, Map<String,Class<?>> map) throws SQLException
callableStatement_getObject in interface FiltercallableStatement_getObject in class FilterAdapterSQLExceptionCopyright © 2013–2018 Alibaba Group. All rights reserved.