private void registerDubboConfigBean(String beanName, Class<? extends AbstractConfig> configClass, BeanDefinitionRegistry registry) { BeanDefinitionBuilder builder = rootBeanDefinition(configClass); AbstractBeanDefinition beanDefinition = builder.getBeanDefinition(); registry.registerBeanDefinition(beanName, beanDefinition); if (log.isInfoEnabled()) { log.info("The dubbo config bean definition [name : " + beanName + ", class : " + configClass.getName() + "] has been registered."); } }
private void registerCollectorAnalyzerQueue(ParserContext parserContext) { AbstractBeanDefinition partitionQueueDefinition = BeanDefinitionBuilder.genericBeanDefinition(ConcurrentLinkedQueue.class) .getBeanDefinition(); AbstractBeanDefinition partitionLockDefinition = BeanDefinitionBuilder.genericBeanDefinition(ReentrantLock.class) .getBeanDefinition(); parserContext.getRegistry().registerBeanDefinition(name + "PartitionQueue", partitionQueueDefinition); parserContext.getRegistry().registerBeanDefinition(name + "PartitionLock", partitionLockDefinition); }
/** * Registers a {@link SimpleControllerHandlerAdapter} under a well-known * name unless already registered. */ private static void registerSimpleControllerHandlerAdapter(ParserContext context, @Nullable Object source) { if (!context.getRegistry().containsBeanDefinition(SIMPLE_CONTROLLER_HANDLER_ADAPTER_BEAN_NAME)) { RootBeanDefinition beanDef = new RootBeanDefinition(SimpleControllerHandlerAdapter.class); beanDef.setSource(source); beanDef.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); context.getRegistry().registerBeanDefinition(SIMPLE_CONTROLLER_HANDLER_ADAPTER_BEAN_NAME, beanDef); context.registerComponent(new BeanComponentDefinition(beanDef, SIMPLE_CONTROLLER_HANDLER_ADAPTER_BEAN_NAME)); } }
@Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { String tokenServicesRef = element.getAttribute("token-services-ref"); String serializerRef = element.getAttribute("serialization-service-ref"); if (!StringUtils.hasText(tokenServicesRef)) { tokenServicesRef = "oauth2TokenServices"; BeanDefinitionBuilder tokenServices = BeanDefinitionBuilder.rootBeanDefinition(DefaultTokenServices.class); AbstractBeanDefinition tokenStore = BeanDefinitionBuilder.rootBeanDefinition(InMemoryTokenStore.class).getBeanDefinition(); tokenServices.addPropertyValue("tokenStore", tokenStore); parserContext.getRegistry().registerBeanDefinition(tokenServicesRef, tokenServices.getBeanDefinition()); } return parseEndpointAndReturnFilter(element, parserContext, tokenServicesRef, serializerRef); }
private void registerDubboConfigBean(String beanName, Class<? extends AbstractConfig> configClass, BeanDefinitionRegistry registry) { BeanDefinitionBuilder builder = rootBeanDefinition(configClass); AbstractBeanDefinition beanDefinition = builder.getBeanDefinition(); registry.registerBeanDefinition(beanName, beanDefinition); if (log.isInfoEnabled()) { log.info("The dubbo config bean definition [name : " + beanName + ", class : " + configClass.getName() + "] has been registered."); } }
/** * Registers an {@link HttpRequestHandlerAdapter} under a well-known * name unless already registered. */ private static void registerHttpRequestHandlerAdapter(ParserContext context, @Nullable Object source) { if (!context.getRegistry().containsBeanDefinition(HTTP_REQUEST_HANDLER_ADAPTER_BEAN_NAME)) { RootBeanDefinition adapterDef = new RootBeanDefinition(HttpRequestHandlerAdapter.class); adapterDef.setSource(source); adapterDef.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); context.getRegistry().registerBeanDefinition(HTTP_REQUEST_HANDLER_ADAPTER_BEAN_NAME, adapterDef); context.registerComponent(new BeanComponentDefinition(adapterDef, HTTP_REQUEST_HANDLER_ADAPTER_BEAN_NAME)); } }
private static void registerInfrastructureBean( ParserContext parserContext, BeanDefinitionBuilder builder, String beanName) { builder.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); parserContext.getRegistry().registerBeanDefinition(beanName, builder.getBeanDefinition()); BeanDefinitionHolder holder = new BeanDefinitionHolder(builder.getBeanDefinition(), beanName); parserContext.registerComponent(new BeanComponentDefinition(holder)); }
@Override public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { String[] names = BeanFactoryUtils.beanNamesForTypeIncludingAncestors(beanFactory, JwtAccessTokenConverter.class, false, false); if (names.length > 0) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(TokenKeyEndpoint.class); builder.addConstructorArgReference(names[0]); registry.registerBeanDefinition(TokenKeyEndpoint.class.getName(), builder.getBeanDefinition()); } }
@SuppressWarnings("unchecked") static void registerDefaultMethodAccessManagerIfNecessary(ParserContext parserContext) { if (!parserContext.getRegistry().containsBeanDefinition( BeanIds.METHOD_ACCESS_MANAGER)) { parserContext.getRegistry().registerBeanDefinition( BeanIds.METHOD_ACCESS_MANAGER, createAccessManagerBean(RoleVoter.class, AuthenticatedVoter.class)); } }
private static void registerPostProcessor( ParserContext parserContext, BeanDefinitionBuilder builder, String beanName) { builder.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); parserContext.getRegistry().registerBeanDefinition(beanName, builder.getBeanDefinition()); BeanDefinitionHolder holder = new BeanDefinitionHolder(builder.getBeanDefinition(), beanName); parserContext.registerComponent(new BeanComponentDefinition(holder)); }
private void registerEnvironmentBeanDefinition(BeanDefinitionRegistry registry) { registry.registerBeanDefinition(ENVIRONMENT_AWARE_BEAN_NAME, rootBeanDefinition(EnvironmentAwareBean.class).getBeanDefinition()); }
/** * Registers an {@link HandlerMappingIntrospector} under a well-known name * unless already registered. */ private static void registerHandlerMappingIntrospector(ParserContext parserContext, @Nullable Object source) { if (!parserContext.getRegistry().containsBeanDefinition(HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME)){ RootBeanDefinition beanDef = new RootBeanDefinition(HandlerMappingIntrospector.class); beanDef.setSource(source); beanDef.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); beanDef.setLazyInit(true); parserContext.getRegistry().registerBeanDefinition(HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME, beanDef); parserContext.registerComponent(new BeanComponentDefinition(beanDef, HANDLER_MAPPING_INTROSPECTOR_BEAN_NAME)); } }
private static void autoRegisterJobProperties(ParserContext parserContext) { if (!parserContext.getRegistry().containsBeanDefinition(JOB_PROPERTIES_BEAN_NAME)) { AbstractBeanDefinition jobPropertiesBeanDefinition = BeanDefinitionBuilder.genericBeanDefinition(HashMap.class).getBeanDefinition(); jobPropertiesBeanDefinition.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); parserContext.getRegistry().registerBeanDefinition(JOB_PROPERTIES_BEAN_NAME, jobPropertiesBeanDefinition); } }
private void registerMisconfiguredBeanDefinition(BeanDefinitionRegistry registry) { registry.registerBeanDefinition("misconfigured", rootBeanDefinition(Object.class).addPropertyValue("nonexistent", "bogus") .getBeanDefinition()); }
private static void registerBeanDefByName( String name, RootBeanDefinition beanDef, ParserContext context, @Nullable Object source) { beanDef.setSource(source); beanDef.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); context.getRegistry().registerBeanDefinition(name, beanDef); context.registerComponent(new BeanComponentDefinition(beanDef, name)); }
private static void autoRegisterBatchPropertyContext(ParserContext parserContext) { if (!parserContext.getRegistry().containsBeanDefinition(BATCH_PROPERTY_CONTEXT_BEAN_NAME)) { AbstractBeanDefinition batchPropertyContextBeanDefinition = BeanDefinitionBuilder.genericBeanDefinition(BATCH_PROPERTY_CONTEXT_BEAN_CLASS_NAME) .getBeanDefinition(); batchPropertyContextBeanDefinition.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); parserContext.getRegistry().registerBeanDefinition(BATCH_PROPERTY_CONTEXT_BEAN_NAME, batchPropertyContextBeanDefinition); } } }
private void registerStepClassBeanDefinition(ConfigurableListableBeanFactory beanFactory, Class<?> stepClass) { BeanDefinitionRegistry registry = (BeanDefinitionRegistry) beanFactory; BeanDefinition beanDefinition = BeanDefinitionBuilder .genericBeanDefinition(stepClass) .setScope(GlueCodeScope.NAME) .getBeanDefinition(); registry.registerBeanDefinition(stepClass.getName(), beanDefinition); }
@Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { String appCode = element.getAttribute("appCode"); String metaServer = element.getAttribute("metaServer"); builder.addPropertyValue("appCode", appCode); builder.addPropertyValue("metaServer", metaServer); if (!parserContext.getRegistry().containsBeanDefinition(QMQ_CLIENT_ANNOTATION)) { GenericBeanDefinition scanner = new GenericBeanDefinition(); scanner.setBeanClass(ConsumerAnnotationScanner.class); parserContext.getRegistry().registerBeanDefinition(QMQ_CLIENT_ANNOTATION, scanner); } }
private static void registerPostProcessor(ParserContext parserContext, Class<?> clazz, int role, String beanName) { BeanDefinitionBuilder beanDefinitionBuilder = BeanDefinitionBuilder.genericBeanDefinition(clazz); AbstractBeanDefinition beanDefinition = beanDefinitionBuilder.getBeanDefinition(); beanDefinition.setRole(role); parserContext.getRegistry().registerBeanDefinition(beanName, beanDefinition); }
public static boolean registerBeanDefinitionIfNotExists(BeanDefinitionRegistry registry, String beanName, Class<?> beanClass, Map<String, Object> extraPropertyValues) { if (registry.containsBeanDefinition(beanName)) { return false; } String[] candidates = registry.getBeanDefinitionNames(); for (String candidate : candidates) { BeanDefinition beanDefinition = registry.getBeanDefinition(candidate); if (Objects.equals(beanDefinition.getBeanClassName(), beanClass.getName())) { return false; } } BeanDefinition beanDefinition = BeanDefinitionBuilder.genericBeanDefinition(beanClass).getBeanDefinition(); if (extraPropertyValues != null) { for (Map.Entry<String, Object> entry : extraPropertyValues.entrySet()) { beanDefinition.getPropertyValues().add(entry.getKey(), entry.getValue()); } } registry.registerBeanDefinition(beanName, beanDefinition); return true; }