6
6
import org .springframework .context .annotation .Configuration ;
7
7
import org .springframework .util .CollectionUtils ;
8
8
9
+ import java .util .ArrayList ;
9
10
import java .util .List ;
10
11
import java .util .Map ;
11
12
import java .util .TreeMap ;
13
+ import java .util .stream .Collectors ;
14
+ import static org .springframework .util .AntPathMatcher .DEFAULT_PATH_SEPARATOR ;
12
15
13
16
/**
14
17
* Please refer to the swagger
@@ -110,9 +113,17 @@ public class SwaggerUiConfigProperties {
110
113
*/
111
114
private String oauth2RedirectUrl ;
112
115
116
+ private String url ;
113
117
114
- public Map <String , String > getConfigParameters () {
115
- final Map <String , String > params = new TreeMap <>();
118
+ private static List <SwaggerUrl > swaggerUrls = new ArrayList <>();
119
+
120
+ public static void addGroup (String group ) {
121
+ SwaggerUrl swaggerUrl = new SwaggerUrl (group );
122
+ swaggerUrls .add (swaggerUrl );
123
+ }
124
+
125
+ public Map <String , Object > getConfigParameters () {
126
+ final Map <String , Object > params = new TreeMap <>();
116
127
put ("layout" , layout , params );
117
128
put (CONFIG_URL_PROPERTY , configUrl , params );
118
129
put (VALIDATOR_URL_PROPERTY , validatorUrl , params );
@@ -132,22 +143,31 @@ public Map<String, String> getConfigParameters() {
132
143
if (!CollectionUtils .isEmpty (supportedSubmitMethods ))
133
144
put ("supportedSubmitMethods" , supportedSubmitMethods .toString (), params );
134
145
put ("oauth2RedirectUrl" , oauth2RedirectUrl , params );
146
+ put ("url" , url , params );
147
+ put ("urls" , swaggerUrls , params );
135
148
return params ;
136
149
}
137
150
138
- protected void put (final String name , final Integer value , final Map <String , String > params ) {
151
+ protected void put (String urls , List <SwaggerUrl > swaggerUrls , Map <String , Object > params ) {
152
+ swaggerUrls = swaggerUrls .stream ().filter (elt -> StringUtils .isNotEmpty (elt .getUrl ())).collect (Collectors .toList ());
153
+ if (!CollectionUtils .isEmpty (swaggerUrls )) {
154
+ params .put (urls , swaggerUrls );
155
+ }
156
+ }
157
+
158
+ protected void put (final String name , final Integer value , final Map <String , Object > params ) {
139
159
if (value != null ) {
140
160
params .put (name , value .toString ());
141
161
}
142
162
}
143
163
144
- protected void put (final String name , final Boolean value , final Map <String , String > params ) {
164
+ protected void put (final String name , final Boolean value , final Map <String , Object > params ) {
145
165
if (value != null ) {
146
166
params .put (name , value .toString ());
147
167
}
148
168
}
149
169
150
- protected void put (final String name , final String value , final Map <String , String > params ) {
170
+ protected void put (final String name , final String value , final Map <String , Object > params ) {
151
171
if (!StringUtils .isEmpty (value )) {
152
172
params .put (name , value );
153
173
}
@@ -304,4 +324,50 @@ public String getOauth2RedirectUrl() {
304
324
public void setOauth2RedirectUrl (String oauth2RedirectUrl ) {
305
325
this .oauth2RedirectUrl = oauth2RedirectUrl ;
306
326
}
327
+
328
+ public String getUrl () {
329
+ return url ;
330
+ }
331
+
332
+ public void setUrl (String url ) {
333
+ this .url = url ;
334
+ }
335
+
336
+ public List <SwaggerUrl > getSwaggerUrls () {
337
+ return swaggerUrls ;
338
+ }
339
+
340
+ public void setSwaggerUrls (List <SwaggerUrl > swaggerUrls ) {
341
+ this .swaggerUrls = swaggerUrls ;
342
+ }
343
+
344
+ public static void addUrl (String url ) {
345
+ swaggerUrls .forEach (elt -> elt .setUrl (url + DEFAULT_PATH_SEPARATOR + elt .getName ()));
346
+ }
347
+
348
+
349
+ static class SwaggerUrl {
350
+ private String url ;
351
+ private String name ;
352
+
353
+ public SwaggerUrl (String group ) {
354
+ this .name = group ;
355
+ }
356
+
357
+ public String getUrl () {
358
+ return url ;
359
+ }
360
+
361
+ public void setUrl (String url ) {
362
+ this .url = url ;
363
+ }
364
+
365
+ public String getName () {
366
+ return name ;
367
+ }
368
+
369
+ public void setName (String name ) {
370
+ this .name = name ;
371
+ }
372
+ }
307
373
}
0 commit comments