25
25
import org .slf4j .LoggerFactory ;
26
26
import org .springframework .beans .factory .ObjectProvider ;
27
27
import org .springframework .boot .autoconfigure .AutoConfigureAfter ;
28
+ import org .springframework .boot .autoconfigure .cache .CacheManagerCustomizer ;
29
+ import org .springframework .boot .autoconfigure .cache .CacheManagerCustomizers ;
28
30
import org .springframework .boot .autoconfigure .condition .ConditionalOnClass ;
29
31
import org .springframework .boot .autoconfigure .condition .ConditionalOnMissingBean ;
30
32
import org .springframework .boot .autoconfigure .condition .ConditionalOnProperty ;
38
40
import org .springframework .util .ObjectUtils ;
39
41
40
42
import java .util .List ;
43
+ import java .util .stream .Collectors ;
41
44
42
45
import static org .minbox .framework .api .boot .autoconfigure .logging .ApiBootLoggingProperties .API_BOOT_LOGGING_PREFIX ;
43
46
@@ -74,18 +77,24 @@ public ApiBootLoggingAutoConfiguration(ApiBootLoggingProperties apiBootLoggingPr
74
77
this .apiBootLoggingProperties = apiBootLoggingProperties ;
75
78
}
76
79
80
+ @ Bean
81
+ @ ConditionalOnMissingBean
82
+ public LoggingFactoryBeanCustomizers loggingFactoryBeanCustomizers (ObjectProvider <LoggingFactoryBeanCustomizer > customizers ) {
83
+ return new LoggingFactoryBeanCustomizers (customizers .orderedStream ().collect (Collectors .toList ()));
84
+ }
85
+
77
86
/**
78
87
* logging factory bean
79
88
* {@link LoggingFactoryBean}
80
89
*
81
90
* @param loggingAdminDiscoveryObjectProvider Logging Admin Discovery Instance Provider
82
- * @param customizerObjectProvider LoggingFactory Bean Customizer
91
+ * @param customizers LoggingFactory Bean Customizers
83
92
* @return LoggingFactoryBean
84
93
*/
85
94
@ Bean
86
95
@ ConditionalOnMissingBean
87
96
public LoggingFactoryBean loggingFactoryBean (ObjectProvider <LoggingAdminDiscovery > loggingAdminDiscoveryObjectProvider ,
88
- ObjectProvider < List < LoggingFactoryBeanCustomizer >> customizerObjectProvider ) {
97
+ LoggingFactoryBeanCustomizers customizers ) {
89
98
LoggingFactoryBean factoryBean = new LoggingFactoryBean ();
90
99
factoryBean .setIgnorePaths (apiBootLoggingProperties .getIgnorePaths ());
91
100
factoryBean .setIgnoreHttpStatus (apiBootLoggingProperties .getIgnoreHttpStatus ());
@@ -97,12 +106,8 @@ public LoggingFactoryBean loggingFactoryBean(ObjectProvider<LoggingAdminDiscover
97
106
factoryBean .setShowConsoleLog (apiBootLoggingProperties .isShowConsoleLog ());
98
107
factoryBean .setFormatConsoleLog (apiBootLoggingProperties .isFormatConsoleLogJson ());
99
108
100
- List <LoggingFactoryBeanCustomizer > customizers = customizerObjectProvider .getIfAvailable ();
101
- if (!ObjectUtils .isEmpty (customizers )) {
102
- customizers .stream ().forEach (customizer -> customizer .customize (factoryBean ));
103
- }
104
109
logger .info ("【LoggingFactoryBean】init successfully." );
105
- return factoryBean ;
110
+ return customizers . customize ( factoryBean ) ;
106
111
}
107
112
108
113
/**
0 commit comments