Class ServiceBuilder
- java.lang.Object
-
- com.github.scribejava.core.builder.ServiceBuilder
-
- All Implemented Interfaces:
ServiceBuilderCommon,ServiceBuilderOAuth10a,ServiceBuilderOAuth20
public class ServiceBuilder extends Object implements ServiceBuilderOAuth10a, ServiceBuilderOAuth20
Implementation of the Builder pattern, with a fluent interface that creates aOAuthService
-
-
Constructor Summary
Constructors Constructor Description ServiceBuilder(String apiKey)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ServiceBuilderapiKey(String apiKey)Configures the api keyServiceBuilderapiSecret(String apiSecret)Configures the api secretOAuth10aServicebuild(DefaultApi10a api)OAuth20Servicebuild(DefaultApi20 api)ServiceBuildercallback(String callback)Adds an OAuth callback urlServiceBuilderOAuth10adebug()ServiceBuilderOAuth10adebugStream(OutputStream debugStream)ServiceBuilderOAuth20defaultScope(String defaultScope)Configures the default OAuth 2.0 scope.
You can request any uniq scope per each access token request usingAuthorizationUrlBuilder.scope(java.lang.String).
In case you're requesting always the same scope,
you can just set it here and do not provide scope param nowhere more.ServiceBuilderhttpClient(HttpClient httpClient)takes precedence over httpClientConfigServiceBuilderhttpClientConfig(HttpClientConfig httpClientConfig)ServiceBuilderOAuth20responseType(String responseType)ServiceBuilderscope(String scope)ServiceBuilderuserAgent(String userAgent)ServiceBuilderOAuth10awithScope(String scope)Configures the OAuth 1.0a scope.
-
-
-
Constructor Detail
-
ServiceBuilder
public ServiceBuilder(String apiKey)
-
-
Method Detail
-
callback
public ServiceBuilder callback(String callback)
Description copied from interface:ServiceBuilderCommonAdds an OAuth callback url- Specified by:
callbackin interfaceServiceBuilderCommon- Specified by:
callbackin interfaceServiceBuilderOAuth10a- Specified by:
callbackin interfaceServiceBuilderOAuth20- Parameters:
callback- callback url. Must be a valid url or 'oob' (OAuthConstants.OOBfor out of band OAuth- Returns:
- the
ServiceBuilderinstance for method chaining
-
apiKey
public final ServiceBuilder apiKey(String apiKey)
Description copied from interface:ServiceBuilderCommonConfigures the api key- Specified by:
apiKeyin interfaceServiceBuilderCommon- Specified by:
apiKeyin interfaceServiceBuilderOAuth10a- Specified by:
apiKeyin interfaceServiceBuilderOAuth20- Parameters:
apiKey- The api key for your application- Returns:
- the
ServiceBuilderinstance for method chaining
-
apiSecret
public ServiceBuilder apiSecret(String apiSecret)
Description copied from interface:ServiceBuilderCommonConfigures the api secret- Specified by:
apiSecretin interfaceServiceBuilderCommon- Specified by:
apiSecretin interfaceServiceBuilderOAuth10a- Specified by:
apiSecretin interfaceServiceBuilderOAuth20- Parameters:
apiSecret- The api secret for your application- Returns:
- the
ServiceBuilderinstance for method chaining
-
scope
@Deprecated public ServiceBuilder scope(String scope)
Deprecated.Description copied from interface:ServiceBuilderCommonConfigures the OAuth scope. This is only necessary in some APIs (like Google's).- Specified by:
scopein interfaceServiceBuilderCommon- Specified by:
scopein interfaceServiceBuilderOAuth10a- Specified by:
scopein interfaceServiceBuilderOAuth20- Parameters:
scope- The OAuth scope- Returns:
- the
ServiceBuilderinstance for method chaining
-
defaultScope
public ServiceBuilderOAuth20 defaultScope(String defaultScope)
Description copied from interface:ServiceBuilderOAuth20Configures the default OAuth 2.0 scope.
You can request any uniq scope per each access token request usingAuthorizationUrlBuilder.scope(java.lang.String).
In case you're requesting always the same scope,
you can just set it here and do not provide scope param nowhere more.- Specified by:
defaultScopein interfaceServiceBuilderOAuth20- Parameters:
defaultScope- The OAuth scope, used as deafult- Returns:
- the
ServiceBuilderinstance for method chaining
-
withScope
public ServiceBuilderOAuth10a withScope(String scope)
Description copied from interface:ServiceBuilderOAuth10aConfigures the OAuth 1.0a scope. This is only necessary in some APIs- Specified by:
withScopein interfaceServiceBuilderOAuth10a- Parameters:
scope- The OAuth scope- Returns:
- the
ServiceBuilderinstance for method chaining
-
debugStream
public ServiceBuilderOAuth10a debugStream(OutputStream debugStream)
- Specified by:
debugStreamin interfaceServiceBuilderOAuth10a
-
responseType
public ServiceBuilderOAuth20 responseType(String responseType)
- Specified by:
responseTypein interfaceServiceBuilderOAuth20
-
httpClientConfig
public ServiceBuilder httpClientConfig(HttpClientConfig httpClientConfig)
- Specified by:
httpClientConfigin interfaceServiceBuilderCommon- Specified by:
httpClientConfigin interfaceServiceBuilderOAuth10a- Specified by:
httpClientConfigin interfaceServiceBuilderOAuth20
-
httpClient
public ServiceBuilder httpClient(HttpClient httpClient)
Description copied from interface:ServiceBuilderCommontakes precedence over httpClientConfig- Specified by:
httpClientin interfaceServiceBuilderCommon- Specified by:
httpClientin interfaceServiceBuilderOAuth10a- Specified by:
httpClientin interfaceServiceBuilderOAuth20- Parameters:
httpClient- externally created HTTP client- Returns:
- the
ServiceBuilderinstance for method chaining
-
userAgent
public ServiceBuilder userAgent(String userAgent)
- Specified by:
userAgentin interfaceServiceBuilderCommon- Specified by:
userAgentin interfaceServiceBuilderOAuth10a- Specified by:
userAgentin interfaceServiceBuilderOAuth20
-
debug
public ServiceBuilderOAuth10a debug()
- Specified by:
debugin interfaceServiceBuilderOAuth10a
-
build
public OAuth10aService build(DefaultApi10a api)
- Specified by:
buildin interfaceServiceBuilderOAuth10a
-
build
public OAuth20Service build(DefaultApi20 api)
- Specified by:
buildin interfaceServiceBuilderOAuth20
-
-