@AutoConfiguration @EnableConfigurationProperties(value=Crane4jAutoConfiguration.Properties.class) public class Crane4jAutoConfiguration extends Object
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.support.operator.ArgAutoOperateProxyMethodFactory |
argAutoOperateProxyMethodFactory(cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver elementResolver,
cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator expressionExecuteDelegate,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
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.parser.handler.AssembleKeyAnnotationHandler |
assembleKeyAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager,
Map<String,cn.crane4j.core.parser.handler.AssembleKeyAnnotationHandler.ValueMapperProvider> providers) |
cn.crane4j.core.executor.AsyncBeanOperationExecutor |
asyncBeanOperationExecutor(cn.crane4j.core.container.ContainerManager containerManager) |
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,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration) |
cn.crane4j.core.support.container.CacheableMethodContainerFactory |
cacheableMethodContainerFactory(cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.support.container.MethodInvokerContainerCreator methodInvokerContainerCreator,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
cn.crane4j.core.support.auto.ClassBasedAutoOperateAnnotatedElementResolver |
classBasedAutoOperateAnnotatedElementResolver(cn.crane4j.core.support.Crane4jGlobalConfiguration crane4jGlobalConfiguration,
cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator) |
ClassScanner |
classScanner() |
cn.crane4j.core.support.auto.ComposableAutoOperateAnnotatedElementResolver |
composableAutoOperateAnnotatedElementResolver(Collection<cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver> autoOperateAnnotatedElementResolvers) |
cn.crane4j.core.parser.ConditionalTypeHierarchyBeanOperationParser |
conditionalTypeHierarchyBeanOperationParser(Collection<cn.crane4j.core.parser.handler.OperationAnnotationHandler> handlers,
Collection<cn.crane4j.core.condition.ConditionParser> parsers) |
cn.crane4j.core.condition.ConditionOnContainerParser |
conditionOnContainerParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.container.ContainerManager containerManager) |
cn.crane4j.core.condition.ConditionOnExpressionParser |
conditionOnExpressionParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator,
org.springframework.context.expression.BeanFactoryResolver beanFactoryResolver) |
cn.crane4j.core.condition.ConditionOnPropertyNotEmptyParser |
conditionOnPropertyNotEmptyParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator) |
cn.crane4j.core.condition.ConditionOnPropertyNotNullParser |
conditionOnPropertyNotNullParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator) |
cn.crane4j.core.condition.ConditionOnPropertyParser |
conditionOnPropertyParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.condition.ConditionOnTargetTypeParser |
conditionOnTargetTypeParser(cn.crane4j.core.support.AnnotationFinder annotationFinder) |
cn.crane4j.core.container.lifecycle.ContainerInstanceLifecycleProcessor |
containerInstanceLifecycleProcessor() |
cn.crane4j.core.container.lifecycle.ContainerRegisterLogger |
containerRegisterLogger() |
Crane4jApplicationContext |
crane4jApplicationContext(org.springframework.context.ApplicationContext applicationContext,
Crane4jAutoConfiguration.Properties properties) |
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.Crane4jTemplate |
crane4jService(cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.OperateTemplate operateTemplate,
cn.crane4j.core.support.operator.OperatorProxyFactory operatorProxyFactory,
cn.crane4j.core.support.container.ContainerMethodAnnotationProcessor containerMethodAnnotationProcessor,
cn.crane4j.core.support.aop.AutoOperateProxy autoOperateProxy) |
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.proxy.DefaultProxyFactory |
defaultProxyFactory() |
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.cache.GuavaCacheManager |
guavaCacheManager() |
cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler |
manyToManyAssembleOperationHandler(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.cache.AbstractMapCacheManager |
mapCacheManager() |
MergedAnnotationFinder |
mergedAnnotationFinder() |
MethodArgumentAutoOperateAdvisor |
methodArgumentAutoOperateAdvisor(org.springframework.beans.factory.ObjectProvider<cn.crane4j.core.support.aop.MethodArgumentAutoOperateSupport> methodArgumentAutoOperateSupport) |
cn.crane4j.core.support.aop.MethodArgumentAutoOperateSupport |
methodArgumentAutoOperateSupport(cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator methodBasedExpressionEvaluator,
cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
cn.crane4j.core.support.ParameterNameFinder parameterNameDiscoverer,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
cn.crane4j.core.support.auto.MethodBasedAutoOperateAnnotatedElementResolver |
methodBasedAutoOperateAnnotatedElementResolver(cn.crane4j.core.support.Crane4jGlobalConfiguration crane4jGlobalConfiguration,
cn.crane4j.core.support.TypeResolver typeResolver) |
cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator |
methodBaseExpressionEvaluator(cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
org.springframework.expression.BeanResolver beanResolver) |
cn.crane4j.core.support.container.MethodInvokerContainerCreator |
methodInvokerContainerCreator(cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager) |
MethodResultAutoOperateAdvisor |
methodResultAutoOperateAdvisor(org.springframework.beans.factory.ObjectProvider<cn.crane4j.core.support.aop.MethodResultAutoOperateSupport> methodResultAutoOperateSupport) |
cn.crane4j.core.support.aop.MethodResultAutoOperateSupport |
methodResultAutoOperateSupport(cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator methodBasedExpressionEvaluator,
cn.crane4j.core.support.AnnotationFinder annotationFinder) |
NamedComponentAliasProcessor |
namedComponentAliasProcessor() |
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,
Crane4jAutoConfiguration.Properties properties) |
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.OperationAnnotationProxyMethodFactory |
operationAnnotationProxyMethodFactory(cn.crane4j.core.support.converter.ConverterManager converterManager) |
cn.crane4j.core.support.operator.OperatorProxyFactory |
operatorProxyFactory(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.support.proxy.ProxyFactory proxyFactory,
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.operator.ParametersFillProxyMethodFactory |
parametersFillProxyMethodFactory(cn.crane4j.core.parser.BeanOperationParser beanOperationParser) |
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) |
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() |
SoftConcurrentMapCacheManager |
softConcurrentMapCacheManager() |
SpelExpressionEvaluator |
spelExpressionEvaluator() |
SpringCacheableContainerProcessor |
springCacheableContainerProcessor(Crane4jApplicationContext configuration,
Crane4jAutoConfiguration.Properties properties) |
SpringConverterManager |
springConverterManager(org.springframework.core.convert.ConversionService conversionService) |
SpringParameterNameFinder |
springParameterNameFinder() |
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) |
@Bean public NamedComponentAliasProcessor namedComponentAliasProcessor()
@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, Crane4jAutoConfiguration.Properties properties)
@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()
@Primary @ConditionalOnMissingBean(value=cn.crane4j.core.cache.AbstractMapCacheManager.class) @Bean public cn.crane4j.core.cache.AbstractMapCacheManager mapCacheManager()
@ConditionalOnMissingBean(value=cn.crane4j.core.cache.GuavaCacheManager.class) @Bean public cn.crane4j.core.cache.GuavaCacheManager guavaCacheManager()
@ConditionalOnMissingBean @Bean public SoftConcurrentMapCacheManager softConcurrentMapCacheManager()
@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 @Bean public SpringCacheableContainerProcessor springCacheableContainerProcessor(Crane4jApplicationContext configuration, 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(value=cn.crane4j.core.support.auto.MethodBasedAutoOperateAnnotatedElementResolver.class)
@Bean
public cn.crane4j.core.support.auto.MethodBasedAutoOperateAnnotatedElementResolver methodBasedAutoOperateAnnotatedElementResolver(cn.crane4j.core.support.Crane4jGlobalConfiguration crane4jGlobalConfiguration,
cn.crane4j.core.support.TypeResolver typeResolver)
@ConditionalOnMissingBean(value=cn.crane4j.core.support.auto.ClassBasedAutoOperateAnnotatedElementResolver.class)
@Bean
public cn.crane4j.core.support.auto.ClassBasedAutoOperateAnnotatedElementResolver classBasedAutoOperateAnnotatedElementResolver(cn.crane4j.core.support.Crane4jGlobalConfiguration crane4jGlobalConfiguration,
cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator)
@Primary @Bean public cn.crane4j.core.support.auto.ComposableAutoOperateAnnotatedElementResolver composableAutoOperateAnnotatedElementResolver(Collection<cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver> autoOperateAnnotatedElementResolvers)
@ConditionalOnMissingBean
@ConditionalOnProperty(prefix="crane4j",
name="enable-method-container",
havingValue="true",
matchIfMissing=true)
@Bean
public BeanMethodContainerRegistrar beanMethodContainerPostProcessor(cn.crane4j.core.support.AnnotationFinder annotationFinder,
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)
@Bean
@ConditionalOnMissingBean
public cn.crane4j.core.support.Crane4jTemplate crane4jService(cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.OperateTemplate operateTemplate,
cn.crane4j.core.support.operator.OperatorProxyFactory operatorProxyFactory,
cn.crane4j.core.support.container.ContainerMethodAnnotationProcessor containerMethodAnnotationProcessor,
@Nullable
cn.crane4j.core.support.aop.AutoOperateProxy autoOperateProxy)
@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.AssembleKeyAnnotationHandler assembleKeyAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration,
cn.crane4j.core.parser.handler.strategy.PropertyMappingStrategyManager propertyMappingStrategyManager,
@Nullable
Map<String,cn.crane4j.core.parser.handler.AssembleKeyAnnotationHandler.ValueMapperProvider> providers)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.parser.handler.DisassembleAnnotationHandler disassembleAnnotationHandler(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.Crane4jGlobalConfiguration configuration)
@ConditionalOnBean(value=cn.crane4j.core.support.expression.ExpressionEvaluator.class)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.condition.ConditionOnExpressionParser conditionOnExpressionParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator,
org.springframework.context.expression.BeanFactoryResolver beanFactoryResolver)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.condition.ConditionOnPropertyNotNullParser conditionOnPropertyNotNullParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.condition.ConditionOnPropertyNotEmptyParser conditionOnPropertyNotEmptyParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.condition.ConditionOnPropertyParser conditionOnPropertyParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.support.reflect.PropertyOperator propertyOperator,
cn.crane4j.core.support.converter.ConverterManager converterManager)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.condition.ConditionOnContainerParser conditionOnContainerParser(cn.crane4j.core.support.AnnotationFinder annotationFinder,
cn.crane4j.core.container.ContainerManager containerManager)
@ConditionalOnMissingBean @Bean public cn.crane4j.core.condition.ConditionOnTargetTypeParser conditionOnTargetTypeParser(cn.crane4j.core.support.AnnotationFinder annotationFinder)
@ConditionalOnMissingBean @Bean public cn.crane4j.core.parser.ConditionalTypeHierarchyBeanOperationParser conditionalTypeHierarchyBeanOperationParser(Collection<cn.crane4j.core.parser.handler.OperationAnnotationHandler> handlers, Collection<cn.crane4j.core.condition.ConditionParser> parsers)
@Primary @ConditionalOnMissingBean @Bean public cn.crane4j.core.executor.DisorderedBeanOperationExecutor disorderedBeanOperationExecutor(cn.crane4j.core.container.ContainerManager containerManager)
@ConditionalOnMissingBean @Bean public cn.crane4j.core.executor.AsyncBeanOperationExecutor asyncBeanOperationExecutor(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
@ConditionalOnMissingBean(value=cn.crane4j.core.cache.CacheManager.class)
@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.support.Crane4jGlobalConfiguration configuration,
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,
Crane4jAutoConfiguration.Properties properties)
@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 @Bean public cn.crane4j.core.support.proxy.DefaultProxyFactory defaultProxyFactory()
@Lazy
@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,
cn.crane4j.core.support.proxy.ProxyFactory proxyFactory,
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.OperationAnnotationProxyMethodFactory operationAnnotationProxyMethodFactory(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)
@ConditionalOnBean(value=cn.crane4j.core.support.operator.OperatorProxyFactory.class) @ConditionalOnMissingBean @Order @Bean public cn.crane4j.core.support.operator.ParametersFillProxyMethodFactory parametersFillProxyMethodFactory(cn.crane4j.core.parser.BeanOperationParser beanOperationParser)
@ConditionalOnBean(value=cn.crane4j.core.support.operator.OperatorProxyFactory.class)
@ConditionalOnMissingBean
@Order
@Bean
public cn.crane4j.core.support.operator.ArgAutoOperateProxyMethodFactory argAutoOperateProxyMethodFactory(cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver elementResolver,
cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator expressionExecuteDelegate,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
cn.crane4j.core.support.AnnotationFinder annotationFinder)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator methodBaseExpressionEvaluator(cn.crane4j.core.support.expression.ExpressionEvaluator expressionEvaluator,
cn.crane4j.core.support.ParameterNameFinder parameterNameFinder,
org.springframework.expression.BeanResolver beanResolver)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.support.aop.MethodResultAutoOperateSupport methodResultAutoOperateSupport(cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator methodBasedExpressionEvaluator,
cn.crane4j.core.support.AnnotationFinder annotationFinder)
@Role(value=2)
@ConditionalOnMissingBean
@ConditionalOnProperty(prefix="crane4j",
name="enable-method-result-auto-operate",
havingValue="true",
matchIfMissing=true)
@Bean
public MethodResultAutoOperateAdvisor methodResultAutoOperateAdvisor(org.springframework.beans.factory.ObjectProvider<cn.crane4j.core.support.aop.MethodResultAutoOperateSupport> methodResultAutoOperateSupport)
@ConditionalOnMissingBean
@Bean
public cn.crane4j.core.support.aop.MethodArgumentAutoOperateSupport methodArgumentAutoOperateSupport(cn.crane4j.core.support.expression.MethodBasedExpressionEvaluator methodBasedExpressionEvaluator,
cn.crane4j.core.support.auto.AutoOperateAnnotatedElementResolver autoOperateAnnotatedElementResolver,
cn.crane4j.core.support.ParameterNameFinder parameterNameDiscoverer,
cn.crane4j.core.support.AnnotationFinder annotationFinder)
@Role(value=2)
@ConditionalOnMissingBean
@ConditionalOnProperty(prefix="crane4j",
name="enable-method-argument-auto-operate",
havingValue="true",
matchIfMissing=true)
@Bean
public MethodArgumentAutoOperateAdvisor methodArgumentAutoOperateAdvisor(org.springframework.beans.factory.ObjectProvider<cn.crane4j.core.support.aop.MethodArgumentAutoOperateSupport> methodArgumentAutoOperateSupport)
Copyright © 2024. All rights reserved.