You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by yu...@apache.org on 2022/04/17 15:02:29 UTC
[rocketmq] branch develop updated: [ISSUE #4167] Replace Charset.forName("UTF-8") with StandardCharsets.UTF_8 (#4024)
This is an automated email from the ASF dual-hosted git repository.
yuzhou pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
The following commit(s) were added to refs/heads/develop by this push:
new d100d3c9a [ISSUE #4167] Replace Charset.forName("UTF-8") with StandardCharsets.UTF_8 (#4024)
d100d3c9a is described below
commit d100d3c9a53cd36f29f7f6b1fe1c7124d7cdfab5
Author: 6U-U9 <53...@users.noreply.github.com>
AuthorDate: Sun Apr 17 23:02:07 2022 +0800
[ISSUE #4167] Replace Charset.forName("UTF-8") with StandardCharsets.UTF_8 (#4024)
* Replace Charset.forName("UTF-8") with StandardCharsets.UTF_8
* Remove the specification of Charset according to SimplePullConsumer
---
.../org/apache/rocketmq/acl/common/AclSigner.java | 3 +-
.../rocketmq/acl/common/SessionCredentials.java | 3 +-
.../queue/TransactionalMessageUtil.java | 3 +-
.../java/org/apache/rocketmq/common/MixAll.java | 3 +-
.../rocketmq/common/message/MessageDecoder.java | 3 +-
docs/cn/RocketMQ_Example.md | 80 +++++++++++-----------
.../example/openmessaging/SimpleProducer.java | 7 +-
.../apache/rocketmq/filter/util/BloomFilter.java | 3 +-
.../remoting/protocol/RemotingSerializable.java | 3 +-
.../remoting/protocol/RocketMQSerializable.java | 3 +-
.../apache/rocketmq/store/BatchPutMessageTest.java | 3 +-
.../apache/rocketmq/store/MultiDispatchTest.java | 3 +-
.../tools/command/message/SendMessageCommand.java | 4 +-
13 files changed, 67 insertions(+), 54 deletions(-)
diff --git a/acl/src/main/java/org/apache/rocketmq/acl/common/AclSigner.java b/acl/src/main/java/org/apache/rocketmq/acl/common/AclSigner.java
index 61e935066..9953cca0f 100644
--- a/acl/src/main/java/org/apache/rocketmq/acl/common/AclSigner.java
+++ b/acl/src/main/java/org/apache/rocketmq/acl/common/AclSigner.java
@@ -17,6 +17,7 @@
package org.apache.rocketmq.acl.common;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Base64;
@@ -25,7 +26,7 @@ import org.apache.rocketmq.logging.InternalLogger;
import org.apache.rocketmq.logging.InternalLoggerFactory;
public class AclSigner {
- public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8");
+ public static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8;
public static final SigningAlgorithm DEFAULT_ALGORITHM = SigningAlgorithm.HmacSHA1;
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.ROCKETMQ_AUTHORIZE_LOGGER_NAME);
private static final int CAL_SIGNATURE_FAILED = 10015;
diff --git a/acl/src/main/java/org/apache/rocketmq/acl/common/SessionCredentials.java b/acl/src/main/java/org/apache/rocketmq/acl/common/SessionCredentials.java
index 33a8a3435..ec0f68a0f 100644
--- a/acl/src/main/java/org/apache/rocketmq/acl/common/SessionCredentials.java
+++ b/acl/src/main/java/org/apache/rocketmq/acl/common/SessionCredentials.java
@@ -19,11 +19,12 @@ package org.apache.rocketmq.acl.common;
import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.Properties;
import org.apache.rocketmq.common.MixAll;
public class SessionCredentials {
- public static final Charset CHARSET = Charset.forName("UTF-8");
+ public static final Charset CHARSET = StandardCharsets.UTF_8;
public static final String ACCESS_KEY = "AccessKey";
public static final String SECRET_KEY = "SecretKey";
public static final String SIGNATURE = "Signature";
diff --git a/broker/src/main/java/org/apache/rocketmq/broker/transaction/queue/TransactionalMessageUtil.java b/broker/src/main/java/org/apache/rocketmq/broker/transaction/queue/TransactionalMessageUtil.java
index e6baf0266..2d6774432 100644
--- a/broker/src/main/java/org/apache/rocketmq/broker/transaction/queue/TransactionalMessageUtil.java
+++ b/broker/src/main/java/org/apache/rocketmq/broker/transaction/queue/TransactionalMessageUtil.java
@@ -20,10 +20,11 @@ import org.apache.rocketmq.common.MixAll;
import org.apache.rocketmq.common.topic.TopicValidator;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
public class TransactionalMessageUtil {
public static final String REMOVETAG = "d";
- public static Charset charset = Charset.forName("utf-8");
+ public static Charset charset = StandardCharsets.UTF_8;
public static String buildOpTopic() {
return TopicValidator.RMQ_SYS_TRANS_OP_HALF_TOPIC;
diff --git a/common/src/main/java/org/apache/rocketmq/common/MixAll.java b/common/src/main/java/org/apache/rocketmq/common/MixAll.java
index c2300d362..5f7817448 100644
--- a/common/src/main/java/org/apache/rocketmq/common/MixAll.java
+++ b/common/src/main/java/org/apache/rocketmq/common/MixAll.java
@@ -32,6 +32,7 @@ import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.URL;
import java.net.URLConnection;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
@@ -213,7 +214,7 @@ public class MixAll {
int len = in.available();
byte[] data = new byte[len];
in.read(data, 0, len);
- return new String(data, "UTF-8");
+ return new String(data, StandardCharsets.UTF_8);
} catch (Exception ignored) {
} finally {
if (null != in) {
diff --git a/common/src/main/java/org/apache/rocketmq/common/message/MessageDecoder.java b/common/src/main/java/org/apache/rocketmq/common/message/MessageDecoder.java
index b127ac6cb..30cee69c2 100644
--- a/common/src/main/java/org/apache/rocketmq/common/message/MessageDecoder.java
+++ b/common/src/main/java/org/apache/rocketmq/common/message/MessageDecoder.java
@@ -23,6 +23,7 @@ import java.net.SocketAddress;
import java.net.UnknownHostException;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -33,7 +34,7 @@ import org.apache.rocketmq.common.sysflag.MessageSysFlag;
public class MessageDecoder {
// public final static int MSG_ID_LENGTH = 8 + 8;
- public final static Charset CHARSET_UTF8 = Charset.forName("UTF-8");
+ public final static Charset CHARSET_UTF8 = StandardCharsets.UTF_8;
public final static int MESSAGE_MAGIC_CODE_POSTION = 4;
public final static int MESSAGE_FLAG_POSTION = 16;
public final static int MESSAGE_PHYSIC_OFFSET_POSTION = 28;
diff --git a/docs/cn/RocketMQ_Example.md b/docs/cn/RocketMQ_Example.md
index 38376b895..1b8ae05cb 100644
--- a/docs/cn/RocketMQ_Example.md
+++ b/docs/cn/RocketMQ_Example.md
@@ -861,50 +861,52 @@ import io.openmessaging.MessagingAccessPoint;
import io.openmessaging.OMS;
import io.openmessaging.producer.Producer;
import io.openmessaging.producer.SendResult;
+
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.concurrent.CountDownLatch;
public class SimpleProducer {
public static void main(String[] args) {
- final MessagingAccessPoint messagingAccessPoint =
- OMS.getMessagingAccessPoint("oms:rocketmq://localhost:9876/default:default");
- final Producer producer = messagingAccessPoint.createProducer();
- messagingAccessPoint.startup();
- System.out.printf("MessagingAccessPoint startup OK%n");
- producer.startup();
- System.out.printf("Producer startup OK%n");
- {
- Message message = producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(Charset.forName("UTF-8")));
- SendResult sendResult = producer.send(message);
- //final Void aVoid = result.get(3000L);
- System.out.printf("Send async message OK, msgId: %s%n", sendResult.messageId());
- }
- final CountDownLatch countDownLatch = new CountDownLatch(1);
- {
- final Future<SendResult> result = producer.sendAsync(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(Charset.forName("UTF-8"))));
- result.addListener(new FutureListener<SendResult>() {
- @Override
- public void operationComplete(Future<SendResult> future) {
- if (future.getThrowable() != null) {
- System.out.printf("Send async message Failed, error: %s%n", future.getThrowable().getMessage());
- } else {
- System.out.printf("Send async message OK, msgId: %s%n", future.get().messageId());
- }
- countDownLatch.countDown();
- }
- });
- }
- {
- producer.sendOneway(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(Charset.forName("UTF-8"))));
- System.out.printf("Send oneway message OK%n");
- }
- try {
- countDownLatch.await();
- Thread.sleep(500); // 等一些时间来发送消息
- } catch (InterruptedException ignore) {
- }
- producer.shutdown();
- }
+ final MessagingAccessPoint messagingAccessPoint =
+ OMS.getMessagingAccessPoint("oms:rocketmq://localhost:9876/default:default");
+ final Producer producer = messagingAccessPoint.createProducer();
+ messagingAccessPoint.startup();
+ System.out.printf("MessagingAccessPoint startup OK%n");
+ producer.startup();
+ System.out.printf("Producer startup OK%n");
+ {
+ Message message = producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(StandardCharsets.UTF_8));
+ SendResult sendResult = producer.send(message);
+ //final Void aVoid = result.get(3000L);
+ System.out.printf("Send async message OK, msgId: %s%n", sendResult.messageId());
+ }
+ final CountDownLatch countDownLatch = new CountDownLatch(1);
+ {
+ final Future<SendResult> result = producer.sendAsync(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(StandardCharsets.UTF_8)));
+ result.addListener(new FutureListener<SendResult>() {
+ @Override
+ public void operationComplete(Future<SendResult> future) {
+ if (future.getThrowable() != null) {
+ System.out.printf("Send async message Failed, error: %s%n", future.getThrowable().getMessage());
+ } else {
+ System.out.printf("Send async message OK, msgId: %s%n", future.get().messageId());
+ }
+ countDownLatch.countDown();
+ }
+ });
+ }
+ {
+ producer.sendOneway(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(StandardCharsets.UTF_8)));
+ System.out.printf("Send oneway message OK%n");
+ }
+ try {
+ countDownLatch.await();
+ Thread.sleep(500); // 等一些时间来发送消息
+ } catch (InterruptedException ignore) {
+ }
+ producer.shutdown();
+ }
}
```
diff --git a/example/src/main/java/org/apache/rocketmq/example/openmessaging/SimpleProducer.java b/example/src/main/java/org/apache/rocketmq/example/openmessaging/SimpleProducer.java
index dbe1d1056..08c00be79 100644
--- a/example/src/main/java/org/apache/rocketmq/example/openmessaging/SimpleProducer.java
+++ b/example/src/main/java/org/apache/rocketmq/example/openmessaging/SimpleProducer.java
@@ -23,7 +23,6 @@ import io.openmessaging.MessagingAccessPoint;
import io.openmessaging.OMS;
import io.openmessaging.producer.Producer;
import io.openmessaging.producer.SendResult;
-import java.nio.charset.Charset;
import java.util.concurrent.CountDownLatch;
public class SimpleProducer {
@@ -40,7 +39,7 @@ public class SimpleProducer {
System.out.printf("Producer startup OK%n");
{
- Message message = producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(Charset.forName("UTF-8")));
+ Message message = producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes());
SendResult sendResult = producer.send(message);
//final Void aVoid = result.get(3000L);
System.out.printf("Send async message OK, msgId: %s%n", sendResult.messageId());
@@ -48,7 +47,7 @@ public class SimpleProducer {
final CountDownLatch countDownLatch = new CountDownLatch(1);
{
- final Future<SendResult> result = producer.sendAsync(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(Charset.forName("UTF-8"))));
+ final Future<SendResult> result = producer.sendAsync(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes()));
result.addListener(new FutureListener<SendResult>() {
@Override
public void operationComplete(Future<SendResult> future) {
@@ -63,7 +62,7 @@ public class SimpleProducer {
}
{
- producer.sendOneway(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes(Charset.forName("UTF-8"))));
+ producer.sendOneway(producer.createBytesMessage("OMS_HELLO_TOPIC", "OMS_HELLO_BODY".getBytes()));
System.out.printf("Send oneway message OK%n");
}
diff --git a/filter/src/main/java/org/apache/rocketmq/filter/util/BloomFilter.java b/filter/src/main/java/org/apache/rocketmq/filter/util/BloomFilter.java
index a1cbd24b0..d909cc2a5 100644
--- a/filter/src/main/java/org/apache/rocketmq/filter/util/BloomFilter.java
+++ b/filter/src/main/java/org/apache/rocketmq/filter/util/BloomFilter.java
@@ -20,13 +20,14 @@ package org.apache.rocketmq.filter.util;
import com.google.common.hash.Hashing;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
/**
* Simple implement of bloom filter.
*/
public class BloomFilter {
- public static final Charset UTF_8 = Charset.forName("UTF-8");
+ public static final Charset UTF_8 = StandardCharsets.UTF_8;
// as error rate, 10/100 = 0.1
private int f = 10;
diff --git a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingSerializable.java b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingSerializable.java
index f80ff14c1..4a32f65ff 100644
--- a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingSerializable.java
+++ b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingSerializable.java
@@ -18,9 +18,10 @@ package org.apache.rocketmq.remoting.protocol;
import com.alibaba.fastjson.JSON;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
public abstract class RemotingSerializable {
- private final static Charset CHARSET_UTF8 = Charset.forName("UTF-8");
+ private final static Charset CHARSET_UTF8 = StandardCharsets.UTF_8;
public static byte[] encode(final Object obj) {
final String json = toJson(obj, false);
diff --git a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RocketMQSerializable.java b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RocketMQSerializable.java
index 7c222bf45..7187f7c12 100644
--- a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RocketMQSerializable.java
+++ b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RocketMQSerializable.java
@@ -18,13 +18,14 @@ package org.apache.rocketmq.remoting.protocol;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import org.apache.rocketmq.remoting.exception.RemotingCommandException;
public class RocketMQSerializable {
- private static final Charset CHARSET_UTF8 = Charset.forName("UTF-8");
+ private static final Charset CHARSET_UTF8 = StandardCharsets.UTF_8;
public static byte[] rocketMQProtocolEncode(RemotingCommand cmd) {
// String remark
diff --git a/store/src/test/java/org/apache/rocketmq/store/BatchPutMessageTest.java b/store/src/test/java/org/apache/rocketmq/store/BatchPutMessageTest.java
index 0d1e2f35b..1a61ff346 100644
--- a/store/src/test/java/org/apache/rocketmq/store/BatchPutMessageTest.java
+++ b/store/src/test/java/org/apache/rocketmq/store/BatchPutMessageTest.java
@@ -33,6 +33,7 @@ import org.junit.Test;
import java.io.File;
import java.net.InetSocketAddress;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -48,7 +49,7 @@ public class BatchPutMessageTest {
public static final char NAME_VALUE_SEPARATOR = 1;
public static final char PROPERTY_SEPARATOR = 2;
- public final static Charset CHARSET_UTF8 = Charset.forName("UTF-8");
+ public final static Charset CHARSET_UTF8 = StandardCharsets.UTF_8;
@Before
public void init() throws Exception {
diff --git a/store/src/test/java/org/apache/rocketmq/store/MultiDispatchTest.java b/store/src/test/java/org/apache/rocketmq/store/MultiDispatchTest.java
index 45e4d0665..ba5f3d098 100644
--- a/store/src/test/java/org/apache/rocketmq/store/MultiDispatchTest.java
+++ b/store/src/test/java/org/apache/rocketmq/store/MultiDispatchTest.java
@@ -20,6 +20,7 @@ package org.apache.rocketmq.store;
import java.io.File;
import java.net.InetSocketAddress;
import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
import org.apache.rocketmq.common.UtilAll;
import org.apache.rocketmq.common.message.MessageConst;
@@ -76,7 +77,7 @@ public class MultiDispatchTest {
when(messageExtBrokerInner.getProperty(MessageConst.PROPERTY_INNER_MULTI_DISPATCH)).thenReturn(
"%LMQ%123,%LMQ%456");
when(messageExtBrokerInner.getTopic()).thenReturn("test");
- when(messageExtBrokerInner.getBody()).thenReturn("aaa".getBytes(Charset.forName("UTF-8")));
+ when(messageExtBrokerInner.getBody()).thenReturn("aaa".getBytes(StandardCharsets.UTF_8));
when(messageExtBrokerInner.getBornHost()).thenReturn(new InetSocketAddress("127.0.0.1", 54270));
when(messageExtBrokerInner.getStoreHost()).thenReturn(new InetSocketAddress("127.0.0.1", 10911));
multiDispatch.wrapMultiDispatch(messageExtBrokerInner);
diff --git a/tools/src/main/java/org/apache/rocketmq/tools/command/message/SendMessageCommand.java b/tools/src/main/java/org/apache/rocketmq/tools/command/message/SendMessageCommand.java
index 9550742e8..836ee192b 100644
--- a/tools/src/main/java/org/apache/rocketmq/tools/command/message/SendMessageCommand.java
+++ b/tools/src/main/java/org/apache/rocketmq/tools/command/message/SendMessageCommand.java
@@ -28,6 +28,8 @@ import org.apache.rocketmq.remoting.RPCHook;
import org.apache.rocketmq.tools.command.SubCommand;
import org.apache.rocketmq.tools.command.SubCommandException;
+import java.nio.charset.StandardCharsets;
+
public class SendMessageCommand implements SubCommand {
private DefaultMQProducer producer;
@@ -112,7 +114,7 @@ public class SendMessageCommand implements SubCommand {
queueId = Integer.parseInt(commandLine.getOptionValue('i').trim());
}
}
- msg = new Message(topic, tag, keys, body.getBytes("utf-8"));
+ msg = new Message(topic, tag, keys, body.getBytes(StandardCharsets.UTF_8));
} catch (Exception e) {
throw new RuntimeException(this.getClass().getSimpleName() + " command failed", e);
}