You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by al...@apache.org on 2021/11/18 14:16:35 UTC
[dubbo] branch 3.0 updated: [3.0] Limit the maximum number of lines for the clear command (#9289)
This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.0 by this push:
new cb34c92 [3.0] Limit the maximum number of lines for the clear command (#9289)
cb34c92 is described below
commit cb34c9257b22a4d21102b582c6bb279220c0831e
Author: 灼华 <43...@users.noreply.github.com>
AuthorDate: Thu Nov 18 22:16:19 2021 +0800
[3.0] Limit the maximum number of lines for the clear command (#9289)
---
.../main/java/org/apache/dubbo/qos/legacy/ChangeTelnetHandler.java | 3 ++-
.../main/java/org/apache/dubbo/qos/legacy/TraceTelnetHandler.java | 6 +++---
.../dubbo/remoting/telnet/support/command/ClearTelnetHandler.java | 3 ++-
.../dubbo/remoting/telnet/support/command/ExitTelnetHandler.java | 2 +-
4 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/ChangeTelnetHandler.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/ChangeTelnetHandler.java
index 2bedf29..dd570a1 100644
--- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/ChangeTelnetHandler.java
+++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/ChangeTelnetHandler.java
@@ -17,6 +17,7 @@
package org.apache.dubbo.qos.legacy;
import org.apache.dubbo.common.extension.Activate;
+import org.apache.dubbo.common.utils.StringUtils;
import org.apache.dubbo.remoting.Channel;
import org.apache.dubbo.remoting.telnet.TelnetHandler;
import org.apache.dubbo.remoting.telnet.support.Help;
@@ -34,7 +35,7 @@ public class ChangeTelnetHandler implements TelnetHandler {
@Override
public String telnet(Channel channel, String message) {
- if (message == null || message.length() == 0) {
+ if (StringUtils.isEmpty(message)) {
return "Please input service name, eg: \r\ncd XxxService\r\ncd com.xxx.XxxService";
}
StringBuilder buf = new StringBuilder();
diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/TraceTelnetHandler.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/TraceTelnetHandler.java
index 526a075..2488da4 100644
--- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/TraceTelnetHandler.java
+++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/TraceTelnetHandler.java
@@ -38,8 +38,8 @@ public class TraceTelnetHandler implements TelnetHandler {
@Override
public String telnet(Channel channel, String message) {
String service = (String) channel.getAttribute(ChangeTelnetHandler.SERVICE_KEY);
- if ((service == null || service.length() == 0)
- && (message == null || message.length() == 0)) {
+ if ((StringUtils.isEmpty(service))
+ && (StringUtils.isEmpty(message))) {
return "Please input service name, eg: \r\ntrace XxxService\r\ntrace XxxService xxxMethod\r\ntrace XxxService xxxMethod 10\r\nor \"cd XxxService\" firstly.";
}
String[] parts = message.split("\\s+");
@@ -71,7 +71,7 @@ public class TraceTelnetHandler implements TelnetHandler {
}
}
if (invoker != null) {
- if (method != null && method.length() > 0) {
+ if (StringUtils.isNotEmpty(method)) {
boolean found = false;
for (Method m : invoker.getInterface().getMethods()) {
if (m.getName().equals(method)) {
diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ClearTelnetHandler.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ClearTelnetHandler.java
index 84b78c1..957d5ea 100644
--- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ClearTelnetHandler.java
+++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ClearTelnetHandler.java
@@ -28,6 +28,7 @@ import org.apache.dubbo.remoting.telnet.support.Help;
@Activate
@Help(parameter = "[lines]", summary = "Clear screen.", detail = "Clear screen.")
public class ClearTelnetHandler implements TelnetHandler {
+ private static final int MAX_LINES = 1000;
@Override
public String telnet(Channel channel, String message) {
@@ -36,7 +37,7 @@ public class ClearTelnetHandler implements TelnetHandler {
if (!StringUtils.isInteger(message)) {
return "Illegal lines " + message + ", must be integer.";
}
- lines = Integer.parseInt(message);
+ lines = Math.min(MAX_LINES,Integer.parseInt(message));
}
StringBuilder buf = new StringBuilder();
for (int i = 0; i < lines; i++) {
diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ExitTelnetHandler.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ExitTelnetHandler.java
index 9f176aa..becf205 100644
--- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ExitTelnetHandler.java
+++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/telnet/support/command/ExitTelnetHandler.java
@@ -25,7 +25,7 @@ import org.apache.dubbo.remoting.telnet.support.Help;
* ExitTelnetHandler
*/
@Activate
-@Help(parameter = "", summary = "Exit the telnet.", detail = "Exit the telnet.")
+@Help(summary = "Exit the telnet.", detail = "Exit the telnet.")
public class ExitTelnetHandler implements TelnetHandler {
@Override