mirror of
				https://github.com/owncloud/android-library.git
				synced 2025-10-31 02:17:41 +00:00 
			
		
		
		
	Use the same ownCloudClient across the whole login process
This commit is contained in:
		
							parent
							
								
									18b271665d
								
							
						
					
					
						commit
						0fc3f7668d
					
				| @ -23,11 +23,12 @@ | ||||
|  */ | ||||
| package com.owncloud.android.lib.resources.status.services | ||||
| 
 | ||||
| import com.owncloud.android.lib.common.OwnCloudClient | ||||
| import com.owncloud.android.lib.common.operations.RemoteOperationResult | ||||
| import com.owncloud.android.lib.resources.status.OwnCloudVersion | ||||
| 
 | ||||
| interface ServerInfoService { | ||||
|     fun checkPathExistence(path: String, isUserLogged: Boolean): RemoteOperationResult<Boolean> | ||||
|     fun checkPathExistence(path: String, isUserLogged: Boolean, client: OwnCloudClient): RemoteOperationResult<Boolean> | ||||
| 
 | ||||
|     fun getRemoteStatus(path: String): RemoteOperationResult<OwnCloudVersion> | ||||
|     fun getRemoteStatus(path: String, client: OwnCloudClient): RemoteOperationResult<OwnCloudVersion> | ||||
| } | ||||
|  | ||||
| @ -19,26 +19,28 @@ | ||||
| 
 | ||||
| package com.owncloud.android.lib.resources.status.services.implementation | ||||
| 
 | ||||
| import android.net.Uri | ||||
| import com.owncloud.android.lib.common.OwnCloudClient | ||||
| import com.owncloud.android.lib.common.authentication.OwnCloudCredentialsFactory.getAnonymousCredentials | ||||
| import com.owncloud.android.lib.common.operations.RemoteOperationResult | ||||
| import com.owncloud.android.lib.resources.status.services.ServerInfoService | ||||
| import com.owncloud.android.lib.resources.files.CheckPathExistenceRemoteOperation | ||||
| import com.owncloud.android.lib.resources.status.GetRemoteStatusOperation | ||||
| import com.owncloud.android.lib.resources.status.OwnCloudVersion | ||||
| import com.owncloud.android.lib.resources.status.services.ServerInfoService | ||||
| 
 | ||||
| class OCServerInfoService : ServerInfoService { | ||||
|     override fun checkPathExistence(path: String, isUserLogged: Boolean): RemoteOperationResult<Boolean> = | ||||
| 
 | ||||
|     override fun checkPathExistence( | ||||
|         path: String, | ||||
|         isUserLogged: Boolean, | ||||
|         client: OwnCloudClient | ||||
|     ): RemoteOperationResult<Boolean> = | ||||
|         CheckPathExistenceRemoteOperation( | ||||
|             remotePath = path, | ||||
|             isUserLogged = true | ||||
|         ).execute(createClientFromPath(path)) | ||||
|         ).execute(client) | ||||
| 
 | ||||
|     override fun getRemoteStatus(path: String): RemoteOperationResult<OwnCloudVersion> = | ||||
|         GetRemoteStatusOperation().execute(createClientFromPath(path)) | ||||
| 
 | ||||
|     private fun createClientFromPath(path: String): OwnCloudClient { | ||||
|         return OwnCloudClient(Uri.parse(path)).apply { credentials = getAnonymousCredentials() } | ||||
|     } | ||||
|     override fun getRemoteStatus( | ||||
|         path: String, | ||||
|         client: OwnCloudClient | ||||
|     ): RemoteOperationResult<OwnCloudVersion> = | ||||
|         GetRemoteStatusOperation().execute(client) | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user