From 82d299e1c163053d2674269968e8d1b6acf4b134 Mon Sep 17 00:00:00 2001 From: sun Date: Thu, 21 Sep 2023 11:13:23 +0800 Subject: [PATCH] perf[enhance]: use getName() in class --- .../com/zfoo/event/enhance/EnhanceUtils.java | 18 ++++---- .../com/zfoo/net/enhance/EnhanceUtils.java | 22 +++++----- .../protocol/registration/EnhanceUtils.java | 42 +++++++++---------- .../zfoo/scheduler/enhance/EnhanceUtils.java | 12 +++--- 4 files changed, 47 insertions(+), 47 deletions(-) diff --git a/event/src/main/java/com/zfoo/event/enhance/EnhanceUtils.java b/event/src/main/java/com/zfoo/event/enhance/EnhanceUtils.java index 3f7d8894..cc014004 100644 --- a/event/src/main/java/com/zfoo/event/enhance/EnhanceUtils.java +++ b/event/src/main/java/com/zfoo/event/enhance/EnhanceUtils.java @@ -39,7 +39,7 @@ public abstract class EnhanceUtils { var classPool = ClassPool.getDefault(); for (var clazz : classArray) { - if (classPool.find(clazz.getCanonicalName()) == null) { + if (classPool.find(clazz.getName()) == null) { ClassClassPath classPath = new ClassClassPath(clazz); classPool.insertClassPath(classPath); } @@ -54,31 +54,31 @@ public abstract class EnhanceUtils { Class clazz = definition.getEventClazz(); // 定义类名称 - CtClass enhanceClazz = classPool.makeClass(EnhanceUtils.class.getCanonicalName() + StringUtils.capitalize(NamespaceHandler.EVENT) + UuidUtils.getLocalIntId()); - enhanceClazz.addInterface(classPool.get(IEventReceiver.class.getCanonicalName())); + CtClass enhanceClazz = classPool.makeClass(EnhanceUtils.class.getName() + StringUtils.capitalize(NamespaceHandler.EVENT) + UuidUtils.getLocalIntId()); + enhanceClazz.addInterface(classPool.get(IEventReceiver.class.getName())); // 定义类中的一个成员 - CtField field = new CtField(classPool.get(bean.getClass().getCanonicalName()), "bean", enhanceClazz); + CtField field = new CtField(classPool.get(bean.getClass().getName()), "bean", enhanceClazz); field.setModifiers(Modifier.PRIVATE); enhanceClazz.addField(field); // 定义类的构造器 - CtConstructor constructor = new CtConstructor(classPool.get(new String[]{bean.getClass().getCanonicalName()}), enhanceClazz); + CtConstructor constructor = new CtConstructor(classPool.get(new String[]{bean.getClass().getName()}), enhanceClazz); constructor.setBody("{this.bean=$1;}"); constructor.setModifiers(Modifier.PUBLIC); enhanceClazz.addConstructor(constructor); // 定义类实现的接口方法invoker - CtMethod invokeMethod = new CtMethod(classPool.get(void.class.getCanonicalName()), "invoke", classPool.get(new String[]{IEvent.class.getCanonicalName()}), enhanceClazz); + CtMethod invokeMethod = new CtMethod(classPool.get(void.class.getName()), "invoke", classPool.get(new String[]{IEvent.class.getName()}), enhanceClazz); invokeMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); - String invokeMethodBody = StringUtils.format("{ this.bean.{}(({})$1); }", method.getName(), clazz.getCanonicalName()); // 强制类型转换,转换为具体的Event类型的类型 + String invokeMethodBody = StringUtils.format("{ this.bean.{}(({})$1); }", method.getName(), clazz.getName()); // 强制类型转换,转换为具体的Event类型的类型 invokeMethod.setBody(invokeMethodBody); enhanceClazz.addMethod(invokeMethod); // 定义类实现的接口方法bus - CtMethod busMethod = new CtMethod(classPool.get(Bus.class.getCanonicalName()), "bus", null, enhanceClazz); + CtMethod busMethod = new CtMethod(classPool.get(Bus.class.getName()), "bus", null, enhanceClazz); busMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); - String busMethodBody = StringUtils.format("{ return {}.{}; }", Bus.class.getCanonicalName(), definition.getBus()); + String busMethodBody = StringUtils.format("{ return {}.{}; }", Bus.class.getName(), definition.getBus()); busMethod.setBody(busMethodBody); enhanceClazz.addMethod(busMethod); diff --git a/net/src/main/java/com/zfoo/net/enhance/EnhanceUtils.java b/net/src/main/java/com/zfoo/net/enhance/EnhanceUtils.java index bba40de3..78075a05 100644 --- a/net/src/main/java/com/zfoo/net/enhance/EnhanceUtils.java +++ b/net/src/main/java/com/zfoo/net/enhance/EnhanceUtils.java @@ -36,7 +36,7 @@ public abstract class EnhanceUtils { var classPool = ClassPool.getDefault(); for (var clazz : classArray) { - if (classPool.find(clazz.getCanonicalName()) == null) { + if (classPool.find(clazz.getName()) == null) { ClassClassPath classPath = new ClassClassPath(clazz); classPool.insertClassPath(classPath); } @@ -50,39 +50,39 @@ public abstract class EnhanceUtils { var packetClazz = definition.getPacketClazz(); var attachmentClazz = definition.getAttachmentClazz(); - var enhanceClazz = classPool.makeClass(EnhanceUtils.class.getCanonicalName() + "Route" + UuidUtils.getLocalIntId()); - enhanceClazz.addInterface(classPool.get(IPacketReceiver.class.getCanonicalName())); + var enhanceClazz = classPool.makeClass(EnhanceUtils.class.getName() + "Route" + UuidUtils.getLocalIntId()); + enhanceClazz.addInterface(classPool.get(IPacketReceiver.class.getName())); - var field = new CtField(classPool.get(bean.getClass().getCanonicalName()), "bean", enhanceClazz); + var field = new CtField(classPool.get(bean.getClass().getName()), "bean", enhanceClazz); field.setModifiers(Modifier.PRIVATE); enhanceClazz.addField(field); - var constructor = new CtConstructor(classPool.get(new String[]{bean.getClass().getCanonicalName()}), enhanceClazz); + var constructor = new CtConstructor(classPool.get(new String[]{bean.getClass().getName()}), enhanceClazz); constructor.setBody("{this.bean=$1;}"); constructor.setModifiers(Modifier.PUBLIC); enhanceClazz.addConstructor(constructor); - var invokeMethod = new CtMethod(classPool.get(void.class.getCanonicalName()), "invoke", classPool.get(new String[]{Session.class.getCanonicalName(), Object.class.getCanonicalName(), Object.class.getCanonicalName()}), enhanceClazz); + var invokeMethod = new CtMethod(classPool.get(void.class.getName()), "invoke", classPool.get(new String[]{Session.class.getName(), Object.class.getName(), Object.class.getName()}), enhanceClazz); invokeMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); if (attachmentClazz == null) { // Cast type(强制类型转换) - String invokeMethodBody = StringUtils.format("{this.bean.{}($1, ({})$2);}", method.getName(), packetClazz.getCanonicalName()); + String invokeMethodBody = StringUtils.format("{this.bean.{}($1, ({})$2);}", method.getName(), packetClazz.getName()); invokeMethod.setBody(invokeMethodBody); } else { - String invokeMethodBody = StringUtils.format("{this.bean.{}($1, ({})$2, ({})$3);}", method.getName(), packetClazz.getCanonicalName(), attachmentClazz.getCanonicalName()); + String invokeMethodBody = StringUtils.format("{this.bean.{}($1, ({})$2, ({})$3);}", method.getName(), packetClazz.getName(), attachmentClazz.getName()); invokeMethod.setBody(invokeMethodBody); } enhanceClazz.addMethod(invokeMethod); // 定义类实现的接口方法task - CtMethod taskMethod = new CtMethod(classPool.get(Task.class.getCanonicalName()), "task", null, enhanceClazz); + CtMethod taskMethod = new CtMethod(classPool.get(Task.class.getName()), "task", null, enhanceClazz); taskMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); - String taskMethodBody = StringUtils.format("{ return {}.{}; }", Task.class.getCanonicalName(), definition.getTask()); + String taskMethodBody = StringUtils.format("{ return {}.{}; }", Task.class.getName(), definition.getTask()); taskMethod.setBody(taskMethodBody); enhanceClazz.addMethod(taskMethod); // 定义类实现的接口方法attachment - CtMethod attachmentMethod = new CtMethod(classPool.get(Class.class.getCanonicalName()), "attachment", null, enhanceClazz); + CtMethod attachmentMethod = new CtMethod(classPool.get(Class.class.getName()), "attachment", null, enhanceClazz); attachmentMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); if (attachmentClazz == null) { String attachmentMethodBody = "{ return null; }"; diff --git a/protocol/src/main/java/com/zfoo/protocol/registration/EnhanceUtils.java b/protocol/src/main/java/com/zfoo/protocol/registration/EnhanceUtils.java index 56e9bd82..cfcc7115 100644 --- a/protocol/src/main/java/com/zfoo/protocol/registration/EnhanceUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/registration/EnhanceUtils.java @@ -55,17 +55,17 @@ public abstract class EnhanceUtils { var classPool = ClassPool.getDefault(); // 导入需要的包 - classPool.importPackage(ByteBufUtils.class.getCanonicalName()); - classPool.importPackage(CollectionUtils.class.getCanonicalName()); - classPool.importPackage(ArrayUtils.class.getCanonicalName()); - classPool.importPackage(Iterator.class.getCanonicalName()); - classPool.importPackage(List.class.getCanonicalName()); - classPool.importPackage(Map.class.getCanonicalName()); - classPool.importPackage(Set.class.getCanonicalName()); + classPool.importPackage(ByteBufUtils.class.getName()); + classPool.importPackage(CollectionUtils.class.getName()); + classPool.importPackage(ArrayUtils.class.getName()); + classPool.importPackage(Iterator.class.getName()); + classPool.importPackage(List.class.getName()); + classPool.importPackage(Map.class.getName()); + classPool.importPackage(Set.class.getName()); // 增加类的路径 for (var clazz : classArray) { - if (classPool.find(clazz.getCanonicalName()) == null) { + if (classPool.find(clazz.getName()) == null) { ClassClassPath classPath = new ClassClassPath(clazz); classPool.insertClassPath(classPath); } @@ -114,11 +114,11 @@ public abstract class EnhanceUtils { var packetFields = registration.getFieldRegistrations(); // 定义类名称 - CtClass enhanceClazz = classPool.makeClass(ProtocolRegistration.class.getCanonicalName() + protocolId); - enhanceClazz.addInterface(classPool.get(IProtocolRegistration.class.getCanonicalName())); + CtClass enhanceClazz = classPool.makeClass(ProtocolRegistration.class.getName() + protocolId); + enhanceClazz.addInterface(classPool.get(IProtocolRegistration.class.getName())); // 定义类中的一个成员 - CtField constructorFiled = new CtField(classPool.get(Constructor.class.getCanonicalName()), "constructor", enhanceClazz); + CtField constructorFiled = new CtField(classPool.get(Constructor.class.getName()), "constructor", enhanceClazz); constructorFiled.setModifiers(Modifier.PRIVATE); enhanceClazz.addField(constructorFiled); @@ -130,39 +130,39 @@ public abstract class EnhanceUtils { .toList(); for (var subProtocolId : allSubProtocolIds) { - var protocolRegistrationField = new CtField(classPool.get(IProtocolRegistration.class.getCanonicalName()), getProtocolRegistrationFieldNameByProtocolId(subProtocolId), enhanceClazz); + var protocolRegistrationField = new CtField(classPool.get(IProtocolRegistration.class.getName()), getProtocolRegistrationFieldNameByProtocolId(subProtocolId), enhanceClazz); protocolRegistrationField.setModifiers(Modifier.PRIVATE); enhanceClazz.addField(protocolRegistrationField); } // 定义类的构造器 - CtConstructor constructor = new CtConstructor(classPool.get(new String[]{Constructor.class.getCanonicalName()}), enhanceClazz); + CtConstructor constructor = new CtConstructor(classPool.get(new String[]{Constructor.class.getName()}), enhanceClazz); constructor.setBody("{this.constructor=$1;}"); constructor.setModifiers(Modifier.PUBLIC); enhanceClazz.addConstructor(constructor); // 定义类实现的接口方法 - CtMethod protocolIdMethod = new CtMethod(classPool.get(short.class.getCanonicalName()), "protocolId", null, enhanceClazz); + CtMethod protocolIdMethod = new CtMethod(classPool.get(short.class.getName()), "protocolId", null, enhanceClazz); protocolIdMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); protocolIdMethod.setBody("{return " + registration.protocolId() + ";}"); enhanceClazz.addMethod(protocolIdMethod); - CtMethod protocolConstructorMethod = new CtMethod(classPool.get(Constructor.class.getCanonicalName()), "protocolConstructor", null, enhanceClazz); + CtMethod protocolConstructorMethod = new CtMethod(classPool.get(Constructor.class.getName()), "protocolConstructor", null, enhanceClazz); protocolConstructorMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); protocolConstructorMethod.setBody("{return this.constructor;}"); enhanceClazz.addMethod(protocolConstructorMethod); - CtMethod moduleMethod = new CtMethod(classPool.get(byte.class.getCanonicalName()), "module", null, enhanceClazz); + CtMethod moduleMethod = new CtMethod(classPool.get(byte.class.getName()), "module", null, enhanceClazz); moduleMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); moduleMethod.setBody("{return " + registration.module() + ";}"); enhanceClazz.addMethod(moduleMethod); - CtMethod writeMethod = new CtMethod(classPool.get(void.class.getCanonicalName()), "write", classPool.get(new String[]{ByteBuf.class.getCanonicalName(), Object.class.getCanonicalName()}), enhanceClazz); + CtMethod writeMethod = new CtMethod(classPool.get(void.class.getName()), "write", classPool.get(new String[]{ByteBuf.class.getName(), Object.class.getName()}), enhanceClazz); writeMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); writeMethod.setBody(writeMethodBody(registration)); enhanceClazz.addMethod(writeMethod); - CtMethod readMethod = new CtMethod(classPool.get(Object.class.getCanonicalName()), "read", classPool.get(new String[]{ByteBuf.class.getCanonicalName()}), enhanceClazz); + CtMethod readMethod = new CtMethod(classPool.get(Object.class.getName()), "read", classPool.get(new String[]{ByteBuf.class.getName()}), enhanceClazz); readMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); readMethod.setBody(readMethodBody(registration)); enhanceClazz.addMethod(readMethod); @@ -185,7 +185,7 @@ public abstract class EnhanceUtils { var packetClazz = constructor.getDeclaringClass(); var builder = new StringBuilder(); - builder.append("{").append(packetClazz.getCanonicalName() + " packet = (" + packetClazz.getCanonicalName() + ")$2;"); + builder.append("{").append(packetClazz.getName() + " packet = (" + packetClazz.getName() + ")$2;"); builder.append("if(ByteBufUtils.writePacketFlag($1, packet)){").append("return;}"); for (var i = 0; i < fields.length; i++) { var field = fields[i]; @@ -229,10 +229,10 @@ public abstract class EnhanceUtils { constructorParam.set(index, readObject); } - builder.append(packetClazz.getCanonicalName() + " packet=new " + packetClazz.getCanonicalName() + "(" + constructorParam.stream().collect(Collectors.joining(StringUtils.COMMA)) + ");"); + builder.append(packetClazz.getName() + " packet=new " + packetClazz.getName() + "(" + constructorParam.stream().collect(Collectors.joining(StringUtils.COMMA)) + ");"); } else { var fields = registration.getFields(); - builder.append(packetClazz.getCanonicalName() + " packet=new " + packetClazz.getCanonicalName() + "();"); + builder.append(packetClazz.getName() + " packet=new " + packetClazz.getName() + "();"); for (var i = 0; i < fields.length; i++) { var field = fields[i]; diff --git a/scheduler/src/main/java/com/zfoo/scheduler/enhance/EnhanceUtils.java b/scheduler/src/main/java/com/zfoo/scheduler/enhance/EnhanceUtils.java index a6ff93d3..f1d1cedf 100644 --- a/scheduler/src/main/java/com/zfoo/scheduler/enhance/EnhanceUtils.java +++ b/scheduler/src/main/java/com/zfoo/scheduler/enhance/EnhanceUtils.java @@ -36,7 +36,7 @@ public abstract class EnhanceUtils { var classPool = ClassPool.getDefault(); for (var clazz : classArray) { - if (classPool.find(clazz.getCanonicalName()) == null) { + if (classPool.find(clazz.getName()) == null) { ClassClassPath classPath = new ClassClassPath(clazz); classPool.insertClassPath(classPath); } @@ -50,22 +50,22 @@ public abstract class EnhanceUtils { Method method = reflectScheduler.getMethod(); // 定义类名称 - CtClass enhanceClazz = classPool.makeClass(EnhanceUtils.class.getCanonicalName() + StringUtils.capitalize(NamespaceHandler.SCHEDULER) + UuidUtils.getLocalIntId()); - enhanceClazz.addInterface(classPool.get(IScheduler.class.getCanonicalName())); + CtClass enhanceClazz = classPool.makeClass(EnhanceUtils.class.getName() + StringUtils.capitalize(NamespaceHandler.SCHEDULER) + UuidUtils.getLocalIntId()); + enhanceClazz.addInterface(classPool.get(IScheduler.class.getName())); // 定义类中的一个成员 - CtField field = new CtField(classPool.get(bean.getClass().getCanonicalName()), "bean", enhanceClazz); + CtField field = new CtField(classPool.get(bean.getClass().getName()), "bean", enhanceClazz); field.setModifiers(Modifier.PRIVATE); enhanceClazz.addField(field); // 定义类的构造器 - CtConstructor constructor = new CtConstructor(classPool.get(new String[]{bean.getClass().getCanonicalName()}), enhanceClazz); + CtConstructor constructor = new CtConstructor(classPool.get(new String[]{bean.getClass().getName()}), enhanceClazz); constructor.setBody("{this.bean=$1;}"); constructor.setModifiers(Modifier.PUBLIC); enhanceClazz.addConstructor(constructor); // 定义类实现的接口方法 - CtMethod invokeMethod = new CtMethod(classPool.get(void.class.getCanonicalName()), "invoke", null, enhanceClazz); + CtMethod invokeMethod = new CtMethod(classPool.get(void.class.getName()), "invoke", null, enhanceClazz); invokeMethod.setModifiers(Modifier.PUBLIC + Modifier.FINAL); String invokeMethodBody = "{this.bean." + method.getName() + "();}"; invokeMethod.setBody(invokeMethodBody);