@@ -145,8 +145,8 @@ public List<Docket> createRestApi(SwaggerProperties swaggerProperties) {
145
145
Docket docketForBuilder = new Docket (DocumentationType .SWAGGER_2 )
146
146
.host (swaggerProperties .getHost ())
147
147
.apiInfo (apiInfo )
148
- .globalOperationParameters (buildGlobalOperationParametersFromSwaggerProperties (
149
- swaggerProperties .getGlobalOperationParameters ()));
148
+ .globalOperationParameters (assemblyGlobalOperationParameters ( swaggerProperties . getGlobalOperationParameters (),
149
+ docketInfo .getGlobalOperationParameters ()));
150
150
151
151
// 全局响应消息
152
152
if (!swaggerProperties .getApplyDefaultResponseMessages ()) {
@@ -171,14 +171,12 @@ public List<Docket> createRestApi(SwaggerProperties swaggerProperties) {
171
171
}
172
172
173
173
174
-
175
174
@ Override
176
175
public void setBeanFactory (BeanFactory beanFactory ) throws BeansException {
177
176
this .beanFactory = beanFactory ;
178
177
}
179
178
180
179
181
-
182
180
private List <Parameter > buildGlobalOperationParametersFromSwaggerProperties (
183
181
List <SwaggerProperties .GlobalOperationParameter > globalOperationParameters ) {
184
182
List <Parameter > parameters = Lists .newArrayList ();
@@ -234,27 +232,53 @@ private List<Parameter> assemblyGlobalOperationParameters(
234
232
/**
235
233
* 设置全局响应消息
236
234
*
237
- * @param swaggerProperties
235
+ * @param swaggerProperties 支持 POST,GET,PUT,PATCH,DELETE,HEAD,OPTIONS,TRACE
238
236
* @param docketForBuilder
239
237
*/
240
238
private void buildGlobalResponseMessage (SwaggerProperties swaggerProperties , Docket docketForBuilder ) {
241
- List <ResponseMessage > responseMessages = new ArrayList ();
242
- List <SwaggerProperties .GlobalResponseMessage > globalResponseMessages =
243
- swaggerProperties .getGlobalResponseMessages ();
244
- for (SwaggerProperties .GlobalResponseMessage globalResponseMessage : globalResponseMessages ) {
239
+
240
+ SwaggerProperties .GlobalResponseMessage globalResponseMessages =
241
+ swaggerProperties .getGlobalResponseMessage ();
242
+
243
+ // POST,GET,PUT,PATCH,DELETE,HEAD,OPTIONS,TRACE 响应消息体
244
+ List <ResponseMessage > postResponseMessages = getResponseMessageList (globalResponseMessages .getPost ());
245
+ List <ResponseMessage > getResponseMessages = getResponseMessageList (globalResponseMessages .getGet ());
246
+ List <ResponseMessage > putResponseMessages = getResponseMessageList (globalResponseMessages .getPut ());
247
+ List <ResponseMessage > patchResponseMessages = getResponseMessageList (globalResponseMessages .getPatch ());
248
+ List <ResponseMessage > deleteResponseMessages = getResponseMessageList (globalResponseMessages .getDelete ());
249
+ List <ResponseMessage > headResponseMessages = getResponseMessageList (globalResponseMessages .getHead ());
250
+ List <ResponseMessage > optionsResponseMessages = getResponseMessageList (globalResponseMessages .getOptions ());
251
+ List <ResponseMessage > trackResponseMessages = getResponseMessageList (globalResponseMessages .getTrace ());
252
+
253
+ docketForBuilder .useDefaultResponseMessages (swaggerProperties .getApplyDefaultResponseMessages ())
254
+ .globalResponseMessage (RequestMethod .POST , postResponseMessages )
255
+ .globalResponseMessage (RequestMethod .GET , getResponseMessages )
256
+ .globalResponseMessage (RequestMethod .PUT , putResponseMessages )
257
+ .globalResponseMessage (RequestMethod .PATCH , patchResponseMessages )
258
+ .globalResponseMessage (RequestMethod .DELETE , deleteResponseMessages )
259
+ .globalResponseMessage (RequestMethod .HEAD , headResponseMessages )
260
+ .globalResponseMessage (RequestMethod .OPTIONS , optionsResponseMessages )
261
+ .globalResponseMessage (RequestMethod .TRACE , trackResponseMessages );
262
+ }
263
+
264
+ /**
265
+ * 获取返回消息体列表
266
+ *
267
+ * @param globalResponseMessageBodyList
268
+ * @return
269
+ */
270
+ private List <ResponseMessage > getResponseMessageList (List <SwaggerProperties .GlobalResponseMessageBody > globalResponseMessageBodyList ) {
271
+ List <ResponseMessage > responseMessages = new ArrayList <>();
272
+ for (SwaggerProperties .GlobalResponseMessageBody globalResponseMessageBody : globalResponseMessageBodyList ) {
245
273
ResponseMessageBuilder responseMessageBuilder = new ResponseMessageBuilder ();
246
- responseMessageBuilder
247
- .code (globalResponseMessage .getCode ())
248
- .message (globalResponseMessage .getMessage ());
274
+ responseMessageBuilder .code (globalResponseMessageBody .getCode ()).message (globalResponseMessageBody .getMessage ());
249
275
250
- if (!StringUtils .isEmpty (globalResponseMessage .getModelRef ())) {
251
- responseMessageBuilder
252
- .responseModel (new ModelRef (globalResponseMessage .getModelRef ()));
276
+ if (!StringUtils .isEmpty (globalResponseMessageBody .getModelRef ())) {
277
+ responseMessageBuilder .responseModel (new ModelRef (globalResponseMessageBody .getModelRef ()));
253
278
}
254
279
responseMessages .add (responseMessageBuilder .build ());
255
280
}
256
281
257
- docketForBuilder .useDefaultResponseMessages (swaggerProperties .getApplyDefaultResponseMessages ())
258
- .globalResponseMessage (RequestMethod .GET ,responseMessages );
282
+ return responseMessages ;
259
283
}
260
284
}
0 commit comments