@Configuration @EnableConfigurationProperties(value=Crane4jAutoConfiguration.Properties.class) public class Crane4jAutoConfiguration extends Object
The automatic configuration class of crane.
Inject the current configuration class into the Spring container,
or make it effective directly through EnableCrane4j annotation,
which will automatically assemble various components required by the crane runtime.
cn.crane4j.extension.spring| 限定符和类型 | 类和说明 |
|---|---|
static class |
Crane4jAutoConfiguration.Crane4jInitializer
The default initializer is used to initialize some caches or components after the application is started.
|
static class |
Crane4jAutoConfiguration.Properties
Configurable properties.
|
| 限定符和类型 | 字段和说明 |
|---|---|
static String |
CRANE_PREFIX |
| 构造器和说明 |
|---|
Crane4jAutoConfiguration() |
| 限定符和类型 | 方法和说明 |
|---|---|
cn.crane4j.core.parser.handler.AssembleEnumAnnotationHandler |
assembleEnumAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration globalConfiguration,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager) |
cn.crane4j.core.support.aop.AutoOperateAnnotatedElementResolver |
autoOperateMethodAnnotatedElementResolver(cn.crane4j.core.support.Crane4jGlobalConfiguration crane4jGlobalConfiguration,
cn.crane4j.core.support.TypeResolver typeResolver) |
BeanAwareAssembleMethodAnnotationHandler |
beanAwareAssembleMethodAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration globalConfiguration,
cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager,
Collection<cn.crane4j.core.support.container.MethodContainerFactory> methodContainerFactories,
org.springframework.context.ApplicationContext applicationContext) |
org.springframework.context.expression.BeanFactoryResolver |
beanFactoryResolver(org.springframework.context.ApplicationContext applicationContext) |
BeanMethodContainerRegistrar |
beanMethodContainerPostProcessor(cn.crane4j.core.support.AnnotationFinder annotationFinder,
Collection<cn.crane4j.core.support.container.MethodContainerFactory> factories,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration) |
cn.crane4j.core.container.lifecycle.CacheableContainerProcessor |
cacheableContainerProcessor(cn.crane4j.core.cache.CacheManager cacheManager,
Crane4jAutoConfiguration.Properties properties) |
cn.crane4j.core.support.container.CacheableMethodContainerFactory |
cacheableMethodContainerFactory(cn.crane4j.core.cache.CacheManager cacheManager,
cn.crane4j.core.support.container.MethodInvokerContainerCreator methodInvokerContainerCreator,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
ClassScanner |
classScanner() |
cn.crane4j.core.cache.ConcurrentMapCacheManager |
concurrentMapCacheManager() |
cn.crane4j.core.container.lifecycle.ContainerInstanceLifecycleProcessor |
containerInstanceLifecycleProcessor() |
cn.crane4j.core.container.lifecycle.ContainerRegisterLogger |
containerRegisterLogger() |
Crane4jApplicationContext |
crane4jApplicationContext(org.springframework.context.ApplicationContext applicationContext) |
Crane4jAutoConfiguration.Crane4jInitializer |
crane4jInitializer(ClassScanner classScanner,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
org.springframework.context.ApplicationContext applicationContext,
cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
Crane4jAutoConfiguration.Properties properties) |
cn.crane4j.core.support.DefaultContainerAdapterRegister |
defaultContainerAdapterRegister() |
cn.crane4j.core.support.container.DefaultMethodContainerFactory |
defaultMethodContainerFactory(cn.crane4j.core.support.container.MethodInvokerContainerCreator methodInvokerContainerCreator,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
cn.crane4j.core.support.operator.DefaultOperatorProxyMethodFactory |
defaultProxyMethodFactory(cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.parser.handler.DisassembleAnnotationHandler |
disassembleAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration) |
cn.crane4j.core.executor.DisorderedBeanOperationExecutor |
disorderedBeanOperationExecutor(cn.crane4j.core.container.ContainerManager containerManager) |
cn.crane4j.core.support.operator.DynamicContainerOperatorProxyMethodFactory |
dynamicContainerOperatorProxyMethodFactory(cn.crane4j.core.support.converter.ConverterManager converterManager,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.ContainerAdapterRegister containerAdapterRegister) |
cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler |
manyToManyAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
MergedAnnotationFinder |
mergedAnnotationFinder() |
MethodArgumentAutoOperateAdvisor |
methodArgumentAutoOperateAdvisor(cn.crane4j.core.support.expression.MethodBaseExpressionExecuteDelegate methodBaseExpressionExecuteDelegate,
cn.crane4j.core.support.aop.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
cn.crane4j.core.support.ParameterNameFinder parameterNameDiscoverer,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
cn.crane4j.core.support.container.MethodInvokerContainerCreator |
methodInvokerContainerCreator(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
MethodResultAutoOperateAdvisor |
methodResultAutoOperateAdvisor(cn.crane4j.core.support.aop.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
ResolvableExpressionEvaluator resolvableExpressionEvaluator) |
SpringConverterManager |
newSpringConverterManager() |
cn.crane4j.core.executor.handler.OneToManyAssembleOperationHandler |
oneToManyAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.executor.handler.OneToOneAssembleOperationHandler |
oneToOneAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.support.OperateTemplate |
operateTemplate(cn.crane4j.core.parser.BeanOperationParser parser,
cn.crane4j.core.executor.BeanOperationExecutor executor,
cn.crane4j.core.support.TypeResolver typeResolver) |
cn.crane4j.core.support.operator.OperatorProxyFactory |
operatorProxyFactory(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
Collection<cn.crane4j.core.support.operator.OperatorProxyMethodFactory> factories) |
cn.crane4j.core.executor.OrderedBeanOperationExecutor |
orderedBeanOperationExecutor(cn.crane4j.core.container.ContainerManager containerManager) |
cn.crane4j.core.parser.handler.strategy.OverwriteMappingStrategy |
overwriteMappingStrategy() |
cn.crane4j.core.parser.handler.strategy.OverwriteNotNullMappingStrategy |
overwriteNotNullMappingStrategy() |
cn.crane4j.core.support.reflect.PropertyOperator |
propertyOperator(Crane4jAutoConfiguration.Properties properties,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.parser.handler.strategy.ReferenceMappingStrategy |
referenceMappingStrategy(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator) |
cn.crane4j.core.executor.handler.ReflectiveDisassembleOperationHandler |
reflectiveDisassembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator) |
ResolvableExpressionEvaluator |
resolvableExpressionEvaluator(cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
org.springframework.expression.BeanResolver beanResolver) |
ScannedContainerRegistrar |
scannedContainerRegister() |
cn.crane4j.core.parser.handler.strategy.SimplePropertyMappingStrategyManager |
simplePropertyMappingStrategyManager(Collection<cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategy> propertyMappingStrategies) |
cn.crane4j.core.support.SimpleTypeResolver |
simpleTypeResolver() |
SpelExpressionEvaluator |
spelExpressionEvaluator() |
SpringConverterManager |
springConverterManager(org.springframework.core.convert.ConversionService conversionService) |
SpringParameterNameFinder |
springParameterNameFinder() |
cn.crane4j.core.parser.TypeHierarchyBeanOperationParser |
typeHierarchyBeanOperationParser(Collection<cn.crane4j.core.parser.handler.OperationAnnotationHandler> resolvers) |
ValueResolveAssembleAnnotationHandler |
valueResolveAssembleAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.support.expression.ExpressionEvaluator evaluator,
org.springframework.expression.BeanResolver beanResolver,
cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager) |
@ConditionalOnMissingBean(value=cn.crane4j.extension.spring.scanner.ClassScanner.class) @Bean public ClassScanner classScanner()
@ConditionalOnBean(value=org.springframework.core.convert.ConversionService.class) @ConditionalOnMissingBean(value=cn.crane4j.core.support.converter.ConverterManager.class) @Bean public SpringConverterManager springConverterManager(org.springframework.core.convert.ConversionService conversionService)
@ConditionalOnMissingBean(value={org.springframework.core.convert.ConversionService.class,cn.crane4j.core.support.converter.ConverterManager.class})
@Bean
public SpringConverterManager newSpringConverterManager()
@Primary @ConditionalOnMissingBean @Bean public Crane4jApplicationContext crane4jApplicationContext(org.springframework.context.ApplicationContext applicationContext)
@ConditionalOnMissingBean @Bean public ScannedContainerRegistrar scannedContainerRegister()
@Bean public cn.crane4j.core.support.reflect.PropertyOperator propertyOperator(Crane4jAutoConfiguration.Properties properties, cn.crane4j.core.support.converter.ConverterManager converterManager)
@ConditionalOnMissingBean(value=cn.crane4j.core.support.AnnotationFinder.class) @Bean public MergedAnnotationFinder mergedAnnotationFinder()
@ConditionalOnMissingBean(value=cn.crane4j.core.support.TypeResolver.class) @Bean public cn.crane4j.core.support.SimpleTypeResolver simpleTypeResolver()
@ConditionalOnMissingBean(value=cn.crane4j.core.support.expression.ExpressionEvaluator.class) @Bean public SpelExpressionEvaluator spelExpressionEvaluator()
@ConditionalOnMissingBean(value=cn.crane4j.core.cache.CacheManager.class) @Bean public cn.crane4j.core.cache.ConcurrentMapCacheManager concurrentMapCacheManager()
@Order(value=0) @Bean public cn.crane4j.core.container.lifecycle.ContainerInstanceLifecycleProcessor containerInstanceLifecycleProcessor()
@Order(value=1) @Bean public cn.crane4j.core.container.lifecycle.ContainerRegisterLogger containerRegisterLogger()
@Order(value=2)
@ConditionalOnMissingBean
@ConditionalOnBean(value=cn.crane4j.core.cache.CacheManager.class)
@Bean
public cn.crane4j.core.container.lifecycle.CacheableContainerProcessor cacheableContainerProcessor(cn.crane4j.core.cache.CacheManager cacheManager,
Crane4jAutoConfiguration.Properties properties)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.support.OperateTemplate operateTemplate(cn.crane4j.core.parser.BeanOperationParser parser,
cn.crane4j.core.executor.BeanOperationExecutor executor,
cn.crane4j.core.support.TypeResolver typeResolver)
@ConditionalOnMissingBean(value=cn.crane4j.core.support.ParameterNameFinder.class) @Bean public SpringParameterNameFinder springParameterNameFinder()
@Bean public cn.crane4j.core.support.DefaultContainerAdapterRegister defaultContainerAdapterRegister()
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.support.aop.AutoOperateAnnotatedElementResolver autoOperateMethodAnnotatedElementResolver(cn.crane4j.core.support.Crane4jGlobalConfiguration crane4jGlobalConfiguration,
cn.crane4j.core.support.TypeResolver typeResolver)
@ConditionalOnMissingBean
@ConditionalOnProperty(prefix="crane4j",
name="enable-method-container",
havingValue="true",
matchIfMissing=true)
@Bean
public BeanMethodContainerRegistrar beanMethodContainerPostProcessor(cn.crane4j.core.support.AnnotationFinder annotationFinder,
Collection<cn.crane4j.core.support.container.MethodContainerFactory> factories,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration)
@ConditionalOnMissingBean @Bean public Crane4jAutoConfiguration.Crane4jInitializer crane4jInitializer(ClassScanner classScanner, cn.crane4j.core.support.reflect.PropertyOperator propertyOperator, org.springframework.context.ApplicationContext applicationContext, cn.crane4j.core.support.AnnotationFinder annotationFinder, cn.crane4j.core.support.Crane4jGlobalConfiguration configuration, Crane4jAutoConfiguration.Properties properties)
@ConditionalOnMissingBean @Bean public cn.crane4j.core.parser.handler.strategy.SimplePropertyMappingStrategyManager simplePropertyMappingStrategyManager(Collection<cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategy> propertyMappingStrategies)
@Bean public cn.crane4j.core.parser.handler.strategy.OverwriteNotNullMappingStrategy overwriteNotNullMappingStrategy()
@Bean public cn.crane4j.core.parser.handler.strategy.OverwriteMappingStrategy overwriteMappingStrategy()
@Bean public cn.crane4j.core.parser.handler.strategy.ReferenceMappingStrategy referenceMappingStrategy(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator)
@ConditionalOnMissingBean(value=org.springframework.expression.BeanResolver.class) @Bean public org.springframework.context.expression.BeanFactoryResolver beanFactoryResolver(org.springframework.context.ApplicationContext applicationContext)
@ConditionalOnMissingBean(value=cn.crane4j.core.parser.handler.AssembleAnnotationHandler.class) @Bean public ValueResolveAssembleAnnotationHandler valueResolveAssembleAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder, cn.crane4j.core.support.Crane4jGlobalConfiguration configuration, cn.crane4j.core.support.expression.ExpressionEvaluator evaluator, org.springframework.expression.BeanResolver beanResolver, cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager)
@ConditionalOnMissingBean(value=cn.crane4j.core.parser.handler.AssembleMethodAnnotationHandler.class) @Bean public BeanAwareAssembleMethodAnnotationHandler beanAwareAssembleMethodAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder, cn.crane4j.core.support.Crane4jGlobalConfiguration globalConfiguration, cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager, Collection<cn.crane4j.core.support.container.MethodContainerFactory> methodContainerFactories, org.springframework.context.ApplicationContext applicationContext)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.parser.handler.AssembleEnumAnnotationHandler assembleEnumAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration globalConfiguration,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.parser.handler.DisassembleAnnotationHandler disassembleAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration)
@ConditionalOnMissingBean @Bean public cn.crane4j.core.parser.TypeHierarchyBeanOperationParser typeHierarchyBeanOperationParser(Collection<cn.crane4j.core.parser.handler.OperationAnnotationHandler> resolvers)
@Primary @ConditionalOnMissingBean @Bean public cn.crane4j.core.executor.DisorderedBeanOperationExecutor disorderedBeanOperationExecutor(cn.crane4j.core.container.ContainerManager containerManager)
@ConditionalOnMissingBean @Bean public cn.crane4j.core.executor.OrderedBeanOperationExecutor orderedBeanOperationExecutor(cn.crane4j.core.container.ContainerManager containerManager)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.support.container.MethodInvokerContainerCreator methodInvokerContainerCreator(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager)
@Order
@Bean
public cn.crane4j.core.support.container.DefaultMethodContainerFactory defaultMethodContainerFactory(cn.crane4j.core.support.container.MethodInvokerContainerCreator methodInvokerContainerCreator,
cn.crane4j.core.support.AnnotationFinder annotationFinder)
@Order(value=2147483646)
@ConditionalOnBean(value=cn.crane4j.core.cache.CacheManager.class)
@Bean
public cn.crane4j.core.support.container.CacheableMethodContainerFactory cacheableMethodContainerFactory(cn.crane4j.core.cache.CacheManager cacheManager,
cn.crane4j.core.support.container.MethodInvokerContainerCreator methodInvokerContainerCreator,
cn.crane4j.core.support.AnnotationFinder annotationFinder)
@Primary
@Bean
public cn.crane4j.core.executor.handler.OneToOneAssembleOperationHandler oneToOneAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager)
@Bean
public cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler manyToManyAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager)
@Bean
public cn.crane4j.core.executor.handler.OneToManyAssembleOperationHandler oneToManyAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager)
@Primary @ConditionalOnMissingBean @Bean public cn.crane4j.core.executor.handler.ReflectiveDisassembleOperationHandler reflectiveDisassembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator)
@ConditionalOnMissingBean(value=cn.crane4j.core.support.operator.OperatorProxyMethodFactory.class)
@Bean
public cn.crane4j.core.support.operator.OperatorProxyFactory operatorProxyFactory(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
Collection<cn.crane4j.core.support.operator.OperatorProxyMethodFactory> factories)
@ConditionalOnBean(value=cn.crane4j.core.support.operator.OperatorProxyFactory.class) @ConditionalOnMissingBean @Bean public cn.crane4j.core.support.operator.DefaultOperatorProxyMethodFactory defaultProxyMethodFactory(cn.crane4j.core.support.converter.ConverterManager converterManager)
@ConditionalOnBean(value=cn.crane4j.core.support.operator.OperatorProxyFactory.class)
@ConditionalOnMissingBean
@Order
@Bean
public cn.crane4j.core.support.operator.DynamicContainerOperatorProxyMethodFactory dynamicContainerOperatorProxyMethodFactory(cn.crane4j.core.support.converter.ConverterManager converterManager,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.ContainerAdapterRegister containerAdapterRegister)
@ConditionalOnMissingBean @Bean public ResolvableExpressionEvaluator resolvableExpressionEvaluator(cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator, cn.crane4j.core.support.ParameterNameFinder parameterNameFinder, org.springframework.expression.BeanResolver beanResolver)
@ConditionalOnMissingBean
@ConditionalOnProperty(prefix="crane4j",
name="enable-method-result-auto-operate",
havingValue="true",
matchIfMissing=true)
@Bean
public MethodResultAutoOperateAdvisor methodResultAutoOperateAdvisor(cn.crane4j.core.support.aop.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
ResolvableExpressionEvaluator resolvableExpressionEvaluator)
@ConditionalOnMissingBean
@ConditionalOnProperty(prefix="crane4j",
name="enable-method-argument-auto-operate",
havingValue="true",
matchIfMissing=true)
@Bean
public MethodArgumentAutoOperateAdvisor methodArgumentAutoOperateAdvisor(cn.crane4j.core.support.expression.MethodBaseExpressionExecuteDelegate methodBaseExpressionExecuteDelegate,
cn.crane4j.core.support.aop.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
cn.crane4j.core.support.ParameterNameFinder parameterNameDiscoverer,
cn.crane4j.core.support.AnnotationFinder annotationFinder)
Copyright © 2023. All rights reserved.