Skip to content

Commit 66ebda3

Browse files
committed
Fix JavaDoc generation and enable html checks again
Fix #116
1 parent eb74de9 commit 66ebda3

File tree

106 files changed

+726
-503
lines changed

Some content is hidden

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

106 files changed

+726
-503
lines changed

pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,6 @@
114114
<version>${maven-javadoc-plugin.version}</version>
115115
<configuration>
116116
<release>${java.version}</release>
117-
<doclint>-html</doclint>
118117
</configuration>
119118
<executions>
120119
<execution>

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/JavaGenerator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public void generate(OpenAPI openAPI, Path outputDirectory, JavaPackage javaPack
3030

3131
EndpointSplitter.splitEndpoints(spotifyWebApi);
3232

33-
var apiTemplate = new ApiGenerator(generationContext, objectGenerator::getObjectNameForResponse);
33+
var apiTemplate = new ApiGenerator(generationContext);
3434
apiTemplate.generateEndpoints(spotifyWebApi);
3535

3636
new SpotifyWebApiGenerator(generationContext).generate();

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/generators/ApiGenerator.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import lombok.RequiredArgsConstructor;
1313

1414
import java.util.*;
15-
import java.util.function.Function;
1615
import java.util.stream.Stream;
1716

1817
import static java.util.stream.Collectors.joining;
@@ -21,7 +20,6 @@
2120
@RequiredArgsConstructor
2221
public class ApiGenerator {
2322
private final GenerationContext generationContext;
24-
private final Function<String, String> responseTypeMapper;
2523

2624
private JavaPackage apisJavaPackage;
2725

@@ -108,7 +106,7 @@ private List<ApiEndpoint.Parameter> generateEndpointRequest(ApiEndpoint endpoint
108106
.map(ApiEndpoint.Parameter::asMethodParameter)
109107
.collect(joining(", ")));
110108

111-
context.put("requiredJavaDocParameters", requiredParameterList.stream().map(ApiEndpoint.Parameter::asJavaDoc).collect(toList()));
109+
context.put("requiredJavaDocParameters", requiredParameterList.stream().map(ApiEndpoint.Parameter::asJavaDoc).toList());
112110

113111
endpoint.getOptionalQueryParameters().stream()
114112
.filter(p -> "additional_types".equals(p.getName()))

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/generators/ObjectModelCreator.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,8 @@ private void visitOperation(ApiCategory category, PathItem.HttpMethod method, St
5454
if (operation.getParameters() != null) {
5555
operation.getParameters().stream().map(generationContext::resolveParameter).forEach(parameter -> {
5656
switch (parameter.getIn()) {
57-
case "path": {
58-
endpoint.addPathParameter(convertParameter(parameter), parameter.getRequired());
59-
break;
60-
}
61-
case "query": {
62-
endpoint.addQueryParameter(convertParameter(parameter), parameter.getRequired());
63-
break;
64-
}
57+
case "path" -> endpoint.addPathParameter(convertParameter(parameter), parameter.getRequired());
58+
case "query" -> endpoint.addQueryParameter(convertParameter(parameter), parameter.getRequired());
6559
}
6660
});
6761
}

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/generators/ScopeGenerator.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
import java.util.HashMap;
1010
import java.util.Map;
11-
import java.util.stream.Collectors;
1211

1312
@RequiredArgsConstructor
1413
public class ScopeGenerator {
@@ -37,7 +36,7 @@ private Map<String, Object> createScope(Scopes scopes, JavaPackage javaPackage)
3736
"description", scopeEntry.getValue().trim(),
3837
"last", false
3938
)))
40-
.collect(Collectors.toList());
39+
.toList();
4140
scopesContext.get(scopes.size() - 1).put("last", true);
4241
context.put("scopes", scopesContext);
4342

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/generators/SpotifyWebApiGenerator.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
import java.util.HashMap;
1111
import java.util.Map;
12-
import java.util.stream.Collectors;
1312

1413
@RequiredArgsConstructor
1514
public class SpotifyWebApiGenerator {
@@ -34,7 +33,7 @@ private Map<String, Object> createContext(OpenAPI openAPI, JavaPackage javaPacka
3433
.distinct()
3534
.sorted()
3635
.map(className -> Map.of("className", className, "fieldName", CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, className)))
37-
.collect(Collectors.toList());
36+
.toList();
3837

3938
context.put("apis", apis);
4039
return context;

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/util/JavaPackage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ private static boolean isValidJavaPackageName(String[] packageNames) {
3131
if (packageNames.length == 0) {
3232
return false;
3333
}
34-
for (String packageName : packageNames) {
34+
for (var packageName : packageNames) {
3535
if (Strings.isNullOrEmpty(packageName)) {
3636
return false;
3737
}

spotify-web-api-java-generator/src/main/java/de/sonallux/spotify/generator/java/util/Markdown2Html.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
import java.util.Arrays;
1313
import java.util.List;
14-
import java.util.stream.Collectors;
1514

1615
public class Markdown2Html {
1716
private static final Parser PARSER;
@@ -43,20 +42,22 @@ public class Markdown2Html {
4342
public static String convert(String markdown) {
4443
var document = PARSER.parse(markdown);
4544
var html = HTML_RENDERER.render(document);
46-
return html.replaceAll("<br />", "<br>");
45+
return html
46+
.replace("<br />", "<br>")
47+
.replace("<img src", "<img alt=\"\" src");
4748
}
4849

4950
public static String convertToSingleLine(String markdown) {
5051
return convert(markdown)
51-
.replaceAll(">\n", ">")
52-
.replaceAll("\n", " ")
52+
.replace(">\n", ">")
53+
.replace("\n", " ")
5354
.trim();
5455
}
5556

5657
public static List<String> convertToLines(String markdown) {
5758
var html = convert(markdown);
5859
return Arrays.stream(html.split("\n"))
5960
.map(String::trim)
60-
.collect(Collectors.toList());
61+
.toList();
6162
}
6263
}

spotify-web-api-java-generator/src/main/resources/templates/api.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class {{className}} {
1313
{{#endpoints}}
1414

1515
/**
16-
* <h3>{{name}}</h3>
16+
* <h4>{{name}}</h4>
1717
* {{description}}
1818
{{#javaDocParameters}}
1919
* {{.}}

spotify-web-api-java-generator/src/main/resources/templates/request.mustache

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import de.sonallux.spotify.api.http.Request;
77
import de.sonallux.spotify.api.models.*;
88

99
/**
10-
* {{name}}
10+
* <h2>{{name}}</h2>
1111
{{#scopes}}
1212
*
1313
* <h3>Required OAuth scopes</h3>
@@ -25,7 +25,7 @@ public class {{className}} {
2525
private final Request request;
2626

2727
/**
28-
* <h3>{{name}}</h3>
28+
* {{name}}
2929
{{#requiredJavaDocParameters}}
3030
* {{.}}
3131
{{/requiredJavaDocParameters}}
@@ -53,7 +53,8 @@ public class {{className}} {
5353

5454
{{#optionalPathParameters}}
5555
/**
56-
* {{description}}
56+
* @param {{javaName}} {{description}}
57+
* @return this request
5758
*/
5859
public {{className}} {{javaName}}({{type}} {{javaName}}) {
5960
this.request.addPathParameter("{{name}}", String.valueOf({{javaName}}));
@@ -63,7 +64,8 @@ public class {{className}} {
6364
{{/optionalPathParameters}}
6465
{{#optionalQueryParameters}}
6566
/**
66-
* {{description}}
67+
* @param {{javaName}} {{description}}
68+
* @return this request
6769
*/
6870
public {{className}} {{javaName}}({{type}} {{javaName}}) {
6971
this.request.addQueryParameter("{{name}}", String.valueOf({{javaName}}));
@@ -73,7 +75,8 @@ public class {{className}} {
7375
{{/optionalQueryParameters}}
7476
{{#optionalBodyParameters}}
7577
/**
76-
* {{description}}
78+
* @param {{javaName}} {{description}}
79+
* @return this request
7780
*/
7881
public {{className}} {{javaName}}({{type}} {{javaName}}) {
7982
this.request.addBodyParameter("{{name}}", {{javaName}});
@@ -82,7 +85,8 @@ public class {{className}} {
8285

8386
{{/optionalBodyParameters}}
8487
/**
85-
* Build the request into an executable call
88+
* Build the request into an executable api call
89+
* @return an executable api call
8690
*/
8791
public ApiCall<{{responseType}}> build() {
8892
return apiClient.createApiCall(request, RESPONSE_TYPE);

0 commit comments

Comments
 (0)