类 MagicAPIAutoConfiguration
java.lang.Object
org.ssssssss.magicapi.spring.boot.starter.MagicAPIAutoConfiguration
- 所有已实现的接口:
org.springframework.web.servlet.config.annotation.WebMvcConfigurer,org.springframework.web.socket.config.annotation.WebSocketConfigurer
@Configuration
@ConditionalOnClass(org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.class)
@EnableConfigurationProperties(org.ssssssss.magicapi.core.config.MagicAPIProperties.class)
@Import({MagicServletConfiguration.class,MagicJsonAutoConfiguration.class,ApplicationUriPrinter.class,MagicModuleConfiguration.class,MagicDynamicRegistryConfiguration.class})
@EnableWebSocket
@AutoConfigureAfter(org.ssssssss.magicapi.core.config.MagicPluginConfiguration.class)
public class MagicAPIAutoConfiguration
extends Object
implements org.springframework.web.servlet.config.annotation.WebMvcConfigurer, org.springframework.web.socket.config.annotation.WebSocketConfigurer
magic-api自动配置类
- 作者:
- mxd
-
字段概要
字段修饰符和类型字段说明private final org.springframework.context.ApplicationContextprivate final org.springframework.beans.factory.ObjectProvider<AuthorizationInterceptor> private final org.springframework.beans.factory.ObjectProvider<DataSourceEncryptProvider> private final org.springframework.beans.factory.ObjectProvider<List<org.ssssssss.script.functions.ExtensionMethod>> 自定义的类型扩展private final org.springframework.beans.factory.ObjectProvider<List<org.springframework.http.converter.HttpMessageConverter<?>>> 内置的消息转换private static final org.slf4j.Loggerprivate final org.springframework.beans.factory.ObjectProvider<List<MagicDynamicRegistry<? extends MagicEntity>>> private final org.springframework.beans.factory.ObjectProvider<List<MagicFunction>> 自定义的函数private final org.springframework.beans.factory.ObjectProvider<MagicNotifyService> private final org.springframework.beans.factory.ObjectProvider<List<MagicPluginConfiguration>> private final org.springframework.beans.factory.ObjectProvider<List<MagicResourceStorage<? extends MagicEntity>>> private final MagicAPIPropertiesprivate booleanprivate booleanprivate final org.springframework.beans.factory.ObjectProvider<List<RequestInterceptor>> 请求拦截器private org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping -
构造器概要
构造器构造器说明MagicAPIAutoConfiguration(MagicAPIProperties properties, org.springframework.beans.factory.ObjectProvider<List<RequestInterceptor>> requestInterceptorsProvider, org.springframework.beans.factory.ObjectProvider<List<org.ssssssss.script.functions.ExtensionMethod>> extensionMethodsProvider, org.springframework.beans.factory.ObjectProvider<List<org.springframework.http.converter.HttpMessageConverter<?>>> httpMessageConvertersProvider, org.springframework.beans.factory.ObjectProvider<List<MagicFunction>> magicFunctionsProvider, org.springframework.beans.factory.ObjectProvider<List<MagicPluginConfiguration>> magicPluginsProvider, org.springframework.beans.factory.ObjectProvider<MagicNotifyService> magicNotifyServiceProvider, org.springframework.beans.factory.ObjectProvider<AuthorizationInterceptor> authorizationInterceptorProvider, org.springframework.beans.factory.ObjectProvider<DataSourceEncryptProvider> dataSourceEncryptProvider, org.springframework.beans.factory.ObjectProvider<List<MagicDynamicRegistry<? extends MagicEntity>>> magicDynamicRegistriesProvider, org.springframework.beans.factory.ObjectProvider<List<MagicResourceStorage<? extends MagicEntity>>> magicResourceStoragesProvider, org.springframework.context.ApplicationContext applicationContext) -
方法概要
修饰符和类型方法说明voidaddResourceHandlers(org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry registry) authorizationInterceptor(MagicAPIProperties properties) ipLimitRequestInterceptor(String whitelist, String blacklist) magicAPIService(ResultProvider resultProvider, MagicResourceService magicResourceService, MagicRequestContextHolder magicRequestContextHolder, RequestMagicDynamicRegistry requestMagicDynamicRegistry, FunctionMagicDynamicRegistry functionMagicDynamicRegistry) 注入API调用ServicemagicConfiguration(List<LanguageProvider> languageProviders, Resource magicResource, ResultProvider resultProvider, MagicResourceService magicResourceService, MagicAPIService magicAPIService, MagicNotifyService magicNotifyService, RequestMagicDynamicRegistry requestMagicDynamicRegistry, MagicBackupService magicBackupService) magicDatabaseBackupService(MagicDynamicDataSource magicDynamicDataSource) magicDatabaseResource(MagicDynamicDataSource magicDynamicDataSource) magicResourceService(Resource workspace) voidregisterWebSocketHandlers(org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry webSocketHandlerRegistry) private voidsetupMagicModules(List<org.ssssssss.script.functions.ExtensionMethod> extensionMethods, List<LanguageProvider> languageProviders) 注册模块、类型扩展webIPLimitRequestInterceptor(String whitelist, String blacklist) 注入API调用Service从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 org.springframework.web.servlet.config.annotation.WebMvcConfigurer
addArgumentResolvers, addCorsMappings, addFormatters, addInterceptors, addReturnValueHandlers, addViewControllers, configureAsyncSupport, configureContentNegotiation, configureDefaultServletHandling, configureHandlerExceptionResolvers, configureMessageConverters, configurePathMatch, configureViewResolvers, extendHandlerExceptionResolvers, extendMessageConverters, getMessageCodesResolver, getValidator
-
字段详细资料
-
logger
private static final org.slf4j.Logger logger -
requestInterceptorsProvider
private final org.springframework.beans.factory.ObjectProvider<List<RequestInterceptor>> requestInterceptorsProvider请求拦截器 -
extensionMethodsProvider
private final org.springframework.beans.factory.ObjectProvider<List<org.ssssssss.script.functions.ExtensionMethod>> extensionMethodsProvider自定义的类型扩展 -
httpMessageConvertersProvider
private final org.springframework.beans.factory.ObjectProvider<List<org.springframework.http.converter.HttpMessageConverter<?>>> httpMessageConvertersProvider内置的消息转换 -
authorizationInterceptorProvider
private final org.springframework.beans.factory.ObjectProvider<AuthorizationInterceptor> authorizationInterceptorProvider -
magicFunctionsProvider
private final org.springframework.beans.factory.ObjectProvider<List<MagicFunction>> magicFunctionsProvider自定义的函数 -
magicPluginsProvider
private final org.springframework.beans.factory.ObjectProvider<List<MagicPluginConfiguration>> magicPluginsProvider -
magicNotifyServiceProvider
private final org.springframework.beans.factory.ObjectProvider<MagicNotifyService> magicNotifyServiceProvider -
magicDynamicRegistriesProvider
private final org.springframework.beans.factory.ObjectProvider<List<MagicDynamicRegistry<? extends MagicEntity>>> magicDynamicRegistriesProvider -
magicResourceStoragesProvider
private final org.springframework.beans.factory.ObjectProvider<List<MagicResourceStorage<? extends MagicEntity>>> magicResourceStoragesProvider -
dataSourceEncryptProvider
private final org.springframework.beans.factory.ObjectProvider<DataSourceEncryptProvider> dataSourceEncryptProvider -
properties
-
applicationContext
private final org.springframework.context.ApplicationContext applicationContext -
registerMapping
private boolean registerMapping -
registerWebsocket
private boolean registerWebsocket -
requestMappingHandlerMapping
@Autowired @Lazy private org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping requestMappingHandlerMapping
-
-
构造器详细资料
-
MagicAPIAutoConfiguration
public MagicAPIAutoConfiguration(MagicAPIProperties properties, org.springframework.beans.factory.ObjectProvider<List<RequestInterceptor>> requestInterceptorsProvider, org.springframework.beans.factory.ObjectProvider<List<org.ssssssss.script.functions.ExtensionMethod>> extensionMethodsProvider, org.springframework.beans.factory.ObjectProvider<List<org.springframework.http.converter.HttpMessageConverter<?>>> httpMessageConvertersProvider, org.springframework.beans.factory.ObjectProvider<List<MagicFunction>> magicFunctionsProvider, org.springframework.beans.factory.ObjectProvider<List<MagicPluginConfiguration>> magicPluginsProvider, org.springframework.beans.factory.ObjectProvider<MagicNotifyService> magicNotifyServiceProvider, org.springframework.beans.factory.ObjectProvider<AuthorizationInterceptor> authorizationInterceptorProvider, org.springframework.beans.factory.ObjectProvider<DataSourceEncryptProvider> dataSourceEncryptProvider, org.springframework.beans.factory.ObjectProvider<List<MagicDynamicRegistry<? extends MagicEntity>>> magicDynamicRegistriesProvider, org.springframework.beans.factory.ObjectProvider<List<MagicResourceStorage<? extends MagicEntity>>> magicResourceStoragesProvider, org.springframework.context.ApplicationContext applicationContext)
-
-
方法详细资料
-
magicDatabaseResource
@Bean @ConditionalOnMissingBean(org.ssssssss.magicapi.core.resource.Resource.class) @ConditionalOnProperty(prefix="magic-api", name="resource.type", havingValue="database") public Resource magicDatabaseResource(MagicDynamicDataSource magicDynamicDataSource) -
magicResource
@Bean @ConditionalOnMissingBean(org.ssssssss.magicapi.core.resource.Resource.class) @ConditionalOnProperty(prefix="magic-api", name="resource.type", havingValue="file", matchIfMissing=true) public Resource magicResource() throws IOException- 抛出:
IOException
-
magicDatabaseBackupService
@Bean @ConditionalOnMissingBean(org.ssssssss.magicapi.backup.service.MagicBackupService.class) @ConditionalOnProperty(prefix="magic-api", name="backup.enable", havingValue="true") public MagicBackupService magicDatabaseBackupService(MagicDynamicDataSource magicDynamicDataSource) -
addResourceHandlers
public void addResourceHandlers(org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry registry) - 指定者:
addResourceHandlers在接口中org.springframework.web.servlet.config.annotation.WebMvcConfigurer
-
magicResourceService
@Bean @ConditionalOnMissingBean public MagicResourceService magicResourceService(Resource workspace) -
magicNotifyService
@Bean @ConditionalOnMissingBean(org.ssssssss.magicapi.core.service.MagicNotifyService.class) public MagicNotifyService magicNotifyService() -
magicAPIService
@Bean @ConditionalOnMissingBean public MagicAPIService magicAPIService(ResultProvider resultProvider, MagicResourceService magicResourceService, MagicRequestContextHolder magicRequestContextHolder, RequestMagicDynamicRegistry requestMagicDynamicRegistry, FunctionMagicDynamicRegistry functionMagicDynamicRegistry) 注入API调用Service -
webIPLimitRequestInterceptor
@Bean @ConditionalOnProperty(prefix="magic-api.web-iplimit", name="enable", havingValue="true", matchIfMissing=true) public WebIPLimitRequestInterceptor webIPLimitRequestInterceptor(@Value("${magic-api.web-iplimit.whitelist: }") String whitelist, @Value("${magic-api.web-iplimit.blacklist: }") String blacklist) 注入API调用Service -
ipLimitRequestInterceptor
@Bean @ConditionalOnProperty(prefix="magic-api.api-iplimit", name="enable", havingValue="true", matchIfMissing=true) public IpLimitRequestInterceptor ipLimitRequestInterceptor(@Value("${magic-api.api-iplimit.whitelist: }") String whitelist, @Value("${magic-api.api-iplimit.blacklist: }") String blacklist) -
setupMagicModules
private void setupMagicModules(List<org.ssssssss.script.functions.ExtensionMethod> extensionMethods, List<LanguageProvider> languageProviders) 注册模块、类型扩展 -
magicWebSocketSessionManager
-
magicConfiguration
@Bean public MagicConfiguration magicConfiguration(List<LanguageProvider> languageProviders, Resource magicResource, ResultProvider resultProvider, MagicResourceService magicResourceService, MagicAPIService magicAPIService, MagicNotifyService magicNotifyService, RequestMagicDynamicRegistry requestMagicDynamicRegistry, @Autowired(required=false) MagicBackupService magicBackupService) throws NoSuchMethodException -
authorizationInterceptor
@Bean @ConditionalOnMissingBean public AuthorizationInterceptor authorizationInterceptor(MagicAPIProperties properties) -
registerWebSocketHandlers
public void registerWebSocketHandlers(org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry webSocketHandlerRegistry) - 指定者:
registerWebSocketHandlers在接口中org.springframework.web.socket.config.annotation.WebSocketConfigurer
-