mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-02 20:26:47 +01:00
Clarify aliasLocalPart
This commit is contained in:
parent
50ddd3cf31
commit
9c53f0f881
@ -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<String>
|
||||
|
||||
/**
|
||||
* 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)
|
||||
}
|
||||
|
@ -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<AddRoomAliasTask.Params, Unit> {
|
||||
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<Unit>(eventBus) {
|
||||
apiCall = directoryAPI.addRoomAlias(
|
||||
roomAlias = params.aliasLocalPart.toFullAlias(userId),
|
||||
roomAlias = params.aliasLocalPart.toFullLocalAlias(userId),
|
||||
body = AddRoomAliasBody(
|
||||
roomId = params.roomId
|
||||
)
|
||||
|
@ -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<RoomAliasDescription>(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(":")
|
||||
}
|
||||
}
|
||||
|
@ -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)
|
||||
}
|
||||
|
@ -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() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user