From 90d2e705b935359933802001a77acb8bdc71a50b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期六, 17 九月 2022 15:52:44 +0800
Subject: [PATCH] 优化代码

---
 java110-doc/src/main/java/com/java110/doc/registrar/Java110CmdDocDiscoveryRegistrar.java |   37 +++++++++++++++++++++++--------------
 1 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/java110-doc/src/main/java/com/java110/doc/registrar/Java110CmdDocDiscoveryRegistrar.java b/java110-doc/src/main/java/com/java110/doc/registrar/Java110CmdDocDiscoveryRegistrar.java
index 5b6567a..e41d4b7 100644
--- a/java110-doc/src/main/java/com/java110/doc/registrar/Java110CmdDocDiscoveryRegistrar.java
+++ b/java110-doc/src/main/java/com/java110/doc/registrar/Java110CmdDocDiscoveryRegistrar.java
@@ -1,8 +1,8 @@
 package com.java110.doc.registrar;
 
-import com.java110.doc.annotation.Java110ApiDoc;
 import com.java110.doc.annotation.Java110CmdDoc;
 import com.java110.doc.annotation.Java110CmdDocDiscovery;
+import com.java110.doc.entity.CmdDocDto;
 import org.springframework.beans.factory.BeanClassLoaderAware;
 import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition;
 import org.springframework.beans.factory.config.BeanDefinition;
@@ -28,20 +28,20 @@
  * api 鏂囨。 娉ㄥ叆绫�
  * Created by wuxw on 2018/7/2.
  */
-public class Java110CmdDocDiscoveryRegistrar implements ImportBeanDefinitionRegistrar,ResourceLoaderAware, BeanClassLoaderAware {
+public class Java110CmdDocDiscoveryRegistrar implements ImportBeanDefinitionRegistrar, ResourceLoaderAware, BeanClassLoaderAware {
 
     private ResourceLoader resourceLoader;
 
     private ClassLoader classLoader;
 
-    public Java110CmdDocDiscoveryRegistrar(){
+    public Java110CmdDocDiscoveryRegistrar() {
 
     }
 
     @Override
     public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
         try {
-            registerListener(importingClassMetadata,registry);
+            registerListener(importingClassMetadata, registry);
         } catch (NoSuchMethodException e) {
             e.printStackTrace();
         } catch (InvocationTargetException e) {
@@ -63,6 +63,7 @@
 
     /**
      * 娉ㄥ唽渚﹀惉
+     *
      * @param metadata
      * @param registry
      */
@@ -74,14 +75,14 @@
         Map<String, Object> attrs = metadata
                 .getAnnotationAttributes(Java110CmdDocDiscovery.class.getName());
 
-        Object cmdPublishClassObj =  attrs.get("cmdPublishClass");
+        Object cmdPublishClassObj = attrs.get("cmdDocClass");
 
         //Assert.notNull(cmdPublishClassObj,"Java110CmdDiscovery 娌℃湁閰嶇疆 cmdPublishClass 灞炴��");
 
         Class<?> cmdPublishClass = (Class<?>) cmdPublishClassObj;
 
         AnnotationTypeFilter annotationTypeFilter = new AnnotationTypeFilter(
-                Java110ApiDoc.class);
+                Java110CmdDoc.class);
 
         scanner.addIncludeFilter(annotationTypeFilter);
         basePackages = getBasePackages(metadata);
@@ -95,19 +96,27 @@
                     AnnotatedBeanDefinition beanDefinition = (AnnotatedBeanDefinition) candidateComponent;
                     AnnotationMetadata annotationMetadata = beanDefinition.getMetadata();
 
-
                     Map<String, Object> attributes = annotationMetadata
                             .getAnnotationAttributes(
                                     Java110CmdDoc.class.getCanonicalName());
 
-                    String beanName = getListenerName(attributes,beanDefinition);
-                    String serviceCode = attributes.get("serviceCode").toString();
+                    String beanName = getListenerName(attributes, beanDefinition);
+                    CmdDocDto cmdDocDto = new CmdDocDto();
+                    cmdDocDto.setCmdClass(candidateComponent.getClass());
+                    cmdDocDto.setDescription(attributes.get("description").toString());
+                    cmdDocDto.setAuthor(attributes.get("author").toString());
+                    cmdDocDto.setResource(attributes.get("resource").toString());
+                    cmdDocDto.setTitle(attributes.get("title").toString());
+                    cmdDocDto.setUrl(attributes.get("url").toString());
+                    cmdDocDto.setVersion(attributes.get("version").toString());
+                    cmdDocDto.setHttpMethod(attributes.get("httpMethod").toString());
+                    cmdDocDto.setServiceCode(attributes.get("serviceCode").toString());
 
 
                     /*BeanDefinitionHolder definitionHolder = new BeanDefinitionHolder(beanDefinition, beanName);
                     BeanDefinitionReaderUtils.registerBeanDefinition(definitionHolder, registry);*/
-//                    Method method = cmdPublishClass.getMethod("addListener", CmdListenerDto.class);
-//                    method.invoke(null,new CmdListenerDto(beanName,serviceCode));
+                    Method method = cmdPublishClass.getMethod("addCmdDoc", CmdDocDto.class);
+                    method.invoke(null, cmdDocDto);
                 }
             }
         }
@@ -131,8 +140,7 @@
                                     beanDefinition.getMetadata().getClassName(),
                                     Java110CmdDocDiscoveryRegistrar.this.classLoader);
                             return !target.isAnnotation();
-                        }
-                        catch (Exception ex) {
+                        } catch (Exception ex) {
                             this.logger.error(
                                     "Could not load target class: "
                                             + beanDefinition.getMetadata().getClassName(),
@@ -173,11 +181,12 @@
 
     /**
      * 鑾峰彇鍚嶇О
+     *
      * @param listeners
      * @param beanDefinition
      * @return
      */
-    private String getListenerName(Map<String, Object> listeners,AnnotatedBeanDefinition beanDefinition) {
+    private String getListenerName(Map<String, Object> listeners, AnnotatedBeanDefinition beanDefinition) {
         if (listeners == null) {
             String shortClassName = ClassUtils.getShortName(beanDefinition.getBeanClassName());
             return Introspector.decapitalize(shortClassName);

--
Gitblit v1.8.0