diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/alias/AliasService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/alias/AliasService.kt index 3060824f0f..5fe7e99425 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/alias/AliasService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/alias/AliasService.kt @@ -19,11 +19,14 @@ package org.matrix.android.sdk.api.session.room.alias interface AliasService { /** * Get list of local alias of the room + * @return the list of the aliases (full aliases, not only the local part) */ suspend fun getRoomAliases(): List /** * Add local alias to the room + * @param aliasLocalPart the local part of the alias. + * Ex: for the alias "#my_alias:example.org", the local part is "my_alias" */ suspend fun addAlias(aliasLocalPart: String) } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/AddRoomAliasTask.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/AddRoomAliasTask.kt index 4dad476f03..9793750fa0 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/AddRoomAliasTask.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/AddRoomAliasTask.kt @@ -20,13 +20,17 @@ import org.greenrobot.eventbus.EventBus import org.matrix.android.sdk.internal.di.UserId import org.matrix.android.sdk.internal.network.executeRequest import org.matrix.android.sdk.internal.session.directory.DirectoryAPI -import org.matrix.android.sdk.internal.session.room.alias.RoomAliasAvailabilityChecker.Companion.toFullAlias +import org.matrix.android.sdk.internal.session.room.alias.RoomAliasAvailabilityChecker.Companion.toFullLocalAlias import org.matrix.android.sdk.internal.task.Task import javax.inject.Inject internal interface AddRoomAliasTask : Task { data class Params( val roomId: String, + /** + * the local part of the alias. + * Ex: for the alias "#my_alias:example.org", the local part is "my_alias" + */ val aliasLocalPart: String ) } @@ -43,7 +47,7 @@ internal class DefaultAddRoomAliasTask @Inject constructor( executeRequest(eventBus) { apiCall = directoryAPI.addRoomAlias( - roomAlias = params.aliasLocalPart.toFullAlias(userId), + roomAlias = params.aliasLocalPart.toFullLocalAlias(userId), body = AddRoomAliasBody( roomId = params.roomId ) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/RoomAliasAvailabilityChecker.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/RoomAliasAvailabilityChecker.kt index d47450aaee..25ba493891 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/RoomAliasAvailabilityChecker.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/alias/RoomAliasAvailabilityChecker.kt @@ -29,13 +29,17 @@ internal class RoomAliasAvailabilityChecker @Inject constructor( private val directoryAPI: DirectoryAPI, private val eventBus: EventBus ) { + /** + * @param aliasLocalPart the local part of the alias. + * Ex: for the alias "#my_alias:example.org", the local part is "my_alias" + */ @Throws(RoomAliasError::class) suspend fun check(aliasLocalPart: String?) { if (aliasLocalPart.isNullOrEmpty()) { throw RoomAliasError.AliasEmpty } // Check alias availability - val fullAlias = aliasLocalPart.toFullAlias(userId) + val fullAlias = aliasLocalPart.toFullLocalAlias(userId) try { executeRequest(eventBus) { apiCall = directoryAPI.getRoomIdByAlias(fullAlias) @@ -56,6 +60,6 @@ internal class RoomAliasAvailabilityChecker @Inject constructor( } companion object { - internal fun String.toFullAlias(userId: String) = "#" + this + ":" + userId.substringAfter(":") + internal fun String.toFullLocalAlias(userId: String) = "#" + this + ":" + userId.substringAfter(":") } } diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasController.kt b/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasController.kt index e1c8a3803e..49bccd79db 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasController.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasController.kt @@ -49,11 +49,11 @@ class RoomAliasController @Inject constructor( interface Callback { fun toggleManualPublishForm() - fun setNewAlias(value: String) + fun setNewAlias(alias: String) fun addAlias() fun setRoomDirectoryVisibility(roomDirectoryVisibility: RoomDirectoryVisibility) fun toggleLocalAliasForm() - fun setNewLocalAliasLocalPart(value: String) + fun setNewLocalAliasLocalPart(aliasLocalPart: String) fun addLocalAlias() fun openAliasDetail(alias: String) } diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasFragment.kt b/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasFragment.kt index 916b40970e..56c3e76828 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasFragment.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/alias/RoomAliasFragment.kt @@ -143,8 +143,8 @@ class RoomAliasFragment @Inject constructor( viewModel.handle(RoomAliasAction.ToggleManualPublishForm) } - override fun setNewAlias(value: String) { - viewModel.handle(RoomAliasAction.SetNewAlias(value)) + override fun setNewAlias(alias: String) { + viewModel.handle(RoomAliasAction.SetNewAlias(alias)) } override fun addAlias() { @@ -159,8 +159,8 @@ class RoomAliasFragment @Inject constructor( viewModel.handle(RoomAliasAction.ToggleAddLocalAliasForm) } - override fun setNewLocalAliasLocalPart(value: String) { - viewModel.handle(RoomAliasAction.SetNewLocalAliasLocalPart(value)) + override fun setNewLocalAliasLocalPart(aliasLocalPart: String) { + viewModel.handle(RoomAliasAction.SetNewLocalAliasLocalPart(aliasLocalPart)) } override fun addLocalAlias() {