mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-10-14 14:17:56 +00:00
perf[protocol]:update config
This commit is contained in:
1 parent
cf1d38940a
commit
f1ae593739
18 files changed
+475
-220
No files matched your search
@@ -36,7 +36,7 @@ public class NetConfig {
|
||||
/**
|
||||
* 生成协议列表
|
||||
*/
|
||||
private String protocolList;
|
||||
private String codeLanguages;
|
||||
|
||||
/**
|
||||
* 注册中心
|
||||
@@ -135,12 +135,12 @@ public class NetConfig {
|
||||
this.consumer = consumer;
|
||||
}
|
||||
|
||||
public String getProtocolList() {
|
||||
return protocolList;
|
||||
public String getCodeLanguages() {
|
||||
return codeLanguages;
|
||||
}
|
||||
|
||||
public void setProtocolList(String protocolList) {
|
||||
this.protocolList = protocolList;
|
||||
public void setCodeLanguages(String codeLanguages) {
|
||||
this.codeLanguages = codeLanguages;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,6 +31,7 @@ import io.netty.buffer.ByteBuf;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.context.ConfigurableApplicationContext;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.ResourceUtils;
|
||||
|
||||
@@ -95,15 +96,14 @@ public class PacketService implements IPacketService {
|
||||
generateOperation.setFoldProtocol(netConfig.isFoldProtocol());
|
||||
generateOperation.setProtocolPath(netConfig.getProtocolPath());
|
||||
generateOperation.setProtocolParam(netConfig.getProtocolParam());
|
||||
var protocolArr = StringUtils.tokenize(netConfig.getProtocolList(), StringUtils.SEMICOLON_COMMA);
|
||||
var codeLanguageArr = StringUtils.tokenize(netConfig.getCodeLanguages(), ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS);
|
||||
|
||||
for (var protocolCode : protocolArr) {
|
||||
protocolCode = protocolCode.replaceAll(StringUtils.SPACE_REGEX, "");
|
||||
var codeLanguage = getProtocolList(protocolCode);
|
||||
if (CollectionUtils.isEmpty(codeLanguage)) {
|
||||
for (var codeLanguage : codeLanguageArr) {
|
||||
var codeLanguageSet = getProtocolList(codeLanguage);
|
||||
if (CollectionUtils.isEmpty(codeLanguageSet)) {
|
||||
continue;
|
||||
}
|
||||
generateOperation.getGenerateLanguages().addAll(codeLanguage);
|
||||
generateOperation.getGenerateLanguages().addAll(codeLanguageSet);
|
||||
}
|
||||
// 设置生成协议的过滤器
|
||||
GenerateProtocolFile.generateProtocolFilter = netGenerateProtocolFilter;
|
||||
@@ -127,20 +127,20 @@ public class PacketService implements IPacketService {
|
||||
|
||||
/**
|
||||
* 获取要生成协议列表
|
||||
* @param protocolCode
|
||||
* @param codeLanguage
|
||||
* @return
|
||||
*/
|
||||
private Set<CodeLanguage> getProtocolList(String protocolCode) {
|
||||
private Set<CodeLanguage> getProtocolList(String codeLanguage) {
|
||||
var languageSet = new HashSet<CodeLanguage>();
|
||||
boolean isNumeric = StringUtils.isNumeric(protocolCode);
|
||||
for (var codeLanguage : CodeLanguage.values()) {
|
||||
boolean isNumeric = StringUtils.isNumeric(codeLanguage);
|
||||
for (var language : CodeLanguage.values()) {
|
||||
if (isNumeric) {
|
||||
var protocolBit = Integer.valueOf(protocolCode);
|
||||
if ((protocolBit & codeLanguage.id) != 0) {
|
||||
languageSet.add(codeLanguage);
|
||||
var code = Integer.valueOf(codeLanguage);
|
||||
if ((code & language.id) != 0) {
|
||||
languageSet.add(language);
|
||||
}
|
||||
} else if (codeLanguage.name().equalsIgnoreCase(protocolCode)) {
|
||||
languageSet.add(codeLanguage);
|
||||
} else if (language.name().equalsIgnoreCase(codeLanguage)) {
|
||||
languageSet.add(language);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@ public class NetDefinitionParser implements BeanDefinitionParser {
|
||||
// 文件是否折叠
|
||||
resolvePlaceholder("fold-protocol", "foldProtocol", builder, element, parserContext);
|
||||
// 生成各种语言的协议列表
|
||||
resolvePlaceholder("protocol-list", "protocolList", builder, element, parserContext);
|
||||
resolvePlaceholder("code-languages", "codeLanguages", builder, element, parserContext);
|
||||
|
||||
resolvePlaceholder("protocol-path", "protocolPath", builder, element, parserContext);
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
<xsd:attribute name="id" type="xsd:string" use="required"/>
|
||||
<xsd:attribute name="protocol-location" type="xsd:string" use="required"/>
|
||||
<xsd:attribute name="fold-protocol" type="xsd:string" default="false"/>
|
||||
<xsd:attribute name="protocol-list" type="xsd:string" default="0"/>
|
||||
<xsd:attribute name="code-languages" type="xsd:string"/>
|
||||
<xsd:attribute name="protocol-path" type="xsd:string"/>
|
||||
<xsd:attribute name="protocol-param" type="xsd:string"/>
|
||||
</xsd:complexType>
|
||||
|
||||
Reference in new issue
Block a user