mirror of
				https://github.com/owncloud/android-library.git
				synced 2025-10-31 10:27:45 +00:00 
			
		
		
		
	Polish code. Send only info required for each type of request
This commit is contained in:
		
							parent
							
								
									9208af89fe
								
							
						
					
					
						commit
						df8e10fac3
					
				| @ -59,13 +59,7 @@ class TokenRequestRemoteOperation( | ||||
|         var result: RemoteOperationResult<TokenResponse> | ||||
| 
 | ||||
|         try { | ||||
|             val requestBody = FormBody.Builder() | ||||
|                 .add(HEADER_AUTHORIZATION_CODE, tokenRequestParams.authorizationCode) | ||||
|                 .add(HEADER_GRANT_TYPE, tokenRequestParams.grantType) | ||||
|                 .add(HEADER_REDIRECT_URI, tokenRequestParams.redirectUri) | ||||
|                 .add(HEADER_CODE_VERIFIER, tokenRequestParams.codeVerifier) | ||||
|                 .add(HEADER_REFRESH_TOKEN, tokenRequestParams.refreshToken.orEmpty()) | ||||
|                 .build() | ||||
|             val requestBody = tokenRequestParams.toRequestBody() | ||||
| 
 | ||||
|             val postMethod = PostMethod(URL(tokenRequestParams.tokenEndpoint), requestBody) | ||||
| 
 | ||||
|  | ||||
| @ -23,12 +23,51 @@ | ||||
|  */ | ||||
| package com.owncloud.android.lib.resources.oauth.params | ||||
| 
 | ||||
| class TokenRequestParams( | ||||
| import com.owncloud.android.lib.common.http.HttpConstants | ||||
| import okhttp3.FormBody | ||||
| import okhttp3.RequestBody | ||||
| 
 | ||||
| sealed class TokenRequestParams( | ||||
|     val tokenEndpoint: String, | ||||
|     val authorizationCode: String, | ||||
|     val grantType: String, | ||||
|     val redirectUri: String, | ||||
|     val refreshToken: String? = null, | ||||
|     val codeVerifier: String, | ||||
|     val clientAuth: String | ||||
| ) | ||||
|     val clientAuth: String, | ||||
|     val grantType: String | ||||
| ) { | ||||
|     abstract fun toRequestBody(): RequestBody | ||||
| 
 | ||||
|     class Authorization( | ||||
|         tokenEndpoint: String, | ||||
|         clientAuth: String, | ||||
|         grantType: String, | ||||
|         val authorizationCode: String, | ||||
|         val redirectUri: String, | ||||
|         val codeVerifier: String | ||||
|     ) : TokenRequestParams(tokenEndpoint, clientAuth, grantType) { | ||||
| 
 | ||||
|         override fun toRequestBody(): RequestBody { | ||||
|             return FormBody.Builder() | ||||
|                 .add(HttpConstants.HEADER_AUTHORIZATION_CODE, authorizationCode) | ||||
|                 .add(HttpConstants.HEADER_GRANT_TYPE, grantType) | ||||
|                 .add(HttpConstants.HEADER_REDIRECT_URI, redirectUri) | ||||
|                 .add(HttpConstants.HEADER_CODE_VERIFIER, codeVerifier) | ||||
|                 .build() | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     class RefreshToken( | ||||
|         tokenEndpoint: String, | ||||
|         clientAuth: String, | ||||
|         grantType: String, | ||||
|         val refreshToken: String? = null | ||||
|     ) : TokenRequestParams(tokenEndpoint, clientAuth, grantType) { | ||||
| 
 | ||||
|         override fun toRequestBody(): RequestBody { | ||||
|             return FormBody.Builder().apply { | ||||
|                 add(HttpConstants.HEADER_GRANT_TYPE, grantType) | ||||
|                 if (!refreshToken.isNullOrBlank()) { | ||||
|                     add(HttpConstants.HEADER_REFRESH_TOKEN, refreshToken) | ||||
|                 } | ||||
|             }.build() | ||||
| 
 | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user