Skip to content
This repository was archived by the owner on Dec 4, 2025. It is now read-only.

Commit 5ebbbaa

Browse files
authored
Merge pull request #921 from linwumingshi/refactor/java-doc
refactor: update java doc And error log
2 parents 1bd2587 + 439fda0 commit 5ebbbaa

92 files changed

Lines changed: 1478 additions & 287 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/main/java/com/ly/doc/builder/AdocDocBuilder.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,14 @@
3838
*/
3939
public class AdocDocBuilder {
4040

41+
/**
42+
* api doc file name
43+
*/
4144
private static final String API_EXTENSION = "Api.adoc";
4245

46+
/**
47+
* index.adoc
48+
*/
4349
private static final String INDEX_DOC = "index.adoc";
4450

4551
/**

src/main/java/com/ly/doc/builder/ApiDataBuilder.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
import com.thoughtworks.qdox.JavaProjectBuilder;
2727

2828
/**
29+
* Build Api Data
30+
*
2931
* @author yu 2019/12/7.
3032
* @since 1.7.9
3133
*/
@@ -56,6 +58,14 @@ public static ApiAllData getApiDataTree(ApiConfig config) {
5658
return getApiData(config, Boolean.TRUE);
5759
}
5860

61+
/**
62+
* Retrieves API data based on the given configuration.
63+
* @param config The API configuration object containing request parameters and data
64+
* source information.
65+
* @param toTree A flag indicating whether to convert the parameter data into a tree
66+
* structure.
67+
* @return An ApiAllData object containing all the API data information.
68+
*/
5969
private static ApiAllData getApiData(ApiConfig config, boolean toTree) {
6070
config.setParamsDataToTree(toTree);
6171
DocBuilderTemplate builderTemplate = new DocBuilderTemplate();

src/main/java/com/ly/doc/builder/HtmlApiDocBuilder.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,26 @@
3636
import java.util.Objects;
3737

3838
/**
39+
* HTML API Doc Builder
40+
*
3941
* @author yu 2019/9/20.
4042
* @since 1.7+
4143
*/
4244
public class HtmlApiDocBuilder {
4345

46+
/**
47+
* error code html
48+
*/
4449
private static final String ERROR_CODE_HTML = "error.html";
4550

51+
/**
52+
* dict html
53+
*/
4654
private static final String DICT_HTML = "dict.html";
4755

56+
/**
57+
* index html
58+
*/
4859
private static String INDEX_HTML = "index.html";
4960

5061
/**

src/main/java/com/ly/doc/builder/JMeterBuilder.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@
4141
*/
4242
public class JMeterBuilder {
4343

44+
/**
45+
* Jmeter script extension
46+
*/
4447
private static final String JMETER_SCRIPT_EXTENSION = ".jmx";
4548

4649
/**

src/main/java/com/ly/doc/builder/PostmanJsonBuilder.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,16 @@
4545
import java.util.*;
4646

4747
/**
48+
* Postman Json Builder
49+
*
4850
* @author yu 2019/11/21.
51+
* @since 1.7.8
4952
*/
5053
public class PostmanJsonBuilder {
5154

55+
/**
56+
* Message
57+
*/
5258
private static final String MSG = "Interface name is not set.";
5359

5460
/**

src/main/java/com/ly/doc/builder/ProjectDocConfigBuilder.java

Lines changed: 99 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,30 +47,68 @@
4747
import java.util.logging.Logger;
4848

4949
/**
50+
* ProjectDocConfigBuilder
51+
*
5052
* @author yu 2019/12/21.
53+
* @since 1.8.0
5154
*/
5255
public class ProjectDocConfigBuilder {
5356

57+
/**
58+
* Logger
59+
*/
5460
private static final Logger log = Logger.getLogger(ProjectDocConfigBuilder.class.getName());
5561

62+
/**
63+
* JavaProjectBuilder
64+
*/
5665
private final JavaProjectBuilder javaProjectBuilder;
5766

67+
/**
68+
* classFilesMap
69+
*/
5870
private final Map<String, JavaClass> classFilesMap = new ConcurrentHashMap<>();
5971

72+
/**
73+
* enumClassMap
74+
*/
6075
private final Map<String, Class<? extends Enum<?>>> enumClassMap = new ConcurrentHashMap<>();
6176

77+
/**
78+
* customRespFieldMap
79+
*/
6280
private final Map<CustomField.Key, CustomField> customRespFieldMap = new ConcurrentHashMap<>();
6381

82+
/**
83+
* customReqFieldMap
84+
*/
6485
private final Map<CustomField.Key, CustomField> customReqFieldMap = new ConcurrentHashMap<>();
6586

87+
/**
88+
* replaceClassMap
89+
*/
6690
private final Map<String, String> replaceClassMap = new ConcurrentHashMap<>();
6791

92+
/**
93+
* constantsMap
94+
*/
6895
private final Map<String, String> constantsMap = new ConcurrentHashMap<>();
6996

97+
/**
98+
* serverUrl
99+
*/
70100
private final String serverUrl;
71101

102+
/**
103+
* ApiConfig
104+
*/
72105
private final ApiConfig apiConfig;
73106

107+
/**
108+
* Constructor
109+
* @param apiConfig ApiConfig
110+
* @param javaProjectBuilder JavaProjectBuilder
111+
*/
74112
public ProjectDocConfigBuilder(ApiConfig apiConfig, JavaProjectBuilder javaProjectBuilder) {
75113
if (null == apiConfig) {
76114
throw new NullPointerException("ApiConfig can't be null.");
@@ -105,6 +143,10 @@ public ProjectDocConfigBuilder(ApiConfig apiConfig, JavaProjectBuilder javaProje
105143
this.checkBodyAdvice(apiConfig.getResponseBodyAdvice());
106144
}
107145

146+
/**
147+
* Init data dictionary.
148+
* @param apiConfig apiConfig
149+
*/
108150
private void initDict(ApiConfig apiConfig) {
109151
if (enumClassMap.isEmpty()) {
110152
return;
@@ -129,6 +171,11 @@ private void initDict(ApiConfig apiConfig) {
129171
}
130172
}
131173

174+
/**
175+
* Get enum implements by interface.
176+
* @param enumClass enumClass
177+
* @return enum implements
178+
*/
132179
private Set<Class<? extends Enum<?>>> getEnumImplementsByInterface(Class<?> enumClass) {
133180
if (!enumClass.isInterface()) {
134181
return Collections.emptySet();
@@ -142,6 +189,11 @@ private Set<Class<? extends Enum<?>>> getEnumImplementsByInterface(Class<?> enum
142189
return set;
143190
}
144191

192+
/**
193+
* Get class by name.
194+
* @param simpleName simpleName
195+
* @return JavaClass
196+
*/
145197
public JavaClass getClassByName(String simpleName) {
146198
JavaClass cls = javaProjectBuilder.getClassByName(simpleName);
147199
List<DocJavaField> fieldList = JavaClassUtil.getFields(cls, 0, new LinkedHashMap<>(), null);
@@ -158,6 +210,11 @@ public JavaClass getClassByName(String simpleName) {
158210
return cls;
159211
}
160212

213+
/**
214+
* Load java source.
215+
* @param config ApiConfig
216+
* @param builder JavaProjectBuilder
217+
*/
161218
private void loadJavaSource(ApiConfig config, JavaProjectBuilder builder) {
162219
if (CollectionUtil.isNotEmpty(config.getJarSourcePaths())) {
163220
for (SourceCodePath path : config.getJarSourcePaths()) {
@@ -181,6 +238,11 @@ private void loadJavaSource(ApiConfig config, JavaProjectBuilder builder) {
181238
}
182239
}
183240

241+
/**
242+
* Load jar java source.
243+
* @param strPath path
244+
* @param builder builder
245+
*/
184246
private void loadJavaSource(String strPath, JavaProjectBuilder builder) {
185247
DirectoryScanner scanner = new DirectoryScanner(new File(strPath));
186248
scanner.addFilter(new SuffixFilter(".java"));
@@ -194,6 +256,11 @@ private void loadJavaSource(String strPath, JavaProjectBuilder builder) {
194256
});
195257
}
196258

259+
/**
260+
* Load jar java source.
261+
* @param path path
262+
* @param builder builder
263+
*/
197264
public void loadJarJavaSource(String path, JavaProjectBuilder builder) {
198265
OutputStream out;
199266
if (!path.endsWith(".jar")) {
@@ -228,6 +295,10 @@ public void loadJarJavaSource(String path, JavaProjectBuilder builder) {
228295
}
229296
}
230297

298+
/**
299+
* Delete dir.
300+
* @param file file
301+
*/
231302
public static void deleteDir(File file) {
232303
File[] files = file.listFiles();
233304
if (file.isFile() || Objects.isNull(files) || files.length == 0) {
@@ -241,6 +312,10 @@ public static void deleteDir(File file) {
241312
file.delete();
242313
}
243314

315+
/**
316+
* Init class files map.
317+
*/
318+
@SuppressWarnings({ "rawtypes", "unchecked" })
244319
private void initClassFilesMap() {
245320
Collection<JavaClass> javaClasses = javaProjectBuilder.getClasses();
246321
for (JavaClass cls : javaClasses) {
@@ -264,6 +339,10 @@ private void initClassFilesMap() {
264339
}
265340
}
266341

342+
/**
343+
* Init custom response fields map.
344+
* @param config config
345+
*/
267346
private void initCustomResponseFieldsMap(ApiConfig config) {
268347
if (CollectionUtil.isNotEmpty(config.getCustomResponseFields())) {
269348
for (CustomField field : config.getCustomResponseFields()) {
@@ -273,6 +352,10 @@ private void initCustomResponseFieldsMap(ApiConfig config) {
273352
}
274353
}
275354

355+
/**
356+
* Init custom request fields map.
357+
* @param config config
358+
*/
276359
private void initCustomRequestFieldsMap(ApiConfig config) {
277360
if (CollectionUtil.isNotEmpty(config.getCustomRequestFields())) {
278361
for (CustomField field : config.getCustomRequestFields()) {
@@ -282,6 +365,10 @@ private void initCustomRequestFieldsMap(ApiConfig config) {
282365
}
283366
}
284367

368+
/**
369+
* Init replace class map.
370+
* @param config config
371+
*/
285372
private void initReplaceClassMap(ApiConfig config) {
286373
if (CollectionUtil.isNotEmpty(config.getApiObjectReplacements())) {
287374
for (ApiObjectReplacement replace : config.getApiObjectReplacements()) {
@@ -290,6 +377,10 @@ private void initReplaceClassMap(ApiConfig config) {
290377
}
291378
}
292379

380+
/**
381+
* Init constants.
382+
* @param config config
383+
*/
293384
private void initConstants(ApiConfig config) {
294385
List<ApiConstant> apiConstants;
295386
if (CollectionUtil.isEmpty(config.getApiConstants())) {
@@ -311,10 +402,14 @@ private void initConstants(ApiConfig config) {
311402
}
312403
}
313404
catch (ClassNotFoundException | IllegalAccessException e) {
314-
e.printStackTrace();
405+
log.warning(e.getMessage());
315406
}
316407
}
317408

409+
/**
410+
* Check body advice.
411+
* @param bodyAdvice body advice
412+
*/
318413
private void checkBodyAdvice(BodyAdvice bodyAdvice) {
319414
if (Objects.nonNull(bodyAdvice) && StringUtil.isNotEmpty(bodyAdvice.getClassName())) {
320415
if (Objects.nonNull(bodyAdvice.getWrapperClass())) {
@@ -330,6 +425,9 @@ private void checkBodyAdvice(BodyAdvice bodyAdvice) {
330425
}
331426
}
332427

428+
/**
429+
* Set highlight style.
430+
*/
333431
private void setHighlightStyle() {
334432
String style = apiConfig.getStyle();
335433
if (HighLightJsConstants.HIGH_LIGHT_DEFAULT_STYLE.equals(style)) {

src/main/java/com/ly/doc/builder/WordDocBuilder.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,17 +43,31 @@
4343
import java.util.zip.ZipOutputStream;
4444

4545
/**
46+
* Word doc builder
47+
*
4648
* @author <a href="mailto:cqmike0315@gmail.com">chenqi</a>
47-
* @version 1.0
49+
* @since 3.0.1
4850
*/
4951
public class WordDocBuilder {
5052

53+
/**
54+
* template docx
55+
*/
5156
private static final String TEMPLATE_DOCX = "template/word/template.docx";
5257

58+
/**
59+
* build docx file name
60+
*/
5361
private static final String BUILD_DOCX = "index.docx";
5462

63+
/**
64+
* build error code docx file name
65+
*/
5566
private static final String BUILD_ERROR_DOCX = "error.docx";
5667

68+
/**
69+
* build directory data docx file name
70+
*/
5771
private static final String BUILD_DICT_DOCX = "dict.docx";
5872

5973
/**

src/main/java/com/ly/doc/builder/javadoc/JavadocAdocBuilder.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,22 @@
2828

2929
import java.util.List;
3030

31+
/**
32+
* Javadoc Asciidoc Builder
33+
*
34+
* @author chenchuxin
35+
* @since 3.0.5
36+
*/
3137
public class JavadocAdocBuilder {
3238

39+
/**
40+
* api extension
41+
*/
3342
private static final String API_EXTENSION = "JavadocApi.adoc";
3443

44+
/**
45+
* index extension
46+
*/
3547
private static final String INDEX_DOC = "javadoc-index.adoc";
3648

3749
/**

src/main/java/com/ly/doc/builder/javadoc/JavadocApiDataBuilder.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,12 @@
2626
import com.ly.doc.model.javadoc.JavadocApiAllData;
2727
import com.thoughtworks.qdox.JavaProjectBuilder;
2828

29+
/**
30+
* Javadoc Api Data Builder
31+
*
32+
* @author chenchuxin
33+
* @since 3.0.5
34+
*/
2935
public class JavadocApiDataBuilder {
3036

3137
/**

0 commit comments

Comments
 (0)