diff --git a/jami-android/app/src/main/java/cx/ring/services/DeviceRuntimeServiceImpl.kt b/jami-android/app/src/main/java/cx/ring/services/DeviceRuntimeServiceImpl.kt index 3e32303d5b68bb075084efb9f66adc0ade30a0fe..3aa54cae4b47004ffff0436c6c54877ad44c0049 100644 --- a/jami-android/app/src/main/java/cx/ring/services/DeviceRuntimeServiceImpl.kt +++ b/jami-android/app/src/main/java/cx/ring/services/DeviceRuntimeServiceImpl.kt @@ -76,10 +76,7 @@ class DeviceRuntimeServiceImpl( override fun getFilePath(filename: String) = AndroidFileUtils.getFilePath(mContext, filename) - override fun getConversationPath(conversationId: String, name: String): File = - AndroidFileUtils.getConversationPath(mContext, conversationId, name) - - override fun getConversationPath(accountId: String, conversationId: String,name: String): File = + override fun getConversationPath(accountId: String, conversationId: String, name: String): File = AndroidFileUtils.getConversationPath(mContext, accountId, conversationId, name) override fun getTemporaryPath(conversationId: String, name: String): File = diff --git a/jami-android/app/src/main/java/cx/ring/services/NotificationServiceImpl.kt b/jami-android/app/src/main/java/cx/ring/services/NotificationServiceImpl.kt index cbcb7bb59ec47bee3501c32189e25a8a3a90736e..d3f8f85e538cbae61e54eeabdf9bd84dc953ad00 100644 --- a/jami-android/app/src/main/java/cx/ring/services/NotificationServiceImpl.kt +++ b/jami-android/app/src/main/java/cx/ring/services/NotificationServiceImpl.kt @@ -689,7 +689,7 @@ class NotificationServiceImpl( .setContentIntent(PendingIntent.getActivity(mContext, random.nextInt(), intentViewConversation, ContentUriHandler.immutable())) .setAutoCancel(true) if (info.showPicture()) { - val filePath = mDeviceRuntimeService.getConversationPath(conversation.uri.rawRingId, info.storagePath) + val filePath = mDeviceRuntimeService.getConversationPath(conversation.accountId, conversation.uri.rawRingId, info.storagePath) val img: Bitmap try { val d = Glide.with(mContext) diff --git a/jami-android/app/src/main/java/cx/ring/utils/AndroidFileUtils.kt b/jami-android/app/src/main/java/cx/ring/utils/AndroidFileUtils.kt index 70c4ec25066d56a3faf7e8d5a74c02ee5e2ee9c9..92e0852b2ea370f7e76e1e01bae65cad6609c800 100644 --- a/jami-android/app/src/main/java/cx/ring/utils/AndroidFileUtils.kt +++ b/jami-android/app/src/main/java/cx/ring/utils/AndroidFileUtils.kt @@ -340,16 +340,6 @@ object AndroidFileUtils { } } }.subscribeOn(Schedulers.io()) - @Throws(IOException::class) - fun getConversationFile(context: Context, uri: Uri, conversationId: String, name: String): File { - val file = getConversationPath(context, conversationId, name) - context.contentResolver.openInputStream(uri)?.use { inputStream -> - FileOutputStream(file).use { output -> - FileUtils.copyFile(inputStream, output) - } } - return file - } - fun getCachePath(context: Context, filename: String) = File(context.cacheDir, filename) fun getFilePath(context: Context, filename: String): File = context.getFileStreamPath(filename) @@ -372,9 +362,6 @@ object AndroidFileUtils { return conversationDir } - fun getConversationPath(context: Context, conversationId: String, name: String) = - File(getConversationDir(context, conversationId), name) - fun getConversationPath(context: Context, accountId: String, conversationId: String, name: String) = File(getConversationDir(context, accountId, conversationId), name) diff --git a/jami-android/libjamiclient/src/main/kotlin/net/jami/model/DataTransfer.kt b/jami-android/libjamiclient/src/main/kotlin/net/jami/model/DataTransfer.kt index d3b6df34a519084818dbf40ac90a46110e2c27da..c37c37b9353be7981e92e060ca5d7e71771afcf2 100644 --- a/jami-android/libjamiclient/src/main/kotlin/net/jami/model/DataTransfer.kt +++ b/jami-android/libjamiclient/src/main/kotlin/net/jami/model/DataTransfer.kt @@ -130,16 +130,7 @@ class DataTransfer : Interaction { val b = body return if (b == null) { if (fileId.isNullOrEmpty()) { "Error" } else fileId!! - } else { - var ext = StringUtils.getFileExtension(b) - if (ext.length > 8) ext = ext.substring(0, 8) - val dId = daemonId - if (dId == null || dId == 0L) { - id.toLong().toString() + '_' + HashUtils.sha1(b).toHex() + '.' + ext - } else { - dId.toString() + '_' + HashUtils.sha1(b).toHex() + '.' + ext - } - } + } else return b } fun setSize(size: Long) { diff --git a/jami-android/libjamiclient/src/main/kotlin/net/jami/services/ConversationFacade.kt b/jami-android/libjamiclient/src/main/kotlin/net/jami/services/ConversationFacade.kt index 696bd5dd51039ba6d6bbda925ff8f2885514dc04..d9649d77e00a84c6e59dc2fd9b35f4eaf6b30297 100644 --- a/jami-android/libjamiclient/src/main/kotlin/net/jami/services/ConversationFacade.kt +++ b/jami-android/libjamiclient/src/main/kotlin/net/jami/services/ConversationFacade.kt @@ -168,7 +168,7 @@ class ConversationFacade( if (transfer.status === InteractionStatus.TRANSFER_ONGOING) { mAccountService.cancelDataTransfer(conversation.accountId, conversation.uri.rawRingId, transfer.messageId, transfer.fileId!!) } else { - val file = mDeviceRuntimeService.getConversationPath(conversation.uri.rawRingId, transfer.storagePath) + val file = mDeviceRuntimeService.getConversationPath(conversation.accountId, conversation.uri.rawRingId, transfer.storagePath) if (conversation.isSwarm) { mDisposableBag.add(Completable.fromAction { file.delete() } .subscribeOn(Schedulers.io()) diff --git a/jami-android/libjamiclient/src/main/kotlin/net/jami/services/DeviceRuntimeService.kt b/jami-android/libjamiclient/src/main/kotlin/net/jami/services/DeviceRuntimeService.kt index 20ecfa482e91374ed3951e3e9037f9b93829f068..3431e0082cd740614586f12d3af8f288791c77cb 100644 --- a/jami-android/libjamiclient/src/main/kotlin/net/jami/services/DeviceRuntimeService.kt +++ b/jami-android/libjamiclient/src/main/kotlin/net/jami/services/DeviceRuntimeService.kt @@ -28,11 +28,10 @@ abstract class DeviceRuntimeService : SystemInfoCallbacks { abstract fun provideFilesDir(): File abstract val cacheDir: File abstract fun getFilePath(name: String): File - abstract fun getConversationPath(conversationId: String, name: String): File abstract fun getConversationPath(accountId: String, conversationId: String, name: String): File fun getConversationPath(interaction: DataTransfer): File = if (interaction.conversationId == null) - getConversationPath(interaction.conversation!!.participant!!, interaction.storagePath) + getConversationPath(interaction.account!!, interaction.conversation!!.participant!!, interaction.storagePath) else interaction.publicPath!! fun getNewConversationPath(accountId: String, conversationId: String, name: String): File {