@Bean public SwaggerSpringMvcPlugin swaggerSpringMvcPlugin() { CustomModelPropertiesProvider propertiesProvider = new CustomModelPropertiesProvider(defaultModelPropertiesProvider, alternateTypeProvider, new CustomAccessorsProvider(typeResolver)); ModelDependencyProvider modelDependencyProvider = new ModelDependencyProvider(typeResolver, alternateTypeProvider, propertiesProvider); DefaultModelProvider modelProvider = new DefaultModelProvider(typeResolver, alternateTypeProvider, propertiesProvider, modelDependencyProvider); return new SwaggerSpringMvcPlugin(springSwaggerConfig) .modelProvider(modelProvider) .alternateTypeRules( new GenericAlternateTypeRule(ResponseEntity.class, 0, null, null), new GenericAlternateTypeRule(DeferredResult.class, 0, null, null), new GenericAlternateTypeRule(Future.class, 0, null, null), new GenericAlternateTypeRule(scala.concurrent.Future.class, 0, null, null)) .apiVersion(appVersion) .apiInfo(new ApiInfo(null, null, null, null, null, null)); }
@Bean public SwaggerSpringMvcPlugin swaggerSpringMvcPlugin() { final SwaggerSpringMvcPlugin swaggerSpringMvcPlugin = new SwaggerSpringMvcPlugin(springSwaggerConfig); swaggerSpringMvcPlugin.apiInfo(new ApiInfo(apiTitle, readApiDescription(), apiTermsOfServiceUrl, apiContact, apiLicense, apiLicenseUrl)); swaggerSpringMvcPlugin.apiVersion(apiVersion); swaggerSpringMvcPlugin.pathProvider(new RelativeSwaggerPathProvider(servletContext)); swaggerSpringMvcPlugin.useDefaultResponseMessages(false); swaggerSpringMvcPlugin.ignoredParameterTypes(Principal.class, Void.class); final TypeResolver resolver = new TypeResolver(); swaggerSpringMvcPlugin.genericModelSubstitutes(ResponseEntity.class); swaggerSpringMvcPlugin.genericModelSubstitutes(DeferredResult.class); swaggerSpringMvcPlugin.alternateTypeRules(new AlternateTypeRule(resolver.resolve(UUID.class), resolver.resolve(String.class))); swaggerSpringMvcPlugin.directModelSubstitute(Branch.class, BranchMixin.class); return swaggerSpringMvcPlugin; }