mirror of
https://github.com/KokaKiwi/BarInsta
synced 2024-12-23 05:16:58 +00:00
convert downloadutils to kotlin
This commit is contained in:
parent
a7cb82354e
commit
3dcc791cba
@ -193,9 +193,9 @@ object BitmapUtils {
|
||||
}
|
||||
|
||||
@Throws(IOException::class)
|
||||
fun convertToJpegAndSaveToFile(contentResolver: ContentResolver, bitmap: Bitmap, file: DocumentFile?): DocumentFile {
|
||||
fun convertToJpegAndSaveToFile(contentResolver: ContentResolver, bitmap: Bitmap, file: DocumentFile?): DocumentFile? {
|
||||
val tempFile = file ?: DownloadUtils.getTempFile(null, "jpg")
|
||||
contentResolver.openOutputStream(tempFile.uri).use { output ->
|
||||
contentResolver.openOutputStream(tempFile!!.uri).use { output ->
|
||||
val compressResult = bitmap.compress(Bitmap.CompressFormat.JPEG, 100, output)
|
||||
if (!compressResult) {
|
||||
throw RuntimeException("Compression failed!")
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -36,8 +36,8 @@ object MediaUploader {
|
||||
contentResolver: ContentResolver,
|
||||
bitmap: Bitmap,
|
||||
): MediaUploadResponse = withContext(Dispatchers.IO) {
|
||||
val file: DocumentFile = BitmapUtils.convertToJpegAndSaveToFile(contentResolver, bitmap, null)
|
||||
val byteLength: Long = file.length()
|
||||
val file: DocumentFile? = BitmapUtils.convertToJpegAndSaveToFile(contentResolver, bitmap, null)
|
||||
val byteLength: Long = file!!.length()
|
||||
val options = createUploadPhotoOptions(byteLength)
|
||||
val headers = getUploadPhotoHeaders(options)
|
||||
val url = HOST + "/rupload_igphoto/" + options.name + "/"
|
||||
|
@ -131,7 +131,7 @@ class DownloadWorker(context: Context, workerParams: WorkerParameters) : Corouti
|
||||
var totalRead = 0f
|
||||
try {
|
||||
BufferedInputStream(urlConnection.getInputStream()).use { bis ->
|
||||
contentResolver.openOutputStream(outFile.uri).use { fos ->
|
||||
contentResolver.openOutputStream(outFile!!.uri).use { fos ->
|
||||
val buffer = ByteArray(0x2000)
|
||||
var count: Int
|
||||
while (bis.read(buffer, 0, 0x2000).also { count = it } != -1) {
|
||||
@ -146,11 +146,11 @@ class DownloadWorker(context: Context, workerParams: WorkerParameters) : Corouti
|
||||
}
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
Log.e(TAG, "Error while writing data from url: " + url + " to file: " + outFile.name, e)
|
||||
Log.e(TAG, "Error while writing data from url: " + url + " to file: " + outFile!!.name, e)
|
||||
}
|
||||
if (isJpg) {
|
||||
try {
|
||||
contentResolver.openInputStream(outFile.uri).use { fis ->
|
||||
contentResolver.openInputStream(outFile!!.uri).use { fis ->
|
||||
contentResolver.openOutputStream(filePath.uri).use { fos ->
|
||||
val jpegIptcRewriter = JpegIptcRewriter()
|
||||
jpegIptcRewriter.removeIPTC(fis, fos)
|
||||
@ -158,10 +158,10 @@ class DownloadWorker(context: Context, workerParams: WorkerParameters) : Corouti
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
Log.e(TAG, "Error while removing iptc: url: " + url
|
||||
+ ", tempFile: " + outFile.name
|
||||
+ ", tempFile: " + outFile!!.name
|
||||
+ ", finalFile: " + filePath.name, e)
|
||||
}
|
||||
val deleted = outFile.delete()
|
||||
val deleted = outFile!!.delete()
|
||||
if (!deleted) {
|
||||
Log.w(TAG, "download: tempFile not deleted!")
|
||||
}
|
||||
@ -393,7 +393,7 @@ class DownloadWorker(context: Context, workerParams: WorkerParameters) : Corouti
|
||||
|
||||
class Builder {
|
||||
private var urlToFilePathMap: MutableMap<String, String> = mutableMapOf()
|
||||
fun setUrlToFilePathMap(urlToFilePathMap: MutableMap<String, DocumentFile>): Builder {
|
||||
fun setUrlToFilePathMap(urlToFilePathMap: Map<String, DocumentFile>): Builder {
|
||||
this.urlToFilePathMap = urlToFilePathMap
|
||||
.mapValues { it.value.uri.toString() }
|
||||
.toMutableMap()
|
||||
|
Loading…
Reference in New Issue
Block a user