binzhaomobile created ROCKETMQ-209:
--------------------------------------
Summary: Duplicated code in class MQClientAPIImpl
Key: ROCKETMQ-209
URL: https://issues.apache.org/jira/browse/ROCKETMQ-209
Project: Apache RocketMQ
Issue Type: Improvement
Components: rocketmq-client
Affects Versions: 4.0.0-incubating, 4.1.0-incubating, 4.2.0-incubating,
4.3.0-incubating
Environment: All Environments
Reporter: binzhaomobile
Assignee: Xiaorui Wang
Priority: Minor
In class MQClientAPIImpl, the two functions
getDefaultTopicRouteInfoFromNameServer and getTopicRouteInfoFromNameServer
almost have the same code. The only difference is the way to handle the
situation when topic does not exist. Suggestion to fix this issue:
1) Add a new function: public TopicRouteData
getTopicRouteInfoFromNameServer(final String topic, final long timeoutMillis,
boolean allowTopicNotExist).
2) Move the code from getDefaultTopicRouteInfoFromNameServer and
getTopicRouteInfoFromNameServer into the new function so that it can handle
both case.
3) Change getDefaultTopicRouteInfoFromNameServer and
getTopicRouteInfoFromNameServer to call the new function with
allowTopicNotExist parameter true or false.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)