List of usage examples for org.springframework.beans.factory.support BeanDefinitionBuilder genericBeanDefinition
public static BeanDefinitionBuilder genericBeanDefinition(Class<?> beanClass)
From source file:org.springframework.social.config.support.ProviderConfigSupport.java
public static BeanDefinition registerApiBindingBean(BeanDefinitionRegistry registry, Class<? extends ApiHelper<?>> apiHelperClass, Class<?> apiBindingType) { if (logger.isDebugEnabled()) { logger.debug("Registering API Helper bean for " + ClassUtils.getShortName(apiBindingType)); }//ww w . j a v a2s .co m String helperId = "__" + ClassUtils.getShortNameAsProperty(apiBindingType) + "ApiHelper"; // TODO: Make the bean IDs here configurable. BeanDefinition helperBD = BeanDefinitionBuilder.genericBeanDefinition(apiHelperClass) .addConstructorArgReference("usersConnectionRepository").addConstructorArgReference("userIdSource") .getBeanDefinition(); registry.registerBeanDefinition(helperId, helperBD); if (logger.isDebugEnabled()) { logger.debug("Creating API Binding bean for " + ClassUtils.getShortName(apiBindingType)); } BeanDefinition bindingBD = BeanDefinitionBuilder.genericBeanDefinition().getBeanDefinition(); bindingBD.setFactoryBeanName(helperId); bindingBD.setFactoryMethodName("getApi"); bindingBD.setScope("request"); BeanDefinitionHolder scopedProxyBDH = ScopedProxyUtils.createScopedProxy( new BeanDefinitionHolder(bindingBD, ClassUtils.getShortNameAsProperty(apiBindingType)), registry, false); registry.registerBeanDefinition(scopedProxyBDH.getBeanName(), scopedProxyBDH.getBeanDefinition()); return scopedProxyBDH.getBeanDefinition(); }
From source file:org.springframework.social.config.support.ProviderConfigurationSupport.java
/** * Creates a BeanDefinition for a provider connection factory. * Although most providers will not need to override this method, it does allow for overriding to address any provider-specific needs. * @param appId The application's App ID * @param appSecret The application's App Secret * @param allAttributes All attributes available on the configuration element. Useful for provider-specific configuration. * @return a BeanDefinition for the provider's connection factory bean. *//* www . ja v a 2s .c o m*/ protected BeanDefinition getConnectionFactoryBeanDefinition(String appId, String appSecret, Map<String, Object> allAttributes) { return BeanDefinitionBuilder.genericBeanDefinition(connectionFactoryClass).addConstructorArgValue(appId) .addConstructorArgValue(appSecret).getBeanDefinition(); }
From source file:org.springframework.social.config.support.ProviderConfigurationSupport.java
protected BeanDefinition getAuthenticationServiceBeanDefinition(String appId, String appSecret, Map<String, Object> allAttributes) { return BeanDefinitionBuilder.genericBeanDefinition(authenticationServiceClass).addConstructorArgValue(appId) .addConstructorArgValue(appSecret).getBeanDefinition(); }
From source file:org.springframework.social.config.support.ProviderConfigurationSupport.java
private BeanDefinition registerConnectionFactoryLocatorBean(BeanDefinitionRegistry registry) { Class<?> connectionFactoryRegistryClass = isSocialSecurityAvailable() ? org.springframework.social.security.SocialAuthenticationServiceRegistry.class : ConnectionFactoryRegistry.class; if (!registry.containsBeanDefinition(CONNECTION_FACTORY_LOCATOR_ID)) { if (logger.isDebugEnabled()) { logger.debug("Registering ConnectionFactoryLocator bean (" + connectionFactoryRegistryClass.getName() + ")"); }// w w w . j a va2 s. c o m BeanDefinitionHolder connFactoryLocatorBeanDefHolder = new BeanDefinitionHolder( BeanDefinitionBuilder.genericBeanDefinition(connectionFactoryRegistryClass).getBeanDefinition(), CONNECTION_FACTORY_LOCATOR_ID); BeanDefinitionHolder scopedProxy = ScopedProxyUtils.createScopedProxy(connFactoryLocatorBeanDefHolder, registry, false); registry.registerBeanDefinition(scopedProxy.getBeanName(), scopedProxy.getBeanDefinition()); } BeanDefinition connectionFactoryLocatorBD = registry .getBeanDefinition(ScopedProxyUtils.getTargetBeanName(CONNECTION_FACTORY_LOCATOR_ID)); return connectionFactoryLocatorBD; }
From source file:org.springframework.social.config.support.ProviderConfigurationSupport.java
/** * Subclassing hook to allow api helper bean to be configured with attributes from annotation * @param allAttributes additional attributes that may be used when creating the API helper bean. * @return a {@link BeanDefinitionBuilder} for the API Helper *///from w w w . j a v a2 s . co m protected BeanDefinitionBuilder getApiHelperBeanDefinitionBuilder(Map<String, Object> allAttributes) { return BeanDefinitionBuilder.genericBeanDefinition(apiHelperClass) .addConstructorArgReference("usersConnectionRepository").addConstructorArgReference("userIdSource"); }
From source file:org.springframework.social.extension.config.support.InMemoryConnectionRepositoryConfigSupport.java
private BeanDefinition registerUsersConnectionRepositoryBeanDefinition(BeanDefinitionRegistry registry, String usersConnectionRepositoryId, String connectionFactoryLocatorRef, String connectionSignUpRef) { if (logger.isDebugEnabled()) { logger.debug("Registering JpaUsersConnectionRepository bean"); }/*from w w w .j a v a 2 s . c o m*/ BeanDefinitionBuilder usersConnectionRepositoryBeanBuilder = BeanDefinitionBuilder .genericBeanDefinition(JpaUsersConnectionRepository.class) .addConstructorArgReference(connectionFactoryLocatorRef); if (connectionSignUpRef != null && connectionSignUpRef.length() > 0) { usersConnectionRepositoryBeanBuilder.addPropertyReference("connectionSignUp", connectionSignUpRef); } BeanDefinition usersConnectionRepositoryBD = usersConnectionRepositoryBeanBuilder.getBeanDefinition(); BeanDefinition scopedProxyBean = decorateWithScopedProxy(usersConnectionRepositoryId, usersConnectionRepositoryBD, registry); registry.registerBeanDefinition(usersConnectionRepositoryId, scopedProxyBean); return scopedProxyBean; }
From source file:org.springframework.social.extension.config.support.JpaConnectionRepositoryConfigSupport.java
private BeanDefinition registerUsersConnectionRepositoryBeanDefinition(BeanDefinitionRegistry registry, String usersConnectionRepositoryId, String connectionFactoryLocatorRef, String jpaTemplateRef, String encryptorRef, String connectionSignUpRef) { if (logger.isDebugEnabled()) { logger.debug("Registering JpaUsersConnectionRepository bean"); }/*from w ww . j a v a 2 s .c o m*/ BeanDefinitionBuilder usersConnectionRepositoryBeanBuilder = BeanDefinitionBuilder .genericBeanDefinition(JpaUsersConnectionRepository.class) .addConstructorArgReference(jpaTemplateRef).addConstructorArgReference(connectionFactoryLocatorRef) .addConstructorArgReference(encryptorRef); if (connectionSignUpRef != null && connectionSignUpRef.length() > 0) { usersConnectionRepositoryBeanBuilder.addPropertyReference("connectionSignUp", connectionSignUpRef); } BeanDefinition usersConnectionRepositoryBD = usersConnectionRepositoryBeanBuilder.getBeanDefinition(); BeanDefinition scopedProxyBean = decorateWithScopedProxy(usersConnectionRepositoryId, usersConnectionRepositoryBD, registry); registry.registerBeanDefinition(usersConnectionRepositoryId, scopedProxyBean); return scopedProxyBean; }
From source file:org.springframework.social.extension.config.support.RooConnectionRepositoryConfigSupport.java
private BeanDefinition registerUsersConnectionRepositoryBeanDefinition(BeanDefinitionRegistry registry, String usersConnectionRepositoryId, String connectionFactoryLocatorRef, String rooTemplateRef, String encryptorRef, String connectionSignUpRef) { if (logger.isDebugEnabled()) { logger.debug("Registering RooUsersConnectionRepository bean"); }// w ww . j av a2 s .c o m BeanDefinitionBuilder usersConnectionRepositoryBeanBuilder = BeanDefinitionBuilder .genericBeanDefinition(RooUsersConnectionRepository.class) .addConstructorArgReference(rooTemplateRef).addConstructorArgReference(connectionFactoryLocatorRef) .addConstructorArgReference(encryptorRef); if (connectionSignUpRef != null && connectionSignUpRef.length() > 0) { usersConnectionRepositoryBeanBuilder.addPropertyReference("connectionSignUp", connectionSignUpRef); } BeanDefinition usersConnectionRepositoryBD = usersConnectionRepositoryBeanBuilder.getBeanDefinition(); BeanDefinition scopedProxyBean = decorateWithScopedProxy(usersConnectionRepositoryId, usersConnectionRepositoryBD, registry); registry.registerBeanDefinition(usersConnectionRepositoryId, scopedProxyBean); return scopedProxyBean; }
From source file:org.springframework.social.facebook.config.xml.FacebookConfigBeanDefinitionParser.java
@Override protected BeanDefinition getConnectionFactoryBeanDefinition(String appId, String appSecret, Map<String, Object> allAttributes) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(FacebookConnectionFactory.class) .addConstructorArgValue(appId).addConstructorArgValue(appSecret); if (allAttributes.containsKey("app-namespace")) { builder.addConstructorArgValue(allAttributes.get("app-namespace")); }//from www. j a va 2 s .c o m return builder.getBeanDefinition(); }
From source file:org.springframework.social.github.config.xml.GitHubConfigBeanDefinitionParser.java
@Override protected BeanDefinition getConnectionFactoryBeanDefinition(String appId, String appSecret, Map<String, Object> allAttributes) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(GitHubConnectionFactory.class) .addConstructorArgValue(appId).addConstructorArgValue(appSecret); return builder.getBeanDefinition(); }