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
Modifier and Type Method Description ServiceBuilder
apiKey(String apiKey)
Configures the api keyServiceBuilder
apiSecret(String apiSecret)
Configures the api secretOAuth10aService
build(DefaultApi10a api)
OAuth20Service
build(DefaultApi20 api)
ServiceBuilder
callback(String callback)
Adds an OAuth callback urlServiceBuilderOAuth10a
debug()
ServiceBuilderOAuth10a
debugStream(OutputStream debugStream)
ServiceBuilderOAuth20
defaultScope(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.ServiceBuilder
httpClient(HttpClient httpClient)
takes precedence over httpClientConfigServiceBuilder
httpClientConfig(HttpClientConfig httpClientConfig)
ServiceBuilderOAuth20
responseType(String responseType)
ServiceBuilder
userAgent(String userAgent)
ServiceBuilderOAuth10a
withScope(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:ServiceBuilderCommon
Adds an OAuth callback url- Specified by:
callback
in interfaceServiceBuilderCommon
- Specified by:
callback
in interfaceServiceBuilderOAuth10a
- Specified by:
callback
in interfaceServiceBuilderOAuth20
- Parameters:
callback
- callback url. Must be a valid url or 'oob' (OAuthConstants.OOB
for out of band OAuth- Returns:
- the
ServiceBuilder
instance for method chaining
-
apiKey
public final ServiceBuilder apiKey(String apiKey)
Description copied from interface:ServiceBuilderCommon
Configures the api key- Specified by:
apiKey
in interfaceServiceBuilderCommon
- Specified by:
apiKey
in interfaceServiceBuilderOAuth10a
- Specified by:
apiKey
in interfaceServiceBuilderOAuth20
- Parameters:
apiKey
- The api key for your application- Returns:
- the
ServiceBuilder
instance for method chaining
-
apiSecret
public ServiceBuilder apiSecret(String apiSecret)
Description copied from interface:ServiceBuilderCommon
Configures the api secret- Specified by:
apiSecret
in interfaceServiceBuilderCommon
- Specified by:
apiSecret
in interfaceServiceBuilderOAuth10a
- Specified by:
apiSecret
in interfaceServiceBuilderOAuth20
- Parameters:
apiSecret
- The api secret for your application- Returns:
- the
ServiceBuilder
instance for method chaining
-
defaultScope
public ServiceBuilderOAuth20 defaultScope(String defaultScope)
Description copied from interface:ServiceBuilderOAuth20
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.- Specified by:
defaultScope
in interfaceServiceBuilderOAuth20
- Parameters:
defaultScope
- The OAuth scope, used as deafult- Returns:
- the
ServiceBuilder
instance for method chaining
-
withScope
public ServiceBuilderOAuth10a withScope(String scope)
Description copied from interface:ServiceBuilderOAuth10a
Configures the OAuth 1.0a scope. This is only necessary in some APIs- Specified by:
withScope
in interfaceServiceBuilderOAuth10a
- Parameters:
scope
- The OAuth scope- Returns:
- the
ServiceBuilder
instance for method chaining
-
debugStream
public ServiceBuilderOAuth10a debugStream(OutputStream debugStream)
- Specified by:
debugStream
in interfaceServiceBuilderOAuth10a
-
responseType
public ServiceBuilderOAuth20 responseType(String responseType)
- Specified by:
responseType
in interfaceServiceBuilderOAuth20
-
httpClientConfig
public ServiceBuilder httpClientConfig(HttpClientConfig httpClientConfig)
- Specified by:
httpClientConfig
in interfaceServiceBuilderCommon
- Specified by:
httpClientConfig
in interfaceServiceBuilderOAuth10a
- Specified by:
httpClientConfig
in interfaceServiceBuilderOAuth20
-
httpClient
public ServiceBuilder httpClient(HttpClient httpClient)
Description copied from interface:ServiceBuilderCommon
takes precedence over httpClientConfig- Specified by:
httpClient
in interfaceServiceBuilderCommon
- Specified by:
httpClient
in interfaceServiceBuilderOAuth10a
- Specified by:
httpClient
in interfaceServiceBuilderOAuth20
- Parameters:
httpClient
- externally created HTTP client- Returns:
- the
ServiceBuilder
instance for method chaining
-
userAgent
public ServiceBuilder userAgent(String userAgent)
- Specified by:
userAgent
in interfaceServiceBuilderCommon
- Specified by:
userAgent
in interfaceServiceBuilderOAuth10a
- Specified by:
userAgent
in interfaceServiceBuilderOAuth20
-
debug
public ServiceBuilderOAuth10a debug()
- Specified by:
debug
in interfaceServiceBuilderOAuth10a
-
build
public OAuth10aService build(DefaultApi10a api)
- Specified by:
build
in interfaceServiceBuilderOAuth10a
-
build
public OAuth20Service build(DefaultApi20 api)
- Specified by:
build
in interfaceServiceBuilderOAuth20
-
-