Spring Social Reference Manual

Craig Walls

Keith Donald

1.0.0.M3

© SpringSource Inc., 2011


Table of Contents

1. Spring Social Overview
1.1. Introduction
1.2. Socializing applications
1.3. How to get
2. Service Provider 'Connect' Framework
2.1. Core API
2.2. Establishing connections
2.2.1. OAuth2 service providers
2.2.2. OAuth1 service providers
2.2.3. Registering ConnectionFactory instances
2.3. Persisting connections
2.3.1. JDBC-based persistence
3. Adding Support for a New Service Provider
3.1. Process overview
3.2. Creating a source project for the provider client code
3.2.1. Code structure guidelines
3.3. Developing a Java binding to the provider's API
3.3.1. Designing a new Java API binding
3.3.2. Implementing a new Java API binding
3.3.3. Testing a new Java API binding
3.3.4. Integrating an existing Java API binding
3.4. Creating a ServiceProvider model
3.4.1. OAuth2
3.4.2. OAuth1
3.5. Creating an ApiAdapter
3.6. Creating a ConnectionFactory
3.6.1. OAuth2
3.6.2. OAuth1
4. Connecting to Service Providers
4.1. Introduction
4.2. Configuring ConnectController
4.2.1. Configuring connection support in XML
4.3. Creating connections with ConnectController
4.3.1. Displaying a connection page
4.3.2. Initiating the connection flow
Authorization scope
4.3.3. Responding to the authorization callback
4.3.4. Disconnecting
4.4. Connection interceptors
5. Signing in with Service Provider Accounts
5.1. Introduction
5.2. Enabling provider sign in
5.2.1. ProviderSignInController's dependencies
5.2.2. Adding a provider sign in button
5.3. Signing up after a failed sign in
6. Working with Service Provider APIs
6.1. Introduction
6.2. Twitter
6.2.1. Retrieving a user's Twitter profile data
6.2.2. Tweeting
6.2.3. Reading Twitter timelines
6.2.4. Friends and Followers
6.2.5. Twitter User Lists
6.2.6. Searching Twitter
6.2.7. Sending and receiving direct messages
6.3. Facebook
6.3.1. Retrieving a user's profile data
6.3.2. Getting a user's Facebook friends
6.3.3. Posting to and reading feeds
6.4. LinkedIn
6.4.1. Retrieving a user's LinkedIn profile data
6.4.2. Getting a user's LinkedIn connections
6.5. TripIt
6.5.1. Retrieving a user's TripIt profile data
6.5.2. Getting a user's upcoming trips
6.6. GitHub
6.6.1. Retrieving a GitHub user's profile
6.7. Gowalla
6.7.1. Retrieving a user's profile data
6.7.2. Getting a user's checkins