|
|
|
@ -1,8 +1,10 @@ |
|
|
|
package net.pokeranalytics.android.api |
|
|
|
package net.pokeranalytics.android.api |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import android.content.Context |
|
|
|
import kotlinx.coroutines.CoroutineScope |
|
|
|
import kotlinx.coroutines.CoroutineScope |
|
|
|
import kotlinx.coroutines.Dispatchers |
|
|
|
import kotlinx.coroutines.Dispatchers |
|
|
|
import kotlinx.coroutines.launch |
|
|
|
import kotlinx.coroutines.launch |
|
|
|
|
|
|
|
import net.pokeranalytics.android.util.extensions.isNetworkAvailable |
|
|
|
import okhttp3.MediaType |
|
|
|
import okhttp3.MediaType |
|
|
|
import okhttp3.MultipartBody |
|
|
|
import okhttp3.MultipartBody |
|
|
|
import okhttp3.RequestBody |
|
|
|
import okhttp3.RequestBody |
|
|
|
@ -33,13 +35,12 @@ interface MyBackupApi { |
|
|
|
fun postFile(@Part mail: MultipartBody.Part, @Part fileBody: MultipartBody.Part): Call<Void> |
|
|
|
fun postFile(@Part mail: MultipartBody.Part, @Part fileBody: MultipartBody.Part): Call<Void> |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
object BackupApi { |
|
|
|
object BackupApi { |
|
|
|
|
|
|
|
|
|
|
|
val service = BackupService() |
|
|
|
val service = BackupService() |
|
|
|
|
|
|
|
|
|
|
|
// curl -F recipient=laurent@staxriver.com -F file=@test.txt https://www.pokeranalytics.net/backup/send |
|
|
|
// curl -F recipient=laurent@staxriver.com -F file=@test.txt https://www.pokeranalytics.net/backup/send |
|
|
|
fun backupFile(mail: String, fileName: String, fileContent: String) { |
|
|
|
fun backupFile(context: Context, mail: String, fileName: String, fileContent: String): Boolean { |
|
|
|
|
|
|
|
|
|
|
|
val filePart = MultipartBody.Part.createFormData( |
|
|
|
val filePart = MultipartBody.Part.createFormData( |
|
|
|
"file", |
|
|
|
"file", |
|
|
|
@ -49,14 +50,16 @@ object BackupApi { |
|
|
|
|
|
|
|
|
|
|
|
val mailPart = MultipartBody.Part.createFormData("recipient", mail) |
|
|
|
val mailPart = MultipartBody.Part.createFormData("recipient", mail) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return if (context.isNetworkAvailable()) { |
|
|
|
CoroutineScope(context = Dispatchers.IO).launch { |
|
|
|
CoroutineScope(context = Dispatchers.IO).launch { |
|
|
|
|
|
|
|
|
|
|
|
val response = service.backupApi.postFile(mailPart, filePart).execute() |
|
|
|
val response = service.backupApi.postFile(mailPart, filePart).execute() |
|
|
|
Timber.d("response code = ${response.code()}") |
|
|
|
Timber.d("response code = ${response.code()}") |
|
|
|
Timber.d("success = ${response.isSuccessful}") |
|
|
|
Timber.d("success = ${response.isSuccessful}") |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
true |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
false |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |