Spring Social

org.springframework.social.config.xml
Class AbstractProviderConfigBeanDefinitionParser

java.lang.Object
  extended by org.springframework.social.config.xml.AbstractProviderConfigBeanDefinitionParser
All Implemented Interfaces:
org.springframework.beans.factory.xml.BeanDefinitionParser

public abstract class AbstractProviderConfigBeanDefinitionParser
extends java.lang.Object
implements org.springframework.beans.factory.xml.BeanDefinitionParser

Abstract bean definition parser for configuring provider-specific beans in a Spring application context. Automatically creates a ConnectionFactoryLocator bean if none exists and registers the ConnectionFactory bean with the ConnectionFactoryLocator. Also creates a request-scoped API binding bean retrieved from the connection repository.

Author:
Craig Walls

Constructor Summary
protected AbstractProviderConfigBeanDefinitionParser(java.lang.Class<? extends ConnectionFactory<?>> connectionFactoryClass, java.lang.Class<? extends ApiHelper<?>> apiHelperClass)
          Constructs a connection factory-creating BeanDefinitionParser.
 
Method Summary
protected  org.springframework.beans.factory.config.BeanDefinition getConnectionFactoryBeanDefinition(java.lang.String appId, java.lang.String appSecret, java.util.Map<java.lang.String,java.lang.String> allAttributes)
          Creates a BeanDefinition for a provider connection factory.
 org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractProviderConfigBeanDefinitionParser

protected AbstractProviderConfigBeanDefinitionParser(java.lang.Class<? extends ConnectionFactory<?>> connectionFactoryClass,
                                                     java.lang.Class<? extends ApiHelper<?>> apiHelperClass)
Constructs a connection factory-creating BeanDefinitionParser.

Parameters:
connectionFactoryClass - The type of ConnectionFactory to create. Must have a two-argument constructor taking an application's ID and secret as Strings.
Method Detail

parse

public final org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element element,
                                                                           org.springframework.beans.factory.xml.ParserContext parserContext)
Specified by:
parse in interface org.springframework.beans.factory.xml.BeanDefinitionParser

getConnectionFactoryBeanDefinition

protected org.springframework.beans.factory.config.BeanDefinition getConnectionFactoryBeanDefinition(java.lang.String appId,
                                                                                                     java.lang.String appSecret,
                                                                                                     java.util.Map<java.lang.String,java.lang.String> allAttributes)
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.

Parameters:
appId - The application's App ID
appSecret - The application's App Secret
allAttributes - All attributes available on the configuration element. Useful for provider-specific configuration.
Returns:
a BeanDefinition for the provider's connection factory bean.

Spring Social