-
-
Notifications
You must be signed in to change notification settings - Fork 467
/
SpringDocJavadocConfiguration.java
75 lines (68 loc) · 2.55 KB
/
SpringDocJavadocConfiguration.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/*
*
* *
* * *
* * * * Copyright 2019-2022 the original author or authors.
* * * *
* * * * Licensed under the Apache License, Version 2.0 (the "License");
* * * * you may not use this file except in compliance with the License.
* * * * You may obtain a copy of the License at
* * * *
* * * * https://www.apache.org/licenses/LICENSE-2.0
* * * *
* * * * Unless required by applicable law or agreed to in writing, software
* * * * distributed under the License is distributed on an "AS IS" BASIS,
* * * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* * * * See the License for the specific language governing permissions and
* * * * limitations under the License.
* * *
* *
*
*/
package org.springdoc.openapi.javadoc;
import org.springdoc.core.SpringDocConfiguration;
import org.springdoc.core.providers.JavadocProvider;
import org.springdoc.core.providers.ObjectMapperProvider;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Lazy;
import static org.springdoc.core.Constants.SPRINGDOC_ENABLED;
/**
* The type Spring doc security configuration.
* @author bnasslahsen
*/
@Lazy(false)
@Configuration(proxyBeanMethods = false)
@ConditionalOnProperty(name = SPRINGDOC_ENABLED, matchIfMissing = true)
@ConditionalOnBean(SpringDocConfiguration.class)
@ConditionalOnWebApplication
public class SpringDocJavadocConfiguration {
/**
* Spring doc javadoc provider spring doc javadoc provider.
*
* @return the spring doc javadoc provider
*/
@Bean
@ConditionalOnMissingBean
@Lazy(false)
SpringDocJavadocProvider springDocJavadocProvider( ) {
return new SpringDocJavadocProvider();
}
/**
* Javadoc property customizer javadoc property customizer.
*
* @param javadocProvider the javadoc provider
* @param objectMapperProvider the object mapper provider
* @return the javadoc property customizer
*/
@Bean
@ConditionalOnMissingBean
@Lazy(false)
JavadocPropertyCustomizer javadocPropertyCustomizer( JavadocProvider javadocProvider, ObjectMapperProvider objectMapperProvider){
return new JavadocPropertyCustomizer(javadocProvider, objectMapperProvider);
}
}