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 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 urlServiceBuilderdebug()ServiceBuilderdebugStream(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)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
-
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 ServiceBuilder debugStream(OutputStream debugStream)
- Specified by:
debugStreamin interfaceServiceBuilderCommon- Specified by:
debugStreamin interfaceServiceBuilderOAuth10a- Specified by:
debugStreamin interfaceServiceBuilderOAuth20
-
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 ServiceBuilder debug()
- Specified by:
debugin interfaceServiceBuilderCommon- Specified by:
debugin interfaceServiceBuilderOAuth10a- Specified by:
debugin interfaceServiceBuilderOAuth20
-
build
public OAuth10aService build(DefaultApi10a api)
- Specified by:
buildin interfaceServiceBuilderOAuth10a
-
build
public OAuth20Service build(DefaultApi20 api)
- Specified by:
buildin interfaceServiceBuilderOAuth20
-
-