class StravaApi20 extends DefaultApi20 {

    /**
     * Strava authorization URL
     */
    private static final String AUTHORIZE_BASE_URL = "https://www.strava.com/oauth/authorize";

    private static final String ACCESS_TOKEN_URL = "https://www.strava.com/oauth/token";


    /**
     * possible values: auto or force. If force, the authorisation dialog is always displayed by Strava.
     */
    private String approvalPrompt;

    /**
     * <p>Constructor for StravaApi20.</p>
     *
     * @param approvalPrompt a {@link String} object
     */
    public StravaApi20(String approvalPrompt) {
        this.approvalPrompt = approvalPrompt;
    }

    /** {@inheritDoc} */
    @Override
    public String getAccessTokenEndpoint() {
        return ACCESS_TOKEN_URL;
    }

    /** {@inheritDoc} */
    @Override
    public Verb getAccessTokenVerb() {
        return Verb.POST;
    }

    /** {@inheritDoc} */
    @Override
    public String getAuthorizationUrl(String responseType, String apiKey, String callback, String scope, String state,
            Map<String, String> additionalParams) {<FILL_FUNCTION_BODY>}

    /** {@inheritDoc} */
    @Override
    protected String getAuthorizationBaseUrl() {
        return AUTHORIZE_BASE_URL;
    }
}

        CommonHelper.assertNotBlank("callback", callback, "Must provide a valid callback url.");

        if (additionalParams == null) {
            additionalParams = new HashMap<>();
        }
        additionalParams.put("approval_prompt=", this.approvalPrompt);
        return super.getAuthorizationUrl(responseType, apiKey, callback, scope, state, additionalParams);
    
<methods>public void <init>() ,public com.github.scribejava.core.oauth.OAuth20Service createService(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.io.OutputStream, java.lang.String, com.github.scribejava.core.httpclient.HttpClientConfig, com.github.scribejava.core.httpclient.HttpClient) ,public abstract java.lang.String getAccessTokenEndpoint() ,public TokenExtractor<com.github.scribejava.core.model.OAuth2AccessToken> getAccessTokenExtractor() ,public com.github.scribejava.core.model.Verb getAccessTokenVerb() ,public java.lang.String getAuthorizationUrl(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, Map<java.lang.String,java.lang.String>) ,public com.github.scribejava.core.oauth2.bearersignature.BearerSignature getBearerSignature() ,public com.github.scribejava.core.oauth2.clientauthentication.ClientAuthentication getClientAuthentication() ,public java.lang.String getDeviceAuthorizationEndpoint() ,public com.github.scribejava.core.extractors.DeviceAuthorizationJsonExtractor getDeviceAuthorizationExtractor() ,public java.lang.String getRefreshTokenEndpoint() ,public java.lang.String getRevokeTokenEndpoint() <variables>