diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index e60595e8b9..cf1cd5b9ff 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -54,4 +54,13 @@ steps: # Code quality - label: "Code quality" - command: "./tools/check/check_code_quality.sh" + command: + - "./tools/check/check_code_quality.sh" + + - label: "ktlint" + command: + - "curl -sSLO https://github.com/pinterest/ktlint/releases/download/0.34.2/ktlint && chmod a+x ktlint" + - "./ktlint --android --experimental -v" + plugins: + - docker#v3.1.0: + image: "openjdk" diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000000..19a95806d3 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,32 @@ +# For ktlint configuration. Ref: https://ktlint.github.io/ + +[*.{kt,kts}] +# possible values: number (e.g. 2), "unset" (makes ktlint ignore indentation completely) +indent_size=unset +# true (recommended) / false +insert_final_newline=true +# possible values: number (e.g. 120) (package name, imports & comments are ignored), "off" +# it's automatically set to 100 on `ktlint --android ...` (per Android Kotlin Style Guide) +max_line_length=off + +# Comma-separated list of rules to disable (Since 0.34.0) +# Note that rules in any ruleset other than the standard ruleset will need to be prefixed +# by the ruleset identifier. +disabled_rules=no-wildcard-imports,no-multi-spaces,colon-spacing,chain-wrapping,import-ordering,experimental:annotation + +# The following (so far identified) rules are kept: +# no-blank-line-before-rbrace +# final-newline +# no-consecutive-blank-lines +# comment-spacing +# filename +# comma-spacing +# paren-spacing +# op-spacing +# string-template +# no-unused-imports +# curly-spacing +# no-semi +# no-empty-class-body +# experimental:multiline-if-else +# experimental:no-empty-first-line-in-method-block diff --git a/.gitignore b/.gitignore index 0722110715..e54a3c380e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,16 @@ *.iml .gradle /local.properties -.idea/* -/.idea/* -/.idea/libraries -/.idea/modules.xml -/.idea/workspace.xml +# idea files: exclude everything except dictionnaries +.idea/caches +.idea/codeStyles +.idea/libraries +.idea/*.xml .DS_Store /build /captures .externalNativeBuild /tmp + +ktlint diff --git a/.idea/dictionaries/bmarty.xml b/.idea/dictionaries/bmarty.xml new file mode 100644 index 0000000000..01981ada12 --- /dev/null +++ b/.idea/dictionaries/bmarty.xml @@ -0,0 +1,19 @@ + + + + backstack + bytearray + ciphertext + decryptor + emoji + emojis + hmac + ktlint + linkified + linkify + megolm + pbkdf + pkcs + + + \ No newline at end of file diff --git a/CHANGES.md b/CHANGES.md index edaa8b3c01..42fb2cc291 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -17,6 +17,8 @@ Bugfix: - Fix opening a permalink: the targeted event is displayed twice (#556) - Fix opening a permalink paginates all the history up to the last event (#282) - after login, the icon in the top left is a green 'A' for (all communities) rather than my avatar (#267) + - Picture uploads are unreliable, pictures are shown in wrong aspect ratio on desktop client (#517) + - Invitation notifications are not dismissed automatically if room is joined from another client (#347) Translations: - @@ -167,21 +169,21 @@ Mode details here: https://medium.com/@RiotChat/introducing-the-riotx-beta-for-a Changes in RiotX 0.0.0 (2019-XX-XX) =================================================== -Features: +Features ✨: - -Improvements: +Improvements 🙌: - Other changes: - -Bugfix: +Bugfix 🐛: - -Translations: +Translations 🗣: - -Build: +Build 🧱: - diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 449f6421cf..0c1fd13d74 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -42,6 +42,15 @@ Make sure the following commands execute without any error: > ./tools/check/check_code_quality.sh +> curl -sSLO https://github.com/pinterest/ktlint/releases/download/0.34.2/ktlint && chmod a+x ktlint +> ./ktlint --android -v + +Note that you can run + +> ./ktlint --android -v -F + +For ktlint to fix some detected errors for you + > ./gradlew lintGplayRelease ### Unit tests diff --git a/build.gradle b/build.gradle index 14522b33fd..714152370e 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,3 @@ -import javax.tools.JavaCompiler - // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { @@ -61,6 +59,11 @@ allprojects { ] } + tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { + // Warnings are potential errors, so stop ignoring them + kotlinOptions.allWarningsAsErrors = true + } + afterEvaluate { extensions.findByName("kapt")?.arguments { arg("dagger.gradle.incremental", "enabled") diff --git a/matrix-sdk-android-rx/build.gradle b/matrix-sdk-android-rx/build.gradle index 643eca82a3..31f928c241 100644 --- a/matrix-sdk-android-rx/build.gradle +++ b/matrix-sdk-android-rx/build.gradle @@ -5,8 +5,6 @@ apply plugin: 'kotlin-kapt' android { compileSdkVersion 28 - - defaultConfig { minSdkVersion 16 targetSdkVersion 28 @@ -14,7 +12,6 @@ android { versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - } buildTypes { diff --git a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/LiveDataObservable.kt b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/LiveDataObservable.kt index 9eaeff762e..7958d3efa1 100644 --- a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/LiveDataObservable.kt +++ b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/LiveDataObservable.kt @@ -59,4 +59,4 @@ private class LiveDataObservable( fun LiveData.asObservable(): Observable { return LiveDataObservable(this).observeOn(Schedulers.computation()) -} \ No newline at end of file +} diff --git a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackCompletable.kt b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackCompletable.kt index 58c015dfdd..cf0e955b00 100644 --- a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackCompletable.kt +++ b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackCompletable.kt @@ -19,7 +19,6 @@ package im.vector.matrix.rx import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.util.Cancelable import io.reactivex.CompletableEmitter -import io.reactivex.SingleEmitter internal class MatrixCallbackCompletable(private val completableEmitter: CompletableEmitter) : MatrixCallback { @@ -36,4 +35,4 @@ fun Cancelable.toCompletable(completableEmitter: CompletableEmitter) { completableEmitter.setCancellable { this.cancel() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackSingle.kt b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackSingle.kt index 8d554df270..d638354dfd 100644 --- a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackSingle.kt +++ b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/MatrixCallbackSingle.kt @@ -35,4 +35,4 @@ fun Cancelable.toSingle(singleEmitter: SingleEmitter) { singleEmitter.setCancellable { this.cancel() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/OptionalRx.kt b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/OptionalRx.kt index 74ec10b0db..d608837d4a 100644 --- a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/OptionalRx.kt +++ b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/OptionalRx.kt @@ -21,4 +21,4 @@ import io.reactivex.Observable fun Observable>.unwrap(): Observable { return filter { it.hasValue() }.map { it.get() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxRoom.kt b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxRoom.kt index b3915568e5..e058b2716c 100644 --- a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxRoom.kt +++ b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxRoom.kt @@ -67,9 +67,8 @@ class RxRoom(private val room: Room) { fun liveDrafts(): Observable> { return room.getDraftsLive().asObservable() } - } fun Room.rx(): RxRoom { return RxRoom(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxSession.kt b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxSession.kt index 0d0cb2f461..f19777b6f5 100644 --- a/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxSession.kt +++ b/matrix-sdk-android-rx/src/main/java/im/vector/matrix/rx/RxSession.kt @@ -71,9 +71,8 @@ class RxSession(private val session: Session) { fun joinRoom(roomId: String, viaServers: List = emptyList()): Single = Single.create { session.joinRoom(roomId, viaServers, MatrixCallbackSingle(it)).toSingle(it) } - } fun Session.rx(): RxSession { return RxSession(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/build.gradle b/matrix-sdk-android/build.gradle index 2781875f5f..328cfbee20 100644 --- a/matrix-sdk-android/build.gradle +++ b/matrix-sdk-android/build.gradle @@ -118,6 +118,9 @@ dependencies { implementation "ru.noties.markwon:core:$markwon_version" + // Image + implementation 'androidx.exifinterface:exifinterface:1.0.0' + // Database implementation 'com.github.Zhuinden:realm-monarchy:0.5.1' kapt 'dk.ilios:realmfieldnameshelper:1.1.1' diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/InstrumentedTest.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/InstrumentedTest.kt index c6db522c46..3cd47d4998 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/InstrumentedTest.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/InstrumentedTest.kt @@ -28,4 +28,4 @@ interface InstrumentedTest { fun cacheDir(): File { return context().cacheDir } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/OkReplayRuleChainNoActivity.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/OkReplayRuleChainNoActivity.kt index 9fd1fe6b5c..098e927a9f 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/OkReplayRuleChainNoActivity.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/OkReplayRuleChainNoActivity.kt @@ -29,4 +29,4 @@ class OkReplayRuleChainNoActivity( return RuleChain.outerRule(PermissionRule(configuration)) .around(RecorderRule(configuration)) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/SingleThreadCoroutineDispatcher.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/SingleThreadCoroutineDispatcher.kt index 69803c5dc1..e63123f3b3 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/SingleThreadCoroutineDispatcher.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/SingleThreadCoroutineDispatcher.kt @@ -19,4 +19,4 @@ package im.vector.matrix.android import im.vector.matrix.android.internal.util.MatrixCoroutineDispatchers import kotlinx.coroutines.Dispatchers.Main -internal val testCoroutineDispatchers = MatrixCoroutineDispatchers(Main, Main, Main, Main, Main) \ No newline at end of file +internal val testCoroutineDispatchers = MatrixCoroutineDispatchers(Main, Main, Main, Main, Main) diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/auth/AuthenticatorTest.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/auth/AuthenticatorTest.kt index 3dfc06196e..7d33fae4d8 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/auth/AuthenticatorTest.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/auth/AuthenticatorTest.kt @@ -28,7 +28,6 @@ import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith - @RunWith(AndroidJUnit4::class) internal class AuthenticatorTest : InstrumentedTest { @@ -50,7 +49,6 @@ internal class AuthenticatorTest : InstrumentedTest { @UiThreadTest @OkReplay(tape = "auth", mode = TapeMode.READ_WRITE) fun auth() { - } companion object { @@ -59,6 +57,4 @@ internal class AuthenticatorTest : InstrumentedTest { val grantExternalStoragePermissionRule: GrantPermissionRule = GrantPermissionRule.grant(android.Manifest.permission.WRITE_EXTERNAL_STORAGE) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreHelper.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreHelper.kt index c0fc6c4454..6b0ebbf6a4 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreHelper.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreHelper.kt @@ -41,4 +41,4 @@ internal class CryptoStoreHelper { refreshToken = null, deviceId = "deviceId_sample" ) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreTest.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreTest.kt index 0f65ad3ee5..3fc3079cc7 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreTest.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/crypto/CryptoStoreTest.kt @@ -114,4 +114,4 @@ class CryptoStoreTest { olmAccount1.releaseAccount() olmAccount2.releaseAccount() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/util/JsonCanonicalizerTest.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/util/JsonCanonicalizerTest.kt index 1ea6105da4..0a7c8f6439 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/util/JsonCanonicalizerTest.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/internal/util/JsonCanonicalizerTest.kt @@ -62,8 +62,6 @@ internal class JsonCanonicalizerTest : InstrumentedTest { JsonCanonicalizer.canonicalize("{\"a\":\"\\\"\"}")) } - - /* ========================================================================================== * Test from https://matrix.org/docs/spec/appendices.html#examples * ========================================================================================== */ @@ -74,7 +72,6 @@ internal class JsonCanonicalizerTest : InstrumentedTest { JsonCanonicalizer.canonicalize("""{}""")) } - @Test fun matrixOrg002Test() { assertEquals("""{"one":1,"two":"Two"}""", @@ -84,7 +81,6 @@ internal class JsonCanonicalizerTest : InstrumentedTest { }""")) } - @Test fun matrixOrg003Test() { assertEquals("""{"a":"1","b":"2"}""", @@ -94,14 +90,12 @@ internal class JsonCanonicalizerTest : InstrumentedTest { }""")) } - @Test fun matrixOrg004Test() { assertEquals("""{"a":"1","b":"2"}""", JsonCanonicalizer.canonicalize("""{"b":"2","a":"1"}""")) } - @Test fun matrixOrg005Test() { assertEquals("""{"auth":{"mxid":"@john.doe:example.com","profile":{"display_name":"John Doe","three_pids":[{"address":"john.doe@example.org","medium":"email"},{"address":"123456789","medium":"msisdn"}]},"success":true}}""", @@ -126,7 +120,6 @@ internal class JsonCanonicalizerTest : InstrumentedTest { }""")) } - @Test fun matrixOrg006Test() { assertEquals("""{"a":"日本語"}""", @@ -135,7 +128,6 @@ internal class JsonCanonicalizerTest : InstrumentedTest { }""")) } - @Test fun matrixOrg007Test() { assertEquals("""{"日":1,"本":2}""", @@ -145,7 +137,6 @@ internal class JsonCanonicalizerTest : InstrumentedTest { }""")) } - @Test fun matrixOrg008Test() { assertEquals("""{"a":"日"}""", @@ -159,4 +150,4 @@ internal class JsonCanonicalizerTest : InstrumentedTest { "a": null }""")) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/ChunkEntityTest.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/ChunkEntityTest.kt index c6da3c4628..abb990c979 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/ChunkEntityTest.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/ChunkEntityTest.kt @@ -35,7 +35,6 @@ import org.junit.Before import org.junit.Test import org.junit.runner.RunWith - @RunWith(AndroidJUnit4::class) internal class ChunkEntityTest : InstrumentedTest { @@ -48,7 +47,6 @@ internal class ChunkEntityTest : InstrumentedTest { monarchy = Monarchy.Builder().setRealmConfiguration(testConfig).build() } - @Test fun add_shouldAdd_whenNotAlreadyIncluded() { monarchy.runTransactionSync { realm -> @@ -194,5 +192,4 @@ internal class ChunkEntityTest : InstrumentedTest { chunk1.nextToken shouldEqual nextToken } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeGetContextOfEventTask.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeGetContextOfEventTask.kt index 48f223925c..0e1980f134 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeGetContextOfEventTask.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeGetContextOfEventTask.kt @@ -32,6 +32,4 @@ internal class FakeGetContextOfEventTask constructor(private val tokenChunkEvent ) return tokenChunkEventPersistor.insertInDb(tokenChunkEvent, params.roomId, PaginationDirection.BACKWARDS) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakePaginationTask.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakePaginationTask.kt index 2f7f63d77c..be67ffdbba 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakePaginationTask.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakePaginationTask.kt @@ -28,6 +28,4 @@ internal class FakePaginationTask @Inject constructor(private val tokenChunkEven val tokenChunkEvent = FakeTokenChunkEvent(params.from, Random.nextLong(System.currentTimeMillis()).toString(), fakeEvents) return tokenChunkEventPersistor.insertInDb(tokenChunkEvent, params.roomId, params.direction) } - } - diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeTokenChunkEvent.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeTokenChunkEvent.kt index 2a9163e4ba..3f74df2c2e 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeTokenChunkEvent.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/FakeTokenChunkEvent.kt @@ -23,4 +23,4 @@ internal data class FakeTokenChunkEvent(override val start: String?, override val end: String?, override val events: List = emptyList(), override val stateEvents: List = emptyList() -) : TokenChunkEvent \ No newline at end of file +) : TokenChunkEvent diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/RoomDataHelper.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/RoomDataHelper.kt index 7ff693584e..8a8ee11854 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/RoomDataHelper.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/RoomDataHelper.kt @@ -88,6 +88,4 @@ object RoomDataHelper { roomEntity.addOrUpdate(chunkEntity) } } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/TimelineTest.kt b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/TimelineTest.kt index f09b037605..06651f9ba3 100644 --- a/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/TimelineTest.kt +++ b/matrix-sdk-android/src/androidTest/java/im/vector/matrix/android/session/room/timeline/TimelineTest.kt @@ -81,6 +81,4 @@ internal class TimelineTest : InstrumentedTest { // timelineEvents.size shouldEqual initialLoad + paginationCount // timeline.dispose() // } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/debug/java/im/vector/matrix/android/internal/network/interceptors/FormattedJsonHttpLogger.kt b/matrix-sdk-android/src/debug/java/im/vector/matrix/android/internal/network/interceptors/FormattedJsonHttpLogger.kt index 655134d1e3..43f1373daf 100644 --- a/matrix-sdk-android/src/debug/java/im/vector/matrix/android/internal/network/interceptors/FormattedJsonHttpLogger.kt +++ b/matrix-sdk-android/src/debug/java/im/vector/matrix/android/internal/network/interceptors/FormattedJsonHttpLogger.kt @@ -51,7 +51,6 @@ class FormattedJsonHttpLogger : HttpLoggingInterceptor.Logger { // Finally this is not a JSON string... Timber.e(e) } - } else if (message.startsWith("[")) { // JSON Array detected try { @@ -61,7 +60,6 @@ class FormattedJsonHttpLogger : HttpLoggingInterceptor.Logger { // Finally not JSON... Timber.e(e) } - } // Else not a json string to log } @@ -73,4 +71,4 @@ class FormattedJsonHttpLogger : HttpLoggingInterceptor.Logger { Timber.v(s) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/Matrix.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/Matrix.kt index bdc988d2f7..1bfa871a42 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/Matrix.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/Matrix.kt @@ -38,7 +38,6 @@ data class MatrixConfiguration( interface Provider { fun providesMatrixConfiguration(): MatrixConfiguration } - } /** @@ -98,5 +97,4 @@ class Matrix private constructor(context: Context, matrixConfiguration: MatrixCo return BuildConfig.VERSION_NAME + " (" + BuildConfig.GIT_SDK_REVISION + ")" } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixCallback.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixCallback.kt index 00d22b1f9f..c2f70ce5dc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixCallback.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixCallback.kt @@ -27,7 +27,7 @@ interface MatrixCallback { * @param data the data successfully returned from the async function */ fun onSuccess(data: T) { - //no-op + // no-op } /** @@ -35,7 +35,6 @@ interface MatrixCallback { * @param failure the failure data returned from the async function */ fun onFailure(failure: Throwable) { - //no-op + // no-op } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixPatterns.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixPatterns.kt index 935408296c..e30d139cd3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixPatterns.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/MatrixPatterns.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.api - /** * This class contains pattern to match the different Matrix ids */ @@ -154,6 +153,5 @@ object MatrixPatterns { return if (index == -1) { null } else matrixId.substring(index + 1) - } } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/Authenticator.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/Authenticator.kt index 2dc2d0ef5f..77a3cde249 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/Authenticator.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/Authenticator.kt @@ -68,4 +68,4 @@ interface Authenticator { * Create a session after a SSO successful login */ fun createSessionFromSso(credentials: Credentials, homeServerConnectionConfig: HomeServerConnectionConfig): Session -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/data/HomeServerConnectionConfig.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/data/HomeServerConnectionConfig.kt index 850c4f7186..e85b05092f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/data/HomeServerConnectionConfig.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/auth/data/HomeServerConnectionConfig.kt @@ -253,13 +253,5 @@ data class HomeServerConnectionConfig( forceUsageTlsVersions ) } - } - - } - - - - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/comparators/DatedObjectComparators.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/comparators/DatedObjectComparators.kt index c9245e7331..a9d30f823c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/comparators/DatedObjectComparators.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/comparators/DatedObjectComparators.kt @@ -37,4 +37,4 @@ object DatedObjectComparators { (datedObject2.date - datedObject1.date).toInt() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/extensions/MatrixSdkExtensions.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/extensions/MatrixSdkExtensions.kt index 180d80c5c5..95489da3fb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/extensions/MatrixSdkExtensions.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/extensions/MatrixSdkExtensions.kt @@ -29,7 +29,6 @@ fun MXDeviceInfo.getFingerprintHumanReadable() = fingerprint() ?.chunked(4) ?.joinToString(separator = " ") - fun List.sortByLastSeen() { Collections.sort(this, DatedObjectComparators.descComparator) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/ConsentNotGivenError.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/ConsentNotGivenError.kt index c780720a18..80ee6811bb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/ConsentNotGivenError.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/ConsentNotGivenError.kt @@ -19,4 +19,4 @@ package im.vector.matrix.android.api.failure // This data class will be sent to the bus data class ConsentNotGivenError( val consentUri: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/Failure.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/Failure.kt index 26170a288f..6c418ed831 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/Failure.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/Failure.kt @@ -42,5 +42,4 @@ sealed class Failure(cause: Throwable? = null) : Throwable(cause = cause) { data class CryptoError(val error: MXCryptoError) : Failure(error) abstract class FeatureFailure : Failure() - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/MatrixError.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/MatrixError.kt index 7d433ba7ba..70a982089c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/MatrixError.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/failure/MatrixError.kt @@ -33,7 +33,6 @@ data class MatrixError( @Json(name = "limit_type") val limitType: String? = null, @Json(name = "admin_contact") val adminUri: String? = null) { - companion object { const val FORBIDDEN = "M_FORBIDDEN" const val UNKNOWN = "M_UNKNOWN" @@ -64,4 +63,4 @@ data class MatrixError( // Possible value for "limit_type" const val LIMIT_TYPE_MAU = "monthly_active_user" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/ProgressListener.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/ProgressListener.kt index 854f0e9fb6..ad47260f86 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/ProgressListener.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/ProgressListener.kt @@ -25,4 +25,4 @@ interface ProgressListener { * @param total */ fun onProgress(progress: Int, total: Int) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/StepProgressListener.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/StepProgressListener.kt index af5b815c1a..196aa6d655 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/StepProgressListener.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/listeners/StepProgressListener.kt @@ -31,4 +31,4 @@ interface StepProgressListener { * @param step The current step, containing progress data if available. Else you should consider progress as indeterminate */ fun onStepProgress(step: Step) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixLinkify.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixLinkify.kt index fb3dbcc26c..a4b6d27535 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixLinkify.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixLinkify.kt @@ -51,5 +51,4 @@ object MatrixLinkify { } return hasMatch } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixPermalinkSpan.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixPermalinkSpan.kt index 58cd76a0a6..afba5ab040 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixPermalinkSpan.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/MatrixPermalinkSpan.kt @@ -35,6 +35,4 @@ class MatrixPermalinkSpan(private val url: String, override fun onClick(widget: View) { callback?.onUrlClicked(url) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkData.kt index 615892a107..47f8bf4505 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkData.kt @@ -33,5 +33,4 @@ sealed class PermalinkData { data class GroupLink(val groupId: String) : PermalinkData() data class FallbackLink(val uri: Uri) : PermalinkData() - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkFactory.kt index 15d56eacb3..5cff69b2c1 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkFactory.kt @@ -51,7 +51,6 @@ object PermalinkFactory { return if (TextUtils.isEmpty(id)) { null } else MATRIX_TO_URL_BASE + escape(id) - } /** @@ -78,10 +77,8 @@ object PermalinkFactory { return if (isSupported) { url!!.substring(MATRIX_TO_URL_BASE.length) } else null - } - /** * Escape '/' in id, because it is used as a separator * diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkParser.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkParser.kt index 71fd16e778..531f4ae523 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkParser.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/permalinks/PermalinkParser.kt @@ -72,5 +72,4 @@ object PermalinkParser { else -> PermalinkData.FallbackLink(uri) } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Action.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Action.kt index b34d2d0d34..d135504055 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Action.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Action.kt @@ -18,7 +18,6 @@ package im.vector.matrix.android.api.pushrules import im.vector.matrix.android.api.pushrules.rest.PushRule import timber.log.Timber - sealed class Action { object Notify : Action() object DoNotNotify : Action() @@ -26,7 +25,6 @@ sealed class Action { data class Highlight(val highlight: Boolean) : Action() } - private const val ACTION_NOTIFY = "notify" private const val ACTION_DONT_NOTIFY = "dont_notify" private const val ACTION_COALESCE = "coalesce" @@ -80,7 +78,6 @@ fun PushRule.getActions(): List { } // When the value is not there, default sound (not specified by the spec) ?: Action.Sound(ACTION_OBJECT_VALUE_VALUE_DEFAULT) - } ACTION_OBJECT_SET_TWEAK_VALUE_HIGHLIGHT -> { (actionStrOrObj[ACTION_OBJECT_VALUE_KEY] as? Boolean)?.let { boolValue -> @@ -104,7 +101,5 @@ fun PushRule.getActions(): List { } } - return result } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Condition.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Condition.kt index c0bb4f16f4..ecc78996db 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Condition.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/Condition.kt @@ -35,9 +35,7 @@ abstract class Condition(val kind: Kind) { else -> UNRECOGNIZE } } - } - } abstract fun isSatisfied(conditionResolver: ConditionResolver): Boolean @@ -45,4 +43,4 @@ abstract class Condition(val kind: Kind) { open fun technicalDescription(): String { return "Kind: $kind" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ConditionResolver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ConditionResolver.kt index 4d15d5deec..340810bc80 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ConditionResolver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ConditionResolver.kt @@ -25,4 +25,4 @@ interface ConditionResolver { fun resolveRoomMemberCountCondition(roomMemberCountCondition: RoomMemberCountCondition): Boolean fun resolveSenderNotificationPermissionCondition(senderNotificationPermissionCondition: SenderNotificationPermissionCondition): Boolean fun resolveContainsDisplayNameCondition(containsDisplayNameCondition: ContainsDisplayNameCondition) : Boolean -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ContainsDisplayNameCondition.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ContainsDisplayNameCondition.kt index 37bc75ad57..17160aa5ec 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ContainsDisplayNameCondition.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/ContainsDisplayNameCondition.kt @@ -38,7 +38,7 @@ class ContainsDisplayNameCondition : Condition(Kind.contains_display_name) { EventType.MESSAGE -> { event.content.toModel() } - //TODO the spec says: + // TODO the spec says: // Matches any message whose content is unencrypted and contains the user's current display name // EventType.ENCRYPTED -> { // event.root.getClearContent()?.toModel() @@ -49,7 +49,6 @@ class ContainsDisplayNameCondition : Condition(Kind.contains_display_name) { return caseInsensitiveFind(displayName, message.body) } - companion object { /** * Returns whether a string contains an occurrence of another, as a standalone word, regardless of case. @@ -76,4 +75,4 @@ class ContainsDisplayNameCondition : Condition(Kind.contains_display_name) { return res } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/EventMatchCondition.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/EventMatchCondition.kt index 7325abba2a..a4eacc9018 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/EventMatchCondition.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/EventMatchCondition.kt @@ -29,28 +29,25 @@ class EventMatchCondition(val key: String, val pattern: String) : Condition(Kind return "'$key' Matches '$pattern'" } - fun isSatisfied(event: Event): Boolean { - //TODO encrypted events? + // TODO encrypted events? val rawJson = MoshiProvider.providesMoshi().adapter(Event::class.java).toJsonValue(event) as? Map<*, *> ?: return false val value = extractField(rawJson, key) ?: return false - //Patterns with no special glob characters should be treated as having asterisks prepended + // Patterns with no special glob characters should be treated as having asterisks prepended // and appended when testing the condition. try { val modPattern = if (hasSpecialGlobChar(pattern)) simpleGlobToRegExp(pattern) else simpleGlobToRegExp("*$pattern*") val regex = Regex(modPattern, RegexOption.DOT_MATCHES_ALL) return regex.containsMatchIn(value) } catch (e: Throwable) { - //e.g PatternSyntaxException + // e.g PatternSyntaxException Timber.e(e, "Failed to evaluate push condition") return false } - } - private fun extractField(jsonObject: Map<*, *>, fieldPath: String): String? { val fieldParts = fieldPath.split(".") if (fieldParts.isEmpty()) return null @@ -77,9 +74,9 @@ class EventMatchCondition(val key: String, val pattern: String) : Condition(Kind return glob.contains("*") || glob.contains("?") } - //Very simple glob to regexp converter + // Very simple glob to regexp converter private fun simpleGlobToRegExp(glob: String): String { - var out = ""//"^" + var out = "" // "^" for (i in 0 until glob.length) { val c = glob[i] when (c) { @@ -90,8 +87,8 @@ class EventMatchCondition(val key: String, val pattern: String) : Condition(Kind else -> out += c } } - out += ""//'$'.toString() + out += "" // '$'.toString() return out } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/PushRuleService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/PushRuleService.kt index c0204d181d..aa277ea8bd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/PushRuleService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/PushRuleService.kt @@ -27,10 +27,10 @@ interface PushRuleService { */ fun fetchPushRules(scope: String = RuleScope.GLOBAL) - //TODO get push rule set + // TODO get push rule set fun getPushRules(scope: String = RuleScope.GLOBAL): List - //TODO update rule + // TODO update rule fun updatePushRuleEnableStatus(kind: RuleKind, pushRule: PushRule, enabled: Boolean, callback: MatrixCallback): Cancelable @@ -42,8 +42,9 @@ interface PushRuleService { interface PushRuleListener { fun onMatchRule(event: Event, actions: List) + fun onRoomJoined(roomId: String) fun onRoomLeft(roomId: String) fun onEventRedacted(redactedEventId: String) fun batchFinish() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/RoomMemberCountCondition.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/RoomMemberCountCondition.kt index d0b76fbab7..d41788234b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/RoomMemberCountCondition.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/RoomMemberCountCondition.kt @@ -62,6 +62,5 @@ class RoomMemberCountCondition(val iz: String) : Condition(Kind.room_member_coun Timber.d(t) } return null - } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/SenderNotificationPermissionCondition.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/SenderNotificationPermissionCondition.kt index 35b731c5c3..46fc9a5c6d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/SenderNotificationPermissionCondition.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/SenderNotificationPermissionCondition.kt @@ -18,7 +18,6 @@ package im.vector.matrix.android.api.pushrules import im.vector.matrix.android.api.session.events.model.Event import im.vector.matrix.android.api.session.room.model.PowerLevels - class SenderNotificationPermissionCondition(val key: String) : Condition(Kind.sender_notification_permission) { override fun isSatisfied(conditionResolver: ConditionResolver): Boolean { @@ -29,8 +28,7 @@ class SenderNotificationPermissionCondition(val key: String) : Condition(Kind.se return "User power level <$key>" } - fun isSatisfied(event: Event, powerLevels: PowerLevels): Boolean { return event.senderId != null && powerLevels.getUserPowerLevel(event.senderId) >= powerLevels.notificationLevel(key) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushCondition.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushCondition.kt index 7b71a344a0..4b643a0b42 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushCondition.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushCondition.kt @@ -76,4 +76,4 @@ data class PushCondition( } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushRule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushRule.kt index 1e36a0d867..e9423d7c40 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushRule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/PushRule.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.api.pushrules.rest import com.squareup.moshi.Json import com.squareup.moshi.JsonClass - @JsonClass(generateAdapter = true) data class PushRule( /** @@ -47,4 +46,3 @@ data class PushRule( */ val pattern: String? = null ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/Ruleset.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/Ruleset.kt index 5f4ca15ac0..72692d5afd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/Ruleset.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/pushrules/rest/Ruleset.kt @@ -24,4 +24,4 @@ data class Ruleset( val room: List? = null, val sender: List? = null, val underride: List? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/InitialSyncProgressService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/InitialSyncProgressService.kt index a4c9d81beb..4d65179307 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/InitialSyncProgressService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/InitialSyncProgressService.kt @@ -26,4 +26,4 @@ interface InitialSyncProgressService { @StringRes val statusText: Int, val percentProgress: Int = 0 ) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/Session.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/Session.kt index 31e96bb3b8..2440713a40 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/Session.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/Session.kt @@ -19,6 +19,7 @@ package im.vector.matrix.android.api.session import androidx.annotation.MainThread import androidx.lifecycle.LiveData import im.vector.matrix.android.api.auth.data.SessionParams +import im.vector.matrix.android.api.failure.ConsentNotGivenError import im.vector.matrix.android.api.pushrules.PushRuleService import im.vector.matrix.android.api.session.cache.CacheService import im.vector.matrix.android.api.session.content.ContentUploadStateTracker @@ -67,7 +68,6 @@ interface Session : val myUserId: String get() = sessionParams.credentials.userId - /** * This method allow to open a session. It does start some service on the background. */ @@ -140,6 +140,9 @@ interface Session : */ fun onInvalidToken() + /** + * A M_CONSENT_NOT_GIVEN error has been received from the homeserver + */ + fun onConsentNotGivenError(consentNotGivenError: ConsentNotGivenError) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/cache/CacheService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/cache/CacheService.kt index 43ab78b5aa..f1e4ca6c7b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/cache/CacheService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/cache/CacheService.kt @@ -27,5 +27,4 @@ interface CacheService { * Clear the whole cached data, except credentials. Once done, the session is closed and has to be opened again */ fun clearCache(callback: MatrixCallback) - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentAttachmentData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentAttachmentData.kt index c8dca8692c..933657b2fb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentAttachmentData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentAttachmentData.kt @@ -17,6 +17,7 @@ package im.vector.matrix.android.api.session.content import android.os.Parcelable +import androidx.exifinterface.media.ExifInterface import kotlinx.android.parcel.Parcelize @Parcelize @@ -26,6 +27,7 @@ data class ContentAttachmentData( val date: Long = 0, val height: Long? = 0, val width: Long? = 0, + val exifOrientation: Int = ExifInterface.ORIENTATION_UNDEFINED, val name: String? = null, val path: String, val mimeType: String, @@ -38,5 +40,4 @@ data class ContentAttachmentData( AUDIO, VIDEO } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUploadStateTracker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUploadStateTracker.kt index 26273ebb8a..540b164aa5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUploadStateTracker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUploadStateTracker.kt @@ -35,4 +35,4 @@ interface ContentUploadStateTracker { object Success : State() data class Failure(val throwable: Throwable) : State() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUrlResolver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUrlResolver.kt index 0a20bef809..9ba1631aec 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUrlResolver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/content/ContentUrlResolver.kt @@ -44,4 +44,4 @@ interface ContentUrlResolver { * @return the URL to access the described resource, or null if the url is invalid. */ fun resolveThumbnail(contentUrl: String?, width: Int, height: Int, method: ThumbnailMethod): String? -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/CryptoService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/CryptoService.kt index 43c783a13d..706f89dfc9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/CryptoService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/CryptoService.kt @@ -112,5 +112,4 @@ interface CryptoService { fun addNewSessionListener(newSessionListener: NewSessionListener) fun removeSessionListener(listener: NewSessionListener) - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/MXCryptoError.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/MXCryptoError.kt index b61a1e4149..fe41b6c074 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/MXCryptoError.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/MXCryptoError.kt @@ -90,4 +90,4 @@ sealed class MXCryptoError : Throwable() { const val NO_MORE_ALGORITHM_REASON = "Room was previously configured to use encryption, but is no longer." + " Perhaps the homeserver is hiding the configuration event." } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupService.kt index 6728daa527..cb06dbf665 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupService.kt @@ -210,5 +210,4 @@ interface KeysBackupService { val isEnabled: Boolean val isStucked: Boolean val state: KeysBackupState - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupState.kt index a1bd29e78d..a20f1c61b4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupState.kt @@ -72,4 +72,4 @@ enum class KeysBackupState { WillBackUp, // e2e keys are being sent to the homeserver BackingUp -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupStateListener.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupStateListener.kt index f145d779f1..be1f2e5f3e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupStateListener.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/keysbackup/KeysBackupStateListener.kt @@ -23,4 +23,4 @@ interface KeysBackupStateListener { * @param newState the new state */ fun onStateChange(newState: KeysBackupState) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/CancelCode.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/CancelCode.kt index d999d06fc5..92a69bcad6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/CancelCode.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/CancelCode.kt @@ -30,4 +30,4 @@ enum class CancelCode(val value: String, val humanReadable: String) { fun safeValueOf(code: String?): CancelCode { return CancelCode.values().firstOrNull { code == it.value } ?: CancelCode.User -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/EmojiRepresentation.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/EmojiRepresentation.kt index 0bcb96a999..031610f0c6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/EmojiRepresentation.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/EmojiRepresentation.kt @@ -19,4 +19,4 @@ package im.vector.matrix.android.api.session.crypto.sas import androidx.annotation.StringRes data class EmojiRepresentation(val emoji: String, - @StringRes val nameResId: Int) \ No newline at end of file + @StringRes val nameResId: Int) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/IncomingSasVerificationTransaction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/IncomingSasVerificationTransaction.kt index 791c63dc15..57dfc74236 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/IncomingSasVerificationTransaction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/IncomingSasVerificationTransaction.kt @@ -31,4 +31,4 @@ interface IncomingSasVerificationTransaction { CANCELLED_BY_ME, CANCELLED_BY_OTHER } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/OutgoingSasVerificationRequest.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/OutgoingSasVerificationRequest.kt index 6aeed55549..f2c16da997 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/OutgoingSasVerificationRequest.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/OutgoingSasVerificationRequest.kt @@ -29,4 +29,4 @@ interface OutgoingSasVerificationRequest { CANCELLED_BY_ME, CANCELLED_BY_OTHER } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/Mode.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasMode.kt similarity index 99% rename from matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/Mode.kt rename to matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasMode.kt index da72e98bad..f58485decd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/Mode.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasMode.kt @@ -19,4 +19,4 @@ package im.vector.matrix.android.api.session.crypto.sas object SasMode { const val DECIMAL = "decimal" const val EMOJI = "emoji" -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationService.kt index a11c69cd7e..88c0787b4d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationService.kt @@ -36,4 +36,4 @@ interface SasVerificationService { fun transactionUpdated(tx: SasVerificationTransaction) fun markedAsManuallyVerified(userId: String, deviceId: String) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTransaction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTransaction.kt index dc489cf644..d24ccadb55 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTransaction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTransaction.kt @@ -47,4 +47,4 @@ interface SasVerificationTransaction { * both short codes do match */ fun userHasVerifiedShortCode() -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTxState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTxState.kt index 60ce8f0cc6..350ec2c381 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTxState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/crypto/sas/SasVerificationTxState.kt @@ -43,7 +43,7 @@ enum class SasVerificationTxState { Verifying, Verified, - //Global: The verification has been cancelled (by me or other), see cancelReason for details + // Global: The verification has been cancelled (by me or other), see cancelReason for details Cancelled, OnCancelled } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedAnnotation.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedAnnotation.kt index 3f1c619906..ef164cd17b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedAnnotation.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedAnnotation.kt @@ -34,9 +34,9 @@ import com.squareup.moshi.JsonClass */ @JsonClass(generateAdapter = true) -data class AggregatedAnnotation ( +data class AggregatedAnnotation( override val limited: Boolean? = false, override val count: Int? = 0, val chunk: List? = null -) : UnsignedRelationInfo \ No newline at end of file +) : UnsignedRelationInfo diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedRelations.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedRelations.kt index 0f8d21f532..d04a72bac5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedRelations.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/AggregatedRelations.kt @@ -50,4 +50,4 @@ import com.squareup.moshi.JsonClass data class AggregatedRelations( @Json(name = "m.annotation") val annotations: AggregatedAnnotation? = null, @Json(name = "m.reference") val references: DefaultUnsignedRelationInfo? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/DefaultUnsignedRelationInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/DefaultUnsignedRelationInfo.kt index 3e2df0aaf2..f7a573ca28 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/DefaultUnsignedRelationInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/DefaultUnsignedRelationInfo.kt @@ -23,4 +23,4 @@ data class DefaultUnsignedRelationInfo( override val count: Int? = 0, val chunk: List>? = null -) : UnsignedRelationInfo \ No newline at end of file +) : UnsignedRelationInfo diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/Event.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/Event.kt index 902515a239..c723009771 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/Event.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/Event.kt @@ -81,7 +81,6 @@ data class Event( @Json(name = "redacts") val redacts: String? = null ) { - @Transient var mxDecryptionResult: OlmDecryptionResult? = null @@ -91,7 +90,6 @@ data class Event( @Transient var sendState: SendState = SendState.UNKNOWN - /** * Check if event is a state event. * @return true if event is state event. @@ -100,9 +98,9 @@ data class Event( return EventType.isStateEvent(getClearType()) } - //============================================================================================================== + // ============================================================================================================== // Crypto - //============================================================================================================== + // ============================================================================================================== /** * @return true if this event is encrypted. @@ -136,6 +134,7 @@ data class Event( * @return the event content */ fun getClearContent(): Content? { + @Suppress("UNCHECKED_CAST") return mxDecryptionResult?.payload?.get("content") as? Content ?: content } @@ -194,10 +193,8 @@ data class Event( result = 31 * result + sendState.hashCode() return result } - } - fun Event.isTextMessage(): Boolean { return getClearType() == EventType.MESSAGE && when (getClearContent()?.toModel()?.type) { @@ -214,4 +211,4 @@ fun Event.isImageMessage(): Boolean { MessageType.MSGTYPE_IMAGE -> true else -> false } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/EventType.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/EventType.kt index 98ce6c0f9e..38c24fa89b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/EventType.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/EventType.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.api.session.events.model - /** * Constants defining known event types from Matrix specifications. */ @@ -93,7 +92,6 @@ object EventType { STATE_PINNED_EVENT ) - fun isStateEvent(type: String): Boolean { return STATE_EVENTS.contains(type) } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/RelationType.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/RelationType.kt index 0f5421a05a..06b3e9bf2e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/RelationType.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/RelationType.kt @@ -15,7 +15,6 @@ */ package im.vector.matrix.android.api.session.events.model - /** * Constants defining known event relation types from Matrix specifications */ @@ -27,5 +26,4 @@ object RelationType { const val REPLACE = "m.replace" /** Lets you define an event which references an existing event.*/ const val REFERENCE = "m.reference" - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedData.kt index 4a9547e3f1..57eaa7dc76 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedData.kt @@ -26,4 +26,4 @@ data class UnsignedData( @Json(name = "transaction_id") val transactionId: String? = null, @Json(name = "prev_content") val prevContent: Map? = null, @Json(name = "m.relations") val relations: AggregatedRelations? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedRelationInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedRelationInfo.kt index 5b627b6236..ad31ad3a32 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedRelationInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/events/model/UnsignedRelationInfo.kt @@ -15,8 +15,7 @@ */ package im.vector.matrix.android.api.session.events.model - interface UnsignedRelationInfo { val limited : Boolean? val count: Int? -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/file/FileService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/file/FileService.kt index 296b7e1537..e1694199ed 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/file/FileService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/file/FileService.kt @@ -20,7 +20,6 @@ import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.internal.crypto.attachments.ElementToDecrypt import java.io.File - /** * This interface defines methods to get files. */ @@ -49,4 +48,4 @@ interface FileService { url: String?, elementToDecrypt: ElementToDecrypt?, callback: MatrixCallback) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/Group.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/Group.kt index ae41eb9eb7..3967c15704 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/Group.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/Group.kt @@ -21,4 +21,4 @@ package im.vector.matrix.android.api.session.group */ interface Group { val groupId: String -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/GroupService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/GroupService.kt index 2ccfbff2c7..ff63d1a9e7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/GroupService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/GroupService.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.api.session.group import androidx.lifecycle.LiveData import im.vector.matrix.android.api.session.group.model.GroupSummary - /** * This interface defines methods to get groups. It's implemented at the session level. */ @@ -37,4 +36,4 @@ interface GroupService { * @return the [LiveData] of [GroupSummary] */ fun liveGroupSummaries(): LiveData> -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/model/GroupSummary.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/model/GroupSummary.kt index 328ca746a6..8e39d6d31a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/model/GroupSummary.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/group/model/GroupSummary.kt @@ -30,4 +30,4 @@ data class GroupSummary( val avatarUrl: String = "", val roomIds: List = emptyList(), val userIds: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/homeserver/HomeServerCapabilitiesService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/homeserver/HomeServerCapabilitiesService.kt index 8e23c21068..e8b38735cf 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/homeserver/HomeServerCapabilitiesService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/homeserver/HomeServerCapabilitiesService.kt @@ -25,5 +25,4 @@ interface HomeServerCapabilitiesService { * Get the HomeServer capabilities */ fun getHomeServerCapabilities(): HomeServerCapabilities - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/Pusher.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/Pusher.kt index baedce9693..ba0af7d4dc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/Pusher.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/Pusher.kt @@ -39,4 +39,4 @@ enum class PusherState { data class PusherData( val url: String? = null, val format: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/PushersService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/PushersService.kt index c905490432..d082faa7c7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/PushersService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/pushers/PushersService.kt @@ -19,7 +19,6 @@ import androidx.lifecycle.LiveData import im.vector.matrix.android.api.MatrixCallback import java.util.UUID - interface PushersService { /** @@ -53,7 +52,6 @@ interface PushersService { append: Boolean, withEventIdOnly: Boolean): UUID - fun removeHttpPusher(pushkey: String, appId: String, callback: MatrixCallback) companion object { @@ -63,4 +61,4 @@ interface PushersService { fun livePushers(): LiveData> fun pushers() : List -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/Room.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/Room.kt index c3564c27f8..9f91e5b276 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/Room.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/Room.kt @@ -53,5 +53,4 @@ interface Room : fun getRoomSummaryLive(): LiveData> fun roomSummary(): RoomSummary? - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomDirectoryService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomDirectoryService.kt index 272ab5675b..930320d976 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomDirectoryService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomDirectoryService.kt @@ -42,5 +42,4 @@ interface RoomDirectoryService { * Includes both the available protocols and all fields required for queries against each protocol. */ fun getThirdPartyProtocol(callback: MatrixCallback>): Cancelable - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomService.kt index 7ec50bd2ca..175d393c86 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/RoomService.kt @@ -53,5 +53,4 @@ interface RoomService { * @return the [LiveData] of [RoomSummary] */ fun liveRoomSummaries(): LiveData> - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/crypto/RoomCryptoService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/crypto/RoomCryptoService.kt index 910002ab6e..f8c15fde47 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/crypto/RoomCryptoService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/crypto/RoomCryptoService.kt @@ -23,4 +23,4 @@ interface RoomCryptoService { fun encryptionAlgorithm(): String? fun shouldEncryptForInvitedMembers(): Boolean -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/CreateRoomFailure.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/CreateRoomFailure.kt index 086dc621ca..263f699e62 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/CreateRoomFailure.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/CreateRoomFailure.kt @@ -21,5 +21,4 @@ import im.vector.matrix.android.api.failure.Failure sealed class CreateRoomFailure : Failure.FeatureFailure() { object CreatedWithTimeout: CreateRoomFailure() - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/JoinRoomFailure.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/JoinRoomFailure.kt index 4c7dd62ad6..80393e5d3d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/JoinRoomFailure.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/failure/JoinRoomFailure.kt @@ -21,5 +21,4 @@ import im.vector.matrix.android.api.failure.Failure sealed class JoinRoomFailure : Failure.FeatureFailure() { object JoinedWithTimeout : JoinRoomFailure() - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/members/MembershipService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/members/MembershipService.kt index 9dba26cb3e..8d60bee9da 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/members/MembershipService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/members/MembershipService.kt @@ -64,5 +64,4 @@ interface MembershipService { * Leave the room, or reject an invitation. */ fun leave(callback: MatrixCallback): Cancelable - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/EventAnnotationsSummary.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/EventAnnotationsSummary.kt index 18899f8700..0d403be2f4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/EventAnnotationsSummary.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/EventAnnotationsSummary.kt @@ -19,4 +19,4 @@ data class EventAnnotationsSummary( var eventId: String, var reactionsSummary: List, var editSummary: EditAggregatedSummary? -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Invite.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Invite.kt index c808ad556c..c439143de5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Invite.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Invite.kt @@ -27,4 +27,4 @@ data class Invite( @Json(name = "display_name") val displayName: String, @Json(name = "signed") val signed: Signed -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Membership.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Membership.kt index d87bb9b3db..1894effc7a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Membership.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Membership.kt @@ -43,5 +43,4 @@ enum class Membership(val value: String) { fun isLeft(): Boolean { return this == KNOCK || this == LEAVE || this == BAN } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/PowerLevels.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/PowerLevels.kt index 964d618264..196f18404c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/PowerLevels.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/PowerLevels.kt @@ -78,7 +78,6 @@ data class PowerLevels( return if (!TextUtils.isEmpty(eventTypeString) && !TextUtils.isEmpty(userId)) { getUserPowerLevel(userId) >= minimumPowerLevelForSendingEventAsMessage(eventTypeString) } else false - } /** @@ -113,7 +112,6 @@ data class PowerLevels( return events[eventTypeString] ?: stateDefault } - /** * Get the notification level for a dedicated key. * @@ -134,4 +132,4 @@ data class PowerLevels( return 50 } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReactionAggregatedSummary.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReactionAggregatedSummary.kt index 7036f68186..5ab4804fae 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReactionAggregatedSummary.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReactionAggregatedSummary.kt @@ -23,4 +23,4 @@ data class ReactionAggregatedSummary( val firstTimestamp: Long, // unix timestamp val sourceEvents: List, val localEchoEvents: List -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReadReceipt.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReadReceipt.kt index e168dc1e5b..4bb31bccdc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReadReceipt.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/ReadReceipt.kt @@ -21,4 +21,4 @@ import im.vector.matrix.android.api.session.user.model.User data class ReadReceipt( val user: User, val originServerTs: Long -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAliasesContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAliasesContent.kt index 74b29b7aea..8a857a1c02 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAliasesContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAliasesContent.kt @@ -25,4 +25,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class RoomAliasesContent( @Json(name = "aliases") val aliases: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAvatarContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAvatarContent.kt index 8f81632bf4..fc0814817c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAvatarContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomAvatarContent.kt @@ -25,4 +25,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class RoomAvatarContent( @Json(name = "url") val avatarUrl: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomCanonicalAliasContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomCanonicalAliasContent.kt index abaa9f0a6c..a66f23555d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomCanonicalAliasContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomCanonicalAliasContent.kt @@ -25,4 +25,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class RoomCanonicalAliasContent( @Json(name = "alias") val canonicalAlias: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomDirectoryVisibility.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomDirectoryVisibility.kt index 2e1b5a3922..ab3407392c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomDirectoryVisibility.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomDirectoryVisibility.kt @@ -21,4 +21,4 @@ import com.squareup.moshi.Json enum class RoomDirectoryVisibility { @Json(name = "private") PRIVATE, @Json(name = "public") PUBLIC -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibility.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibility.kt index 9260b0112c..a066aaadd5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibility.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibility.kt @@ -23,4 +23,4 @@ enum class RoomHistoryVisibility { @Json(name = "invited") INVITED, @Json(name = "joined") JOINED, @Json(name = "world_readable") WORLD_READABLE -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibilityContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibilityContent.kt index 7781bcdaf7..96bd910781 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibilityContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomHistoryVisibilityContent.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class RoomHistoryVisibilityContent( @Json(name = "history_visibility") val historyVisibility: RoomHistoryVisibility? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomMember.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomMember.kt index 10c3e8ec7c..aa73727685 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomMember.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomMember.kt @@ -31,4 +31,4 @@ data class RoomMember( @Json(name = "is_direct") val isDirect: Boolean = false, @Json(name = "third_party_invite") val thirdPartyInvite: Invite? = null, @Json(name = "unsigned") val unsignedData: UnsignedData? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomNameContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomNameContent.kt index 48cbb91cac..72bdaf1d36 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomNameContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomNameContent.kt @@ -25,4 +25,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class RoomNameContent( @Json(name = "name") val name: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomSummary.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomSummary.kt index 4aa9e58539..447ba563de 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomSummary.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomSummary.kt @@ -48,4 +48,3 @@ data class RoomSummary( val hasNewMessages: Boolean get() = notificationCount != 0 } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomTopicContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomTopicContent.kt index 8a6e3f90f3..2439618f46 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomTopicContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/RoomTopicContent.kt @@ -25,4 +25,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class RoomTopicContent( @Json(name = "topic") val topic: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Signed.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Signed.kt index 4f0e5212fb..43b957bde3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Signed.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/Signed.kt @@ -22,4 +22,4 @@ data class Signed( @Json(name = "token") val token: String, @Json(name = "signatures") val signatures: Any, @Json(name = "mxid") val mxid: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/VersioningState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/VersioningState.kt index f2753fbf35..a878e10e3f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/VersioningState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/VersioningState.kt @@ -20,4 +20,4 @@ enum class VersioningState { NONE, UPGRADED_ROOM_NOT_JOINED, UPGRADED_ROOM_JOINED -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallAnswerContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallAnswerContent.kt index 0539571884..24eb68bd78 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallAnswerContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallAnswerContent.kt @@ -31,5 +31,4 @@ data class CallAnswerContent( @Json(name = "type") val type: String, @Json(name = "sdp") val sdp: String ) - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallCandidatesContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallCandidatesContent.kt index 48c02f3df8..5fb4db84a3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallCandidatesContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallCandidatesContent.kt @@ -32,5 +32,4 @@ data class CallCandidatesContent( @Json(name = "sdpMLineIndex") val sdpMLineIndex: String, @Json(name = "candidate") val candidate: String ) - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallInviteContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallInviteContent.kt index 58e5d561e6..29305d1420 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallInviteContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/call/CallInviteContent.kt @@ -37,6 +37,5 @@ data class CallInviteContent( } } - fun isVideo(): Boolean = offer.sdp.contains(Offer.SDP_VIDEO) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomParams.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomParams.kt index c707f3c3ef..35109501e4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomParams.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomParams.kt @@ -243,4 +243,4 @@ class CreateRoomParams { // TODO add phonenumbers when it will be available } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomPreset.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomPreset.kt index 9548062bae..eafe9ef292 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomPreset.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/CreateRoomPreset.kt @@ -27,4 +27,4 @@ enum class CreateRoomPreset { @Json(name = "trusted_private_chat") PRESET_TRUSTED_PRIVATE_CHAT -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/Invite3Pid.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/Invite3Pid.kt index 5ad920a32b..8e3386080f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/Invite3Pid.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/Invite3Pid.kt @@ -39,4 +39,4 @@ data class Invite3Pid( * The invitee's third party identifier. */ val address: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/RoomCreateContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/RoomCreateContent.kt index afb318bce9..323c7d7445 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/RoomCreateContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/create/RoomCreateContent.kt @@ -28,5 +28,3 @@ data class RoomCreateContent( @Json(name = "room_version") val roomVersion: String? = null, @Json(name = "predecessor") val predecessor: Predecessor? = null ) - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/AudioInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/AudioInfo.kt index de30d46024..eef6b283c6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/AudioInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/AudioInfo.kt @@ -35,4 +35,4 @@ data class AudioInfo( * The duration of the audio in milliseconds. */ @Json(name = "duration") val duration: Int = 0 -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/FileInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/FileInfo.kt index d5dfb04f19..b8ed516d9d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/FileInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/FileInfo.kt @@ -46,4 +46,4 @@ data class FileInfo( * Information on the encrypted thumbnail file, as specified in End-to-end encryption. Only present if the thumbnail is encrypted. */ @Json(name = "thumbnail_file") val thumbnailFile: EncryptedFileInfo? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ImageInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ImageInfo.kt index 729bc604c1..20af927e46 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ImageInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ImageInfo.kt @@ -42,16 +42,6 @@ data class ImageInfo( */ @Json(name = "size") val size: Int = 0, - /** - * Not documented - */ - @Json(name = "rotation") val rotation: Int = 0, - - /** - * Not documented - */ - @Json(name = "orientation") val orientation: Int = 0, - /** * Metadata about the image referred to in thumbnail_url. */ @@ -66,4 +56,4 @@ data class ImageInfo( * Information on the encrypted thumbnail file, as specified in End-to-end encryption. Only present if the thumbnail is encrypted. */ @Json(name = "thumbnail_file") val thumbnailFile: EncryptedFileInfo? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/LocationInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/LocationInfo.kt index f00d48826b..ab6e5e66e9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/LocationInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/LocationInfo.kt @@ -36,4 +36,4 @@ data class LocationInfo( * Information on the encrypted thumbnail file, as specified in End-to-end encryption. Only present if the thumbnail is encrypted. */ @Json(name = "thumbnail_file") val thumbnailFile: EncryptedFileInfo? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageContent.kt index c116c6b315..157ff00d69 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageContent.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.api.session.room.model.message import im.vector.matrix.android.api.session.events.model.Content import im.vector.matrix.android.api.session.room.model.relation.RelationDefaultContent - interface MessageContent { val type: String val body: String @@ -27,7 +26,6 @@ interface MessageContent { val newContent: Content? } - fun MessageContent?.isReply(): Boolean { return this?.relatesTo?.inReplyTo?.eventId != null } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageDefaultContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageDefaultContent.kt index 45ce9542e0..705dbf5d85 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageDefaultContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageDefaultContent.kt @@ -27,4 +27,4 @@ data class MessageDefaultContent( @Json(name = "body") override val body: String, @Json(name = "m.relates_to") override val relatesTo: RelationDefaultContent? = null, @Json(name = "m.new_content") override val newContent: Content? = null -) : MessageContent \ No newline at end of file +) : MessageContent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEmoteContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEmoteContent.kt index 88fd3bc1cd..ec340659a2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEmoteContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEmoteContent.kt @@ -29,4 +29,4 @@ data class MessageEmoteContent( @Json(name = "formatted_body") val formattedBody: String? = null, @Json(name = "m.relates_to") override val relatesTo: RelationDefaultContent? = null, @Json(name = "m.new_content") override val newContent: Content? = null -) : MessageContent \ No newline at end of file +) : MessageContent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEncryptedContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEncryptedContent.kt index 125c18bb00..110b9c68f0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEncryptedContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageEncryptedContent.kt @@ -18,7 +18,6 @@ package im.vector.matrix.android.api.session.room.model.message import im.vector.matrix.android.internal.crypto.model.rest.EncryptedFileInfo - /** * Interface for message which can contains an encrypted file */ diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageLocationContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageLocationContent.kt index deddec12a5..15c746fd38 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageLocationContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageLocationContent.kt @@ -45,4 +45,4 @@ data class MessageLocationContent( @Json(name = "m.relates_to") override val relatesTo: RelationDefaultContent? = null, @Json(name = "m.new_content") override val newContent: Content? = null -) : MessageContent \ No newline at end of file +) : MessageContent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageNoticeContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageNoticeContent.kt index 54037c600f..9a4fea1060 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageNoticeContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageNoticeContent.kt @@ -29,4 +29,4 @@ data class MessageNoticeContent( @Json(name = "formatted_body") val formattedBody: String? = null, @Json(name = "m.relates_to") override val relatesTo: RelationDefaultContent? = null, @Json(name = "m.new_content") override val newContent: Content? = null -) : MessageContent \ No newline at end of file +) : MessageContent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageTextContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageTextContent.kt index 3256d8306f..001b9ff0dd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageTextContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageTextContent.kt @@ -29,4 +29,4 @@ data class MessageTextContent( @Json(name = "formatted_body") val formattedBody: String? = null, @Json(name = "m.relates_to") override val relatesTo: RelationDefaultContent? = null, @Json(name = "m.new_content") override val newContent: Content? = null -) : MessageContent \ No newline at end of file +) : MessageContent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageType.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageType.kt index 7db3301898..8cef40f21a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageType.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/MessageType.kt @@ -30,4 +30,4 @@ object MessageType { // Add, in local, a fake message type in order to StickerMessage can inherit Message class // Because sticker isn't a message type but a event type without msgtype field const val MSGTYPE_STICKER_LOCAL = "org.matrix.android.sdk.sticker" -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ThumbnailInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ThumbnailInfo.kt index 1e308d79fa..0ef1b8f658 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ThumbnailInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/ThumbnailInfo.kt @@ -40,4 +40,4 @@ data class ThumbnailInfo( * The mimetype of the image, e.g. "image/jpeg". */ @Json(name = "mimetype") val mimeType: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/VideoInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/VideoInfo.kt index 0622037896..a7d4708d33 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/VideoInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/message/VideoInfo.kt @@ -61,4 +61,4 @@ data class VideoInfo( * Information on the encrypted thumbnail file, as specified in End-to-end encryption. Only present if the thumbnail is encrypted. */ @Json(name = "thumbnail_file") val thumbnailFile: EncryptedFileInfo? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/ReactionInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/ReactionInfo.kt index 72a30ec2e2..c4cbde98eb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/ReactionInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/ReactionInfo.kt @@ -24,6 +24,6 @@ data class ReactionInfo( @Json(name = "rel_type") override val type: String?, @Json(name = "event_id") override val eventId: String, val key: String, - //always null for reaction + // always null for reaction @Json(name = "m.in_reply_to") override val inReplyTo: ReplyToContent? = null -) : RelationContent \ No newline at end of file +) : RelationContent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationContent.kt index 5f89a482d0..c66d1b9770 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationContent.kt @@ -23,4 +23,4 @@ interface RelationContent { val type: String? val eventId: String? val inReplyTo: ReplyToContent? -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt index 5f85671e0d..c6a58eeec1 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/relation/RelationService.kt @@ -48,7 +48,6 @@ import im.vector.matrix.android.api.util.Optional */ interface RelationService { - /** * Sends a reaction (emoji) to the targetedEvent. * @param reaction the reaction (preferably emoji) @@ -57,7 +56,6 @@ interface RelationService { fun sendReaction(reaction: String, targetEventId: String): Cancelable - /** * Undo a reaction (emoji) to the targetedEvent. * @param reaction the reaction (preferably emoji) @@ -66,8 +64,7 @@ interface RelationService { */ fun undoReaction(reaction: String, targetEventId: String, - myUserId: String)//: Cancelable - + myUserId: String) // : Cancelable /** * Edit a text message body. Limited to "m.text" contentType @@ -81,7 +78,6 @@ interface RelationService { newBodyAutoMarkdown: Boolean, compatibilityBodyText: String = "* $newBodyText"): Cancelable - /** * Edit a reply. This is a special case because replies contains fallback text as a prefix. * This method will take the new body (stripped from fallbacks) and re-add them before sending. @@ -100,7 +96,6 @@ interface RelationService { */ fun fetchEditHistory(eventId: String, callback: MatrixCallback>) - /** * Reply to an event in the timeline (must be in same room) * https://matrix.org/docs/spec/client_server/r0.4.0.html#id350 @@ -113,6 +108,4 @@ interface RelationService { autoMarkdown: Boolean = false): Cancelable? fun getEventSummaryLive(eventId: String): LiveData> - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/tag/RoomTag.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/tag/RoomTag.kt index 0623e8d93c..9e85ba3255 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/tag/RoomTag.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/tag/RoomTag.kt @@ -27,5 +27,4 @@ data class RoomTag( val ROOM_TAG_NO_TAG = "m.recent" val ROOM_TAG_SERVER_NOTICE = "m.server_notice" } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/RoomDirectoryData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/RoomDirectoryData.kt index 11a347c0ee..e651500af1 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/RoomDirectoryData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/RoomDirectoryData.kt @@ -51,5 +51,4 @@ data class RoomDirectoryData( companion object { const val DEFAULT_HOME_SERVER_NAME = "Matrix" } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocol.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocol.kt index a31df79436..b066cff164 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocol.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocol.kt @@ -59,4 +59,4 @@ data class ThirdPartyProtocol( */ @Json(name = "instances") var instances: List? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocolInstance.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocolInstance.kt index d2bea70051..50f92356fb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocolInstance.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/model/thirdparty/ThirdPartyProtocolInstance.kt @@ -51,10 +51,9 @@ data class ThirdPartyProtocolInstance( @Json(name = "instance_id") var instanceId: String? = null, - /** * FIXDOC Not documented on matrix.org doc */ @Json(name = "bot_user_id") var botUserId: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/read/ReadService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/read/ReadService.kt index e315224880..c9bb6fbf9b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/read/ReadService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/read/ReadService.kt @@ -61,4 +61,4 @@ interface ReadService { * @param eventId: the event */ fun getEventReadReceiptsLive(eventId: String): LiveData> -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/DraftService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/DraftService.kt index c700b40a08..2324f1e221 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/DraftService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/DraftService.kt @@ -35,5 +35,4 @@ interface DraftService { * The draft list can contain one draft for {regular, reply, quote} and an arbitrary number of {edit} drafts */ fun getDraftsLive(): LiveData> - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendService.kt index ae276adb73..8c783837a2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendService.kt @@ -22,7 +22,6 @@ import im.vector.matrix.android.api.session.room.model.message.MessageType import im.vector.matrix.android.api.session.room.timeline.TimelineEvent import im.vector.matrix.android.api.util.Cancelable - /** * This interface defines methods to send events in a room. It's implemented at the room level. */ @@ -66,7 +65,6 @@ interface SendService { */ fun redactEvent(event: Event, reason: String?): Cancelable - /** * Schedule this message to be resent * @param localEcho the unsent local echo @@ -79,7 +77,6 @@ interface SendService { */ fun resendMediaMessage(localEcho: TimelineEvent): Cancelable? - /** * Remove this failed message from the timeline * @param localEcho the unsent local echo @@ -92,5 +89,4 @@ interface SendService { * Resend all failed messages one by one (and keep order) */ fun resendAllFailedMessages() - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendState.kt index aaa7020be6..cfe3c9ae1a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/send/SendState.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.api.session.room.send - enum class SendState { UNKNOWN, // the event has not been sent @@ -46,7 +45,4 @@ enum class SendState { fun hasFailed() = HAS_FAILED_STATES.contains(this) fun isSending() = IS_SENDING_STATES.contains(this) - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/state/StateService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/state/StateService.kt index 21aae95bdf..06f4a9c7ee 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/state/StateService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/state/StateService.kt @@ -27,5 +27,4 @@ interface StateService { fun updateTopic(topic: String, callback: MatrixCallback) fun getStateEvent(eventType: String): Event? - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/Timeline.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/Timeline.kt index 9873b75e70..c03effd7ad 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/Timeline.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/Timeline.kt @@ -50,7 +50,6 @@ interface Timeline { */ fun restartWithEventId(eventId: String?) - /** * Check if the timeline can be enriched by paginating. * @param the direction to check in @@ -58,7 +57,6 @@ interface Timeline { */ fun hasMoreToLoad(direction: Direction): Boolean - /** * This is the main method to enrich the timeline with new data. * It will call the onUpdated method from [Listener] when the data will be processed. @@ -97,7 +95,6 @@ interface Timeline { */ fun getFirstDisplayableEventId(eventId: String): String? - interface Listener { /** * Call when the timeline has been updated through pagination or sync. @@ -119,5 +116,4 @@ interface Timeline { */ BACKWARDS } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineEvent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineEvent.kt index 7f90bcff10..43c1544ffd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineEvent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineEvent.kt @@ -88,7 +88,6 @@ data class TimelineEvent( } } - /** * Tells if the event has been edited */ @@ -107,7 +106,6 @@ fun TimelineEvent.getEditedEventId(): String? { fun TimelineEvent.getLastMessageContent(): MessageContent? = annotations?.editSummary?.aggregatedContent?.toModel() ?: root.getClearContent().toModel() - /** * Get last Message body, after a possible edition */ @@ -121,7 +119,6 @@ fun TimelineEvent.getLastMessageBody(): String? { return null } - fun TimelineEvent.getTextEditableContent(): String? { val originalContent = root.getClearContent().toModel() ?: return null val isReply = originalContent.isReply() || root.content.toModel()?.relatesTo?.inReplyTo?.eventId != null diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineService.kt index b36a8631c3..2b23ee40ca 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/room/timeline/TimelineService.kt @@ -33,9 +33,7 @@ interface TimelineService { */ fun createTimeline(eventId: String?, settings: TimelineSettings): Timeline - fun getTimeLineEvent(eventId: String): TimelineEvent? - fun getTimeLineEventLive(eventId: String): LiveData> -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/securestorage/SecureStorageService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/securestorage/SecureStorageService.kt index d56b6150ee..bae8132990 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/securestorage/SecureStorageService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/securestorage/SecureStorageService.kt @@ -24,5 +24,4 @@ interface SecureStorageService { fun securelyStoreObject(any: Any, keyAlias: String, outputStream: OutputStream) fun loadSecureSecret(inputStream: InputStream, keyAlias: String): T? - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/signout/SignOutService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/signout/SignOutService.kt index 11f7cd57f7..5a0638fb6e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/signout/SignOutService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/signout/SignOutService.kt @@ -27,5 +27,4 @@ interface SignOutService { * Sign out */ fun signOut(callback: MatrixCallback) - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/FilterService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/FilterService.kt index 4a29013def..e995e775a9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/FilterService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/FilterService.kt @@ -30,4 +30,4 @@ interface FilterService { * Configure the filter for the sync */ fun setFilter(filterPreset: FilterPreset) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/SyncState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/SyncState.kt index 8c34e392b5..4db40b2c55 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/SyncState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/sync/SyncState.kt @@ -23,4 +23,4 @@ sealed class SyncState { object KILLING : SyncState() object KILLED : SyncState() object NO_NETWORK : SyncState() -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/UserService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/UserService.kt index 97b02fafea..d3de777e34 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/UserService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/UserService.kt @@ -64,5 +64,4 @@ interface UserService { * @return a Livedata of users */ fun livePagedUsers(filter: String? = null): LiveData> - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/model/User.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/model/User.kt index 50e76053bc..f569f5e47e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/model/User.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/user/model/User.kt @@ -24,4 +24,4 @@ data class User( val userId: String, val displayName: String? = null, val avatarUrl: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Cancelable.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Cancelable.kt index d2573de455..7f3543dec2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Cancelable.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Cancelable.kt @@ -26,7 +26,6 @@ interface Cancelable { * The cancel method, it does nothing by default. */ fun cancel() { - //no-op + // no-op } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/ContentUtils.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/ContentUtils.kt index ad17d26b20..9131cf143b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/ContentUtils.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/ContentUtils.kt @@ -15,7 +15,6 @@ */ package im.vector.matrix.android.api.util - object ContentUtils { fun extractUsefulTextFromReply(repliedBody: String): String { val lines = repliedBody.lines() @@ -39,9 +38,10 @@ object ContentUtils { fun extractUsefulTextFromHtmlReply(repliedBody: String): String { if (repliedBody.startsWith("")) { val closingTagIndex = repliedBody.lastIndexOf("") - if (closingTagIndex != -1) + if (closingTagIndex != -1) { return repliedBody.substring(closingTagIndex + "".length).trim() + } } return repliedBody } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/MatrixCallbackDelegate.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/MatrixCallbackDelegate.kt index 2b4e30a1e6..06b157daeb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/MatrixCallbackDelegate.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/MatrixCallbackDelegate.kt @@ -21,4 +21,4 @@ import im.vector.matrix.android.api.MatrixCallback /** * Simple MatrixCallback implementation which delegate its calls to another callback */ -open class MatrixCallbackDelegate(private val callback: MatrixCallback) : MatrixCallback by callback \ No newline at end of file +open class MatrixCallbackDelegate(private val callback: MatrixCallback) : MatrixCallback by callback diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Optional.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Optional.kt index 6685a6661c..2f602d0b84 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Optional.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Optional.kt @@ -31,7 +31,7 @@ data class Optional constructor(private val value: T?) { return value ?: fn() } - fun hasValue(): Boolean{ + fun hasValue(): Boolean { return value != null } @@ -40,7 +40,6 @@ data class Optional constructor(private val value: T?) { return Optional(value) } } - } fun T?.toOptional() = Optional(this) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Types.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Types.kt index c2f710df1f..bfb9a59956 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Types.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/util/Types.kt @@ -21,4 +21,4 @@ import java.lang.reflect.ParameterizedType typealias JsonDict = Map -internal val JSON_DICT_PARAMETERIZED_TYPE: ParameterizedType = Types.newParameterizedType(Map::class.java, String::class.java, Any::class.java) \ No newline at end of file +internal val JSON_DICT_PARAMETERIZED_TYPE: ParameterizedType = Types.newParameterizedType(Map::class.java, String::class.java, Any::class.java) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/SessionManager.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/SessionManager.kt index 21f16d3d03..c813a6813f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/SessionManager.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/SessionManager.kt @@ -56,4 +56,4 @@ internal class SessionManager @Inject constructor(private val matrixComponent: M .create(matrixComponent, sessionParams) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthAPI.kt index d42962c53e..bfc2b76db7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthAPI.kt @@ -47,5 +47,4 @@ internal interface AuthAPI { @Headers("CONNECT_TIMEOUT:60000", "READ_TIMEOUT:60000", "WRITE_TIMEOUT:60000") @POST(NetworkConstants.URI_API_PREFIX_PATH_R0 + "login") fun login(@Body loginParams: PasswordLoginParams): Call - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthModule.kt index 399605469d..31a85afbfb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/AuthModule.kt @@ -55,11 +55,9 @@ internal abstract class AuthModule { } } - @Binds abstract fun bindSessionParamsStore(sessionParamsStore: RealmSessionParamsStore): SessionParamsStore @Binds abstract fun bindAuthenticator(authenticator: DefaultAuthenticator): Authenticator - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/DefaultAuthenticator.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/DefaultAuthenticator.kt index 9ae9af8b98..e379090677 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/DefaultAuthenticator.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/DefaultAuthenticator.kt @@ -98,7 +98,6 @@ internal class DefaultAuthenticator @Inject constructor(@Unauthenticated private suspend fun authenticate(homeServerConnectionConfig: HomeServerConnectionConfig, login: String, password: String) = withContext(coroutineDispatchers.io) { - val authAPI = buildAuthAPI(homeServerConnectionConfig) val loginParams = if (Patterns.EMAIL_ADDRESS.matcher(login).matches()) { PasswordLoginParams.thirdPartyIdentifier(ThreePidMedium.EMAIL, login, password, "Mobile") @@ -123,6 +122,4 @@ internal class DefaultAuthenticator @Inject constructor(@Unauthenticated val retrofit = retrofitFactory.create(okHttpClient.get(), homeServerConnectionConfig.homeServerUri.toString()) return retrofit.create(AuthAPI::class.java) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/SessionParamsStore.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/SessionParamsStore.kt index 9067e8188c..e1fef7e2eb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/SessionParamsStore.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/SessionParamsStore.kt @@ -32,4 +32,4 @@ internal interface SessionParamsStore { fun delete(userId: String): Try fun deleteAll(): Try -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/InteractiveAuthenticationFlow.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/InteractiveAuthenticationFlow.kt index e1f963ff3d..a6c027900f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/InteractiveAuthenticationFlow.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/InteractiveAuthenticationFlow.kt @@ -38,4 +38,4 @@ data class InteractiveAuthenticationFlow( const val TYPE_LOGIN_TOKEN = "m.login.token" const val TYPE_LOGIN_PASSWORD = "m.login.password" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowResponse.kt index 78fd372beb..598506d0a7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowResponse.kt @@ -23,4 +23,4 @@ import com.squareup.moshi.JsonClass data class LoginFlowResponse( @Json(name = "flows") val flows: List -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowTypes.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowTypes.kt index 1e129f1b45..81196c7414 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowTypes.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginFlowTypes.kt @@ -25,4 +25,4 @@ object LoginFlowTypes { const val MSISDN = "m.login.msisdn" const val RECAPTCHA = "m.login.recaptcha" const val DUMMY = "m.login.dummy" -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginParams.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginParams.kt index af859aeba4..e37977425a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginParams.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/LoginParams.kt @@ -18,4 +18,4 @@ package im.vector.matrix.android.internal.auth.data internal interface LoginParams { val type: String -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/PasswordLoginParams.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/PasswordLoginParams.kt index 372b18a931..39b1dd8760 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/PasswordLoginParams.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/PasswordLoginParams.kt @@ -26,7 +26,6 @@ internal data class PasswordLoginParams(@Json(name = "identifier") val identifie @Json(name = "initial_device_display_name") val deviceDisplayName: String?, @Json(name = "device_id") val deviceId: String?) : LoginParams { - companion object { val IDENTIFIER_KEY_TYPE_USER = "m.id.user" @@ -40,7 +39,6 @@ internal data class PasswordLoginParams(@Json(name = "identifier") val identifie val IDENTIFIER_KEY_COUNTRY = "country" val IDENTIFIER_KEY_NUMBER = "number" - fun userIdentifier(user: String, password: String, deviceDisplayName: String? = null, @@ -49,7 +47,6 @@ internal data class PasswordLoginParams(@Json(name = "identifier") val identifie identifier[IDENTIFIER_KEY_TYPE] = IDENTIFIER_KEY_TYPE_USER identifier[IDENTIFIER_KEY_USER] = user return PasswordLoginParams(identifier, password, LoginFlowTypes.PASSWORD, deviceDisplayName, deviceId) - } fun thirdPartyIdentifier(medium: String, @@ -62,7 +59,6 @@ internal data class PasswordLoginParams(@Json(name = "identifier") val identifie identifier[IDENTIFIER_KEY_MEDIUM] = medium identifier[IDENTIFIER_KEY_ADDRESS] = address return PasswordLoginParams(identifier, password, LoginFlowTypes.PASSWORD, deviceDisplayName, deviceId) - } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/ThreePidMedium.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/ThreePidMedium.kt index bf16544972..b1aeb9370b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/ThreePidMedium.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/data/ThreePidMedium.kt @@ -19,4 +19,4 @@ package im.vector.matrix.android.internal.auth.data internal object ThreePidMedium { const val EMAIL = "email" const val MSISDN = "msisdn" -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/RealmSessionParamsStore.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/RealmSessionParamsStore.kt index 38771c91b3..7ec5d24559 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/RealmSessionParamsStore.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/RealmSessionParamsStore.kt @@ -99,5 +99,4 @@ internal class RealmSessionParamsStore @Inject constructor(private val mapper: S realm.close() } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsEntity.kt index e6569d28ea..d0cc41d1ac 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsEntity.kt @@ -23,4 +23,4 @@ internal open class SessionParamsEntity( @PrimaryKey var userId: String = "", var credentialsJson: String = "", var homeServerConnectionConfigJson: String = "" -) : RealmObject() \ No newline at end of file +) : RealmObject() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsMapper.kt index 36a03ab19a..8e64e86582 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/db/SessionParamsMapper.kt @@ -50,6 +50,4 @@ internal class SessionParamsMapper @Inject constructor(moshi: Moshi) { } return SessionParamsEntity(sessionParams.credentials.userId, credentialsJson, homeServerConnectionConfigJson) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/registration/RegistrationFlowResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/registration/RegistrationFlowResponse.kt index 0eb7b05bf8..218251cfe5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/registration/RegistrationFlowResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/auth/registration/RegistrationFlowResponse.kt @@ -50,4 +50,4 @@ data class RegistrationFlowResponse( */ @Json(name = "params") var params: JsonDict? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/CryptoModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/CryptoModule.kt index 26647457a1..5a7e28b70f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/CryptoModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/CryptoModule.kt @@ -74,7 +74,6 @@ internal abstract class CryptoModule { return RealmClearCacheTask(realmConfiguration) } - @JvmStatic @Provides fun providesCryptoStore(@CryptoDatabase @@ -104,7 +103,6 @@ internal abstract class CryptoModule { fun providesCryptoConfig(): MXCryptoConfig { return MXCryptoConfig() } - } @Binds diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DefaultCryptoService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DefaultCryptoService.kt index 1a94bebde4..853360d12f 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DefaultCryptoService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DefaultCryptoService.kt @@ -31,9 +31,7 @@ import im.vector.matrix.android.api.failure.Failure import im.vector.matrix.android.api.listeners.ProgressListener import im.vector.matrix.android.api.session.crypto.CryptoService import im.vector.matrix.android.api.session.crypto.MXCryptoError -import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupService import im.vector.matrix.android.api.session.crypto.keyshare.RoomKeysRequestListener -import im.vector.matrix.android.api.session.crypto.sas.SasVerificationService import im.vector.matrix.android.api.session.events.model.Content import im.vector.matrix.android.api.session.events.model.Event import im.vector.matrix.android.api.session.events.model.EventType @@ -289,24 +287,18 @@ internal class DefaultCryptoService @Inject constructor( outgoingRoomKeyRequestManager.stop() } - override fun isCryptoEnabled(): Boolean { - // TODO Check that this test is correct - return olmDevice != null - } + // Aways enabled on RiotX + override fun isCryptoEnabled() = true /** * @return the Keys backup Service */ - override fun getKeysBackupService(): KeysBackupService { - return keysBackup - } + override fun getKeysBackupService() = keysBackup /** * @return the SasVerificationService */ - override fun getSasVerificationService(): SasVerificationService { - return sasVerificationService - } + override fun getSasVerificationService() = sasVerificationService /** * A sync response has been received @@ -406,7 +398,6 @@ internal class DefaultCryptoService @Inject constructor( } } - callback?.onSuccess(Unit) } @@ -446,7 +437,7 @@ internal class DefaultCryptoService @Inject constructor( val encryptingClass = MXCryptoAlgorithms.hasEncryptorClassForAlgorithm(algorithm) if (!encryptingClass) { - Timber.e("## setEncryptionInRoom() : Unable to encrypt room ${roomId} with $algorithm") + Timber.e("## setEncryptionInRoom() : Unable to encrypt room $roomId with $algorithm") return false } @@ -659,7 +650,7 @@ internal class DefaultCryptoService @Inject constructor( incomingRoomKeyRequestManager.onRoomKeyRequestEvent(event) } else -> { - //ignore + // ignore } } } @@ -714,7 +705,6 @@ internal class DefaultCryptoService @Inject constructor( } else { RoomMembers(realm, roomId).getJoinedRoomMemberIds() } - } return userIds } @@ -761,7 +751,6 @@ internal class DefaultCryptoService @Inject constructor( } } - /** * Upload my user's device keys. */ @@ -945,7 +934,6 @@ internal class DefaultCryptoService @Inject constructor( cryptoStore.setRoomsListBlacklistUnverifiedDevices(roomIds) } - /** * Add this room to the ones which don't encrypt messages to unverified devices. * diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DeviceListManager.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DeviceListManager.kt index e7cfdfe1a8..be72851d97 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DeviceListManager.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/DeviceListManager.kt @@ -74,7 +74,6 @@ internal class DeviceListManager @Inject constructor(private val cryptoStore: IM } catch (e: Exception) { Timber.e(e, "## canRetryKeysDownload() failed") } - } return res @@ -506,4 +505,4 @@ internal class DeviceListManager @Inject constructor(private val cryptoStore: IM const val TRACKING_STATUS_UP_TO_DATE = 3 const val TRACKING_STATUS_UNREACHABLE_SERVER = 4 } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequest.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequest.kt index 056d99425e..fe1f69f904 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequest.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequest.kt @@ -17,7 +17,6 @@ package im.vector.matrix.android.internal.crypto - import im.vector.matrix.android.api.session.events.model.Event import im.vector.matrix.android.api.session.events.model.toModel import im.vector.matrix.android.internal.crypto.model.rest.RoomKeyRequestBody @@ -77,4 +76,3 @@ open class IncomingRoomKeyRequest { */ constructor() } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequestManager.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequestManager.kt index 86f7813083..10a2cb00be 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequestManager.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/IncomingRoomKeyRequestManager.kt @@ -35,7 +35,6 @@ internal class IncomingRoomKeyRequestManager @Inject constructor( private val cryptoStore: IMXCryptoStore, private val roomDecryptorProvider: RoomDecryptorProvider) { - // list of IncomingRoomKeyRequests/IncomingRoomKeyRequestCancellations // we received in the current sync. private val receivedRoomKeyRequests = ArrayList() @@ -166,12 +165,10 @@ internal class IncomingRoomKeyRequestManager @Inject constructor( } catch (e: Exception) { Timber.e(e, "## onRoomKeyRequest() failed") } - } } } - /** * A room key request cancellation has been received. * @@ -185,7 +182,6 @@ internal class IncomingRoomKeyRequestManager @Inject constructor( } catch (e: Exception) { Timber.e(e, "## onRoomKeyRequestCancellation() failed") } - } } } @@ -201,5 +197,4 @@ internal class IncomingRoomKeyRequestManager @Inject constructor( roomKeysRequestListeners.remove(listener) } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXCryptoAlgorithms.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXCryptoAlgorithms.kt index 8f42c422df..92b6adabc5 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXCryptoAlgorithms.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXCryptoAlgorithms.kt @@ -55,4 +55,4 @@ internal object MXCryptoAlgorithms { fun supportedAlgorithms(): List { return listOf(MXCRYPTO_ALGORITHM_MEGOLM, MXCRYPTO_ALGORITHM_OLM) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXOlmDevice.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXOlmDevice.kt index 7c5131fcce..9655806b2d 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXOlmDevice.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MXOlmDevice.kt @@ -94,7 +94,6 @@ internal class MXOlmDevice @Inject constructor( } catch (e: Exception) { Timber.e(e, "MXOlmDevice : cannot initialize olmAccount") } - } else { Timber.v("MXOlmDevice : use an existing account") } @@ -217,7 +216,6 @@ internal class MXOlmDevice @Inject constructor( Timber.v("## createOutboundSession() ; olmSession.sessionIdentifier: $sessionIdentifier") return sessionIdentifier - } catch (e: Exception) { Timber.e(e, "## createOutboundSession() failed") @@ -236,7 +234,6 @@ internal class MXOlmDevice @Inject constructor( * @return {{payload: string, session_id: string}} decrypted payload, and session id of new session. */ fun createInboundSession(theirDeviceIdentityKey: String, messageType: Int, ciphertext: String): Map? { - Timber.v("## createInboundSession() : theirIdentityKey: $theirDeviceIdentityKey") var olmSession: OlmSession? = null @@ -250,7 +247,7 @@ internal class MXOlmDevice @Inject constructor( return null } - Timber.v("## createInboundSession() : sessionId: " + olmSession.sessionIdentifier()) + Timber.v("## createInboundSession() : sessionId: ${olmSession.sessionIdentifier()}") try { olmAccount!!.removeOneTimeKeys(olmSession) @@ -262,7 +259,7 @@ internal class MXOlmDevice @Inject constructor( Timber.v("## createInboundSession() : ciphertext: $ciphertext") try { val sha256 = olmUtility!!.sha256(URLEncoder.encode(ciphertext, "utf-8")) - Timber.v("## createInboundSession() :ciphertext: SHA256:" + sha256) + Timber.v("## createInboundSession() :ciphertext: SHA256: $sha256") } catch (e: Exception) { Timber.e(e, "## createInboundSession() :ciphertext: cannot encode ciphertext") } @@ -343,7 +340,7 @@ internal class MXOlmDevice @Inject constructor( if (olmSessionWrapper != null) { try { Timber.v("## encryptMessage() : olmSession.sessionIdentifier: $sessionId") - //Timber.v("## encryptMessage() : payloadString: " + payloadString); + // Timber.v("## encryptMessage() : payloadString: " + payloadString); olmMessage = olmSessionWrapper.olmSession.encryptMessage(payloadString) store.storeSession(olmSessionWrapper, theirDeviceIdentityKey) @@ -352,9 +349,8 @@ internal class MXOlmDevice @Inject constructor( res["body"] = olmMessage.mCipherText res["type"] = olmMessage.mType } catch (e: Exception) { - Timber.e(e, "## encryptMessage() : failed " + e.message) + Timber.e(e, "## encryptMessage() : failed") } - } return res @@ -384,9 +380,8 @@ internal class MXOlmDevice @Inject constructor( olmSessionWrapper.onMessageReceived() store.storeSession(olmSessionWrapper, theirDeviceIdentityKey) } catch (e: Exception) { - Timber.e(e, "## decryptMessage() : decryptMessage failed " + e.message) + Timber.e(e, "## decryptMessage() : decryptMessage failed") } - } return payloadString @@ -410,7 +405,6 @@ internal class MXOlmDevice @Inject constructor( return null != olmSessionWrapper && olmSessionWrapper.olmSession.matchesInboundSession(ciphertext) } - // Outbound group session /** @@ -425,7 +419,7 @@ internal class MXOlmDevice @Inject constructor( outboundGroupSessionStore[session.sessionIdentifier()] = session return session.sessionIdentifier() } catch (e: Exception) { - Timber.e(e, "createOutboundGroupSession " + e.message) + Timber.e(e, "createOutboundGroupSession") session?.releaseSession() } @@ -444,9 +438,8 @@ internal class MXOlmDevice @Inject constructor( try { return outboundGroupSessionStore[sessionId]!!.sessionKey() } catch (e: Exception) { - Timber.e(e, "## getSessionKey() : failed " + e.message) + Timber.e(e, "## getSessionKey() : failed") } - } return null } @@ -475,9 +468,8 @@ internal class MXOlmDevice @Inject constructor( try { return outboundGroupSessionStore[sessionId]!!.encryptMessage(payloadString) } catch (e: Exception) { - Timber.e(e, "## encryptGroupMessage() : failed " + e.message) + Timber.e(e, "## encryptGroupMessage() : failed") } - } return null } @@ -513,7 +505,7 @@ internal class MXOlmDevice @Inject constructor( val existingFirstKnown = it.firstKnownIndex!! val newKnownFirstIndex = session.firstKnownIndex - //If our existing session is better we keep it + // If our existing session is better we keep it if (newKnownFirstIndex != null && existingFirstKnown <= newKnownFirstIndex) { session.olmInboundGroupSession?.releaseSession() return false @@ -562,7 +554,6 @@ internal class MXOlmDevice @Inject constructor( val sessions = ArrayList(megolmSessionsData.size) for (megolmSessionData in megolmSessionsData) { - val sessionId = megolmSessionData.sessionId val senderKey = megolmSessionData.senderKey val roomId = megolmSessionData.roomId @@ -583,7 +574,7 @@ internal class MXOlmDevice @Inject constructor( try { if (!TextUtils.equals(session.olmInboundGroupSession?.sessionIdentifier(), sessionId)) { - Timber.e("## importInboundGroupSession : ERROR: Mismatched group session ID from senderKey: " + senderKey!!) + Timber.e("## importInboundGroupSession : ERROR: Mismatched group session ID from senderKey: $senderKey") if (session.olmInboundGroupSession != null) session.olmInboundGroupSession!!.releaseSession() continue } @@ -601,7 +592,7 @@ internal class MXOlmDevice @Inject constructor( // For now we just ignore updates. TODO: implement something here if (it.firstKnownIndex!! <= session.firstKnownIndex!!) { - //Ignore this, keep existing + // Ignore this, keep existing session.olmInboundGroupSession!!.releaseSession() } else { sessions.add(session) @@ -652,9 +643,8 @@ internal class MXOlmDevice @Inject constructor( // Check that the room id matches the original one for the session. This stops // the HS pretending a message was targeting a different room. if (roomId == session.roomId) { - var decryptResult: OlmInboundGroupSession.DecryptMessageResult? = null - try { - decryptResult = session.olmInboundGroupSession!!.decryptMessage(body) + val decryptResult = try { + session.olmInboundGroupSession!!.decryptMessage(body) } catch (e: OlmException) { Timber.e(e, "## decryptGroupMessage () : decryptMessage failed") throw MXCryptoError.OlmError(e) @@ -747,7 +737,6 @@ internal class MXOlmDevice @Inject constructor( return if (theirDeviceIdentityKey.isEmpty() || sessionId.isEmpty()) null else { store.getDeviceSession(sessionId, theirDeviceIdentityKey) } - } /** diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MyDeviceInfoHolder.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MyDeviceInfoHolder.kt index 4223983298..b64904190b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MyDeviceInfoHolder.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/MyDeviceInfoHolder.kt @@ -70,4 +70,4 @@ internal class MyDeviceInfoHolder @Inject constructor( cryptoStore.storeUserDevices(credentials.userId, myDevices) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/NewSessionListener.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/NewSessionListener.kt index 7881b1ea7f..e113e64146 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/NewSessionListener.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/NewSessionListener.kt @@ -15,7 +15,6 @@ */ package im.vector.matrix.android.internal.crypto - interface NewSessionListener { fun onNewSession(roomId: String?, senderKey: String, sessionId: String) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/ObjectSigner.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/ObjectSigner.kt index 625f81de86..be15f3753e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/ObjectSigner.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/ObjectSigner.kt @@ -42,13 +42,11 @@ internal class ObjectSigner @Inject constructor(private val credentials: Credent val content = HashMap() - content["ed25519:" + credentials.deviceId] = olmDevice.signMessage(strToSign) - ?: "" //null reported by rageshake if happens during logout + ?: "" // null reported by rageshake if happens during logout result[credentials.userId] = content return result } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OneTimeKeysUploader.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OneTimeKeysUploader.kt index f0d7662f0f..c929c33666 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OneTimeKeysUploader.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OneTimeKeysUploader.kt @@ -53,7 +53,6 @@ internal class OneTimeKeysUploader @Inject constructor( oneTimeKeyCount = currentCount } - /** * Check if the OTK must be uploaded. */ @@ -170,4 +169,4 @@ internal class OneTimeKeysUploader @Inject constructor( // frequency with which to check & upload one-time keys private const val ONE_TIME_KEY_UPLOAD_PERIOD = (60 * 1000).toLong() // one minute } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequest.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequest.kt index 89de5a078b..a66b0242ec 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequest.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequest.kt @@ -116,4 +116,3 @@ class OutgoingRoomKeyRequest( } } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequestManager.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequestManager.kt index c0702f70e5..89a27c9463 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequestManager.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/OutgoingRoomKeyRequestManager.kt @@ -90,7 +90,6 @@ internal class OutgoingRoomKeyRequestManager @Inject constructor( val req = cryptoStore.getOrAddOutgoingRoomKeyRequest( OutgoingRoomKeyRequest(requestBody, recipients, makeTxnId(), OutgoingRoomKeyRequest.RequestState.UNSENT)) - if (req?.state == OutgoingRoomKeyRequest.RequestState.UNSENT) { startTimer() } @@ -154,7 +153,6 @@ internal class OutgoingRoomKeyRequestManager @Inject constructor( } } - /** * Start the background timer to send queued requests, if the timer isn't already running. */ @@ -261,7 +259,6 @@ internal class OutgoingRoomKeyRequestManager @Inject constructor( startTimer() } - override fun onSuccess(data: Unit) { Timber.v("## sendOutgoingRoomKeyRequestCancellation() : done") val resend = request.state === OutgoingRoomKeyRequest.RequestState.CANCELLATION_PENDING_AND_WILL_RESEND @@ -312,6 +309,5 @@ internal class OutgoingRoomKeyRequestManager @Inject constructor( private const val SEND_KEY_REQUESTS_DELAY_MS = 500 private val BACKGROUND_HANDLER = createBackgroundHandler("OutgoingRoomKeyRequest") - } } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/RoomDecryptorProvider.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/RoomDecryptorProvider.kt index 3dd7b932f9..9c542cd446 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/RoomDecryptorProvider.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/RoomDecryptorProvider.kt @@ -76,12 +76,12 @@ internal class RoomDecryptorProvider @Inject constructor( val alg = when (algorithm) { MXCRYPTO_ALGORITHM_MEGOLM -> megolmDecryptionFactory.create().apply { this.newSessionListener = object : NewSessionListener { - override fun onNewSession(rid: String?, senderKey: String, sessionId: String) { + override fun onNewSession(roomId: String?, senderKey: String, sessionId: String) { + // PR reviewer: the parameter has been renamed so is now in conflict with the parameter of getOrCreateRoomDecryptor newSessionListeners.forEach { try { it.onNewSession(roomId, senderKey, sessionId) } catch (e: Throwable) { - } } } @@ -105,4 +105,4 @@ internal class RoomDecryptorProvider @Inject constructor( } return roomDecryptors[roomId]?.get(algorithm) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForDevicesAction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForDevicesAction.kt index 7a56f46bd1..6206072156 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForDevicesAction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForDevicesAction.kt @@ -30,7 +30,6 @@ import javax.inject.Inject internal class EnsureOlmSessionsForDevicesAction @Inject constructor(private val olmDevice: MXOlmDevice, private val oneTimeKeysForUsersDeviceTask: ClaimOneTimeKeysForUsersDeviceTask) { - suspend fun handle(devicesByUser: Map>): MXUsersDevicesMap { val devicesWithoutSession = ArrayList() @@ -149,5 +148,4 @@ internal class EnsureOlmSessionsForDevicesAction @Inject constructor(private val return sessionId } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForUsersAction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForUsersAction.kt index f929859d76..4ed1ed75f6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForUsersAction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/EnsureOlmSessionsForUsersAction.kt @@ -61,4 +61,4 @@ internal class EnsureOlmSessionsForUsersAction @Inject constructor(private val o } return ensureOlmSessionsForDevicesAction.handle(devicesByUser) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MegolmSessionDataImporter.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MegolmSessionDataImporter.kt index 9d345dfbc3..62b4f1b851 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MegolmSessionDataImporter.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MegolmSessionDataImporter.kt @@ -112,4 +112,4 @@ internal class MegolmSessionDataImporter @Inject constructor(private val olmDevi return ImportRoomKeysResult(totalNumbersOfKeys, totalNumbersOfImportedKeys) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MessageEncrypter.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MessageEncrypter.kt index 3328de0eaf..b360cd0234 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MessageEncrypter.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/MessageEncrypter.kt @@ -81,7 +81,7 @@ internal class MessageEncrypter @Inject constructor(private val credentials: Cre payloadJson["recipient_keys"] = recipientsKeysMap val payloadString = convertToUTF8(JsonCanonicalizer.getCanonicalJson(Map::class.java, payloadJson)) - ciphertext[deviceKey] = olmDevice.encryptMessage(deviceKey, sessionId!!, payloadString!!)!! + ciphertext[deviceKey] = olmDevice.encryptMessage(deviceKey, sessionId!!, payloadString)!! } } @@ -93,5 +93,4 @@ internal class MessageEncrypter @Inject constructor(private val credentials: Cre return res } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/SetDeviceVerificationAction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/SetDeviceVerificationAction.kt index 078d016e42..3eafa73fab 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/SetDeviceVerificationAction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/actions/SetDeviceVerificationAction.kt @@ -47,4 +47,4 @@ internal class SetDeviceVerificationAction @Inject constructor(private val crypt } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryption.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryption.kt index c518872d44..9c14ed555a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryption.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryption.kt @@ -129,7 +129,6 @@ internal class MXMegolmDecryption(private val userId: String, ) } - /** * Helper for the real decryptEvent and for _retryDecryption. If * requestKeysOnFail is true, we'll send an m.room_key_request when we fail @@ -177,7 +176,6 @@ internal class MXMegolmDecryption(private val userId: String, val encryptedEventContent = event.content.toModel() ?: return val pendingEventsKey = "${encryptedEventContent.senderKey}|${encryptedEventContent.sessionId}" - if (!pendingEvents.containsKey(pendingEventsKey)) { pendingEvents[pendingEventsKey] = HashMap() } @@ -352,4 +350,3 @@ internal class MXMegolmDecryption(private val userId: String, } } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryptionFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryptionFactory.kt index 54c412526d..b7329221ab 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryptionFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmDecryptionFactory.kt @@ -49,4 +49,4 @@ internal class MXMegolmDecryptionFactory @Inject constructor(@UserId private val sendToDeviceTask, coroutineDispatchers) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt index b465cb6e67..2f5e657376 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryption.kt @@ -54,7 +54,6 @@ internal class MXMegolmEncryption( private val warnOnUnknownDevicesRepository: WarnOnUnknownDeviceRepository ) : IMXEncrypting { - // OutboundSessionInfo. Null if we haven't yet started setting one up. Note // that even if this is non-null, it may not be ready for use (in which // case outboundSession.shareOperation will be non-null.) @@ -253,7 +252,7 @@ internal class MXMegolmEncryption( // Get canonical Json from val payloadString = convertToUTF8(JsonCanonicalizer.getCanonicalJson(Map::class.java, payloadJson)) - val ciphertext = olmDevice.encryptGroupMessage(session.sessionId, payloadString!!) + val ciphertext = olmDevice.encryptGroupMessage(session.sessionId, payloadString) val map = HashMap() map["algorithm"] = MXCRYPTO_ALGORITHM_MEGOLM diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryptionFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryptionFactory.kt index 682a3c11e3..dadd810a4b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryptionFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/megolm/MXMegolmEncryptionFactory.kt @@ -51,4 +51,4 @@ internal class MXMegolmEncryptionFactory @Inject constructor( messageEncrypter, warnOnUnknownDevicesRepository) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryption.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryption.kt index 9433e364cb..2f3b8a8f4a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryption.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryption.kt @@ -63,6 +63,7 @@ internal class MXOlmDecryption( } // The message for myUser + @Suppress("UNCHECKED_CAST") val message = messageAny as JsonDict val decryptedPayload = decryptMessage(message, senderKey) @@ -72,10 +73,6 @@ internal class MXOlmDecryption( throw MXCryptoError.Base(MXCryptoError.ErrorType.BAD_ENCRYPTED_MESSAGE, MXCryptoError.BAD_ENCRYPTED_MESSAGE_REASON) } val payloadString = convertFromUTF8(decryptedPayload) - if (payloadString == null) { - Timber.e("## decryptEvent() Failed to decrypt Olm event (id= ${event.eventId} from $senderKey") - throw MXCryptoError.Base(MXCryptoError.ErrorType.BAD_ENCRYPTED_MESSAGE, MXCryptoError.BAD_ENCRYPTED_MESSAGE_REASON) - } val adapter = MoshiProvider.providesMoshi().adapter(JSON_DICT_PARAMETERIZED_TYPE) val payload = adapter.fromJson(payloadString) @@ -104,7 +101,8 @@ internal class MXOlmDecryption( } val recipientKeys = olmPayloadContent.recipient_keys ?: run { - Timber.e("## decryptEvent() : Olm event (id=${event.eventId}) contains no 'recipient_keys' property; cannot prevent unknown-key attack") + Timber.e("## decryptEvent() : Olm event (id=${event.eventId}) contains no 'recipient_keys'" + + " property; cannot prevent unknown-key attack") throw MXCryptoError.Base(MXCryptoError.ErrorType.MISSING_PROPERTY, String.format(MXCryptoError.ERROR_MISSING_PROPERTY_REASON, "recipient_keys")) } @@ -161,9 +159,9 @@ internal class MXOlmDecryption( val messageBody = message["body"] as? String ?: return null val messageType = when (val typeAsVoid = message["type"]) { is Double -> typeAsVoid.toInt() - is Int -> typeAsVoid - is Long -> typeAsVoid.toInt() - else -> return null + is Int -> typeAsVoid + is Long -> typeAsVoid.toInt() + else -> return null } // Try each session in turn diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryptionFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryptionFactory.kt index 12937a2b2e..52a9a4f8c6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryptionFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmDecryptionFactory.kt @@ -28,4 +28,4 @@ internal class MXOlmDecryptionFactory @Inject constructor(private val olmDevice: olmDevice, userId) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryption.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryption.kt index 10d481dcfe..df3695db94 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryption.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryption.kt @@ -70,7 +70,6 @@ internal class MXOlmEncryption( return messageMap.toContent()!! } - /** * Ensure that the session * diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryptionFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryptionFactory.kt index eff833cf21..ef4057fe26 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryptionFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/algorithms/olm/MXOlmEncryptionFactory.kt @@ -40,4 +40,4 @@ internal class MXOlmEncryptionFactory @Inject constructor(private val olmDevice: deviceListManager, ensureOlmSessionsForUsersAction) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/api/CryptoApi.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/api/CryptoApi.kt index 263cfef2f8..f4821f8ef3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/api/CryptoApi.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/api/CryptoApi.kt @@ -16,7 +16,6 @@ */ package im.vector.matrix.android.internal.crypto.api - import im.vector.matrix.android.internal.crypto.model.rest.* import im.vector.matrix.android.internal.network.NetworkConstants import retrofit2.Call diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/ElementToDecrypt.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/ElementToDecrypt.kt index 3bd29ae262..a3fc98f674 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/ElementToDecrypt.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/ElementToDecrypt.kt @@ -20,7 +20,6 @@ import android.os.Parcelable import im.vector.matrix.android.internal.crypto.model.rest.EncryptedFileInfo import kotlinx.android.parcel.Parcelize - fun EncryptedFileInfo.toElementToDecrypt(): ElementToDecrypt? { // Check the validity of some fields if (isValid()) { @@ -35,7 +34,6 @@ fun EncryptedFileInfo.toElementToDecrypt(): ElementToDecrypt? { return null } - /** * Represent data to decode an attachment */ @@ -44,4 +42,4 @@ data class ElementToDecrypt( val iv: String, val k: String, val sha256: String -) : Parcelable \ No newline at end of file +) : Parcelable diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/MXEncryptedAttachments.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/MXEncryptedAttachments.kt index 95ff11d595..5f90b636ac 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/MXEncryptedAttachments.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/attachments/MXEncryptedAttachments.kt @@ -103,10 +103,10 @@ object MXEncryptedAttachments { ext = true, key_ops = listOf("encrypt", "decrypt"), kty = "oct", - k = base64ToBase64Url(Base64.encodeToString(key, Base64.DEFAULT))!! + k = base64ToBase64Url(Base64.encodeToString(key, Base64.DEFAULT)) ), iv = Base64.encodeToString(initVectorBytes, Base64.DEFAULT).replace("\n", "").replace("=", ""), - hashes = mapOf("sha256" to base64ToUnpaddedBase64(Base64.encodeToString(messageDigest.digest(), Base64.DEFAULT))!!), + hashes = mapOf("sha256" to base64ToUnpaddedBase64(Base64.encodeToString(messageDigest.digest(), Base64.DEFAULT))), v = "v2" ), encryptedByteArray = outStream.toByteArray() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackup.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackup.kt index 786923dad5..a66d50dfad 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackup.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackup.kt @@ -31,6 +31,7 @@ import im.vector.matrix.android.api.listeners.StepProgressListener import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupService import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupState import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupStateListener +import im.vector.matrix.android.api.util.JsonDict import im.vector.matrix.android.internal.crypto.MXCRYPTO_ALGORITHM_MEGOLM_BACKUP import im.vector.matrix.android.internal.crypto.MXOlmDevice import im.vector.matrix.android.internal.crypto.MegolmSessionData @@ -178,7 +179,6 @@ internal class KeysBackup @Inject constructor( megolmBackupAuthData.signatures = objectSigner.signObject(canonicalJson) - val megolmBackupCreationInfo = MegolmBackupCreationInfo() megolmBackupCreationInfo.algorithm = MXCRYPTO_ALGORITHM_MEGOLM_BACKUP megolmBackupCreationInfo.authData = megolmBackupAuthData @@ -194,22 +194,23 @@ internal class KeysBackup @Inject constructor( callback: MatrixCallback) { val createKeysBackupVersionBody = CreateKeysBackupVersionBody() createKeysBackupVersionBody.algorithm = keysBackupCreationInfo.algorithm + @Suppress("UNCHECKED_CAST") createKeysBackupVersionBody.authData = MoshiProvider.providesMoshi().adapter(Map::class.java) - .fromJson(keysBackupCreationInfo.authData?.toJsonString()) as Map? + .fromJson(keysBackupCreationInfo.authData?.toJsonString() ?: "") as JsonDict? keysBackupStateManager.state = KeysBackupState.Enabling createKeysBackupVersionTask .configureWith(createKeysBackupVersionBody) { this.callback = object : MatrixCallback { - override fun onSuccess(info: KeysVersion) { + override fun onSuccess(data: KeysVersion) { // Reset backup markers. cryptoStore.resetBackupMarkers() val keyBackupVersion = KeysVersionResult() keyBackupVersion.algorithm = createKeysBackupVersionBody.algorithm keyBackupVersion.authData = createKeysBackupVersionBody.authData - keyBackupVersion.version = info.version + keyBackupVersion.version = data.version // We can consider that the server does not have keys yet keyBackupVersion.count = 0 @@ -217,7 +218,7 @@ internal class KeysBackup @Inject constructor( enableKeysBackup(keyBackupVersion) - callback.onSuccess(info) + callback.onSuccess(data) } override fun onFailure(failure: Throwable) { @@ -275,7 +276,8 @@ internal class KeysBackup @Inject constructor( val keysBackupData = cryptoStore.getKeysBackupData() val totalNumberOfKeysServer = keysBackupData?.backupLastServerNumberOfKeys ?: -1 - val hashServer = keysBackupData?.backupLastServerHash + // Not used for the moment + // val hashServer = keysBackupData?.backupLastServerHash return when { totalNumberOfKeysLocally < totalNumberOfKeysServer -> { @@ -293,7 +295,6 @@ internal class KeysBackup @Inject constructor( override fun getTotalNumbersOfKeys(): Int { return cryptoStore.inboundGroupSessionsCount(false) - } override fun getTotalNumbersOfBackedUpKeys(): Int { @@ -414,7 +415,7 @@ internal class KeysBackup @Inject constructor( olmDevice.verifySignature(fingerprint, authData.signalableJSONDictionary(), mySigs[keyId] as String) isSignatureValid = true } catch (e: OlmException) { - Timber.v("getKeysBackupTrust: Bad signature from device " + device.deviceId + " " + e.localizedMessage) + Timber.v(e, "getKeysBackupTrust: Bad signature from device ${device.deviceId}") } } @@ -484,6 +485,7 @@ internal class KeysBackup @Inject constructor( val moshi = MoshiProvider.providesMoshi() val adapter = moshi.adapter(Map::class.java) + @Suppress("UNCHECKED_CAST") updateKeysBackupVersionBody.authData = adapter.fromJson(newMegolmBackupAuthData.toJsonString()) as Map? updateKeysBackupVersionBody @@ -616,7 +618,7 @@ internal class KeysBackup @Inject constructor( GlobalScope.launch(coroutineDispatchers.main) { withContext(coroutineDispatchers.crypto) { - Try { + Try { // Check if the recovery is valid before going any further if (!isValidRecoveryKeyForKeysBackupVersion(recoveryKey, keysVersionResult)) { Timber.e("restoreKeysWithRecoveryKey: Invalid recovery key for this keys version") @@ -631,7 +633,7 @@ internal class KeysBackup @Inject constructor( throw InvalidParameterException("Invalid recovery key") } - decryption!! + decryption } }.fold( { @@ -661,14 +663,14 @@ internal class KeysBackup @Inject constructor( } } } - Timber.v("restoreKeysWithRecoveryKey: Decrypted " + sessionsData.size + " keys out of " - + sessionsFromHsCount + " from the backup store on the homeserver") + Timber.v("restoreKeysWithRecoveryKey: Decrypted ${sessionsData.size} keys out" + + " of $sessionsFromHsCount from the backup store on the homeserver") // Do not trigger a backup for them if they come from the backup version we are using val backUp = keysVersionResult.version != keysBackupVersion?.version if (backUp) { - Timber.v("restoreKeysWithRecoveryKey: Those keys will be backed up to backup version: " - + keysBackupVersion?.version) + Timber.v("restoreKeysWithRecoveryKey: Those keys will be backed up" + + " to backup version: ${keysBackupVersion?.version}") } // Import them into the crypto store @@ -823,7 +825,6 @@ internal class KeysBackup @Inject constructor( } catch (e: OlmException) { Timber.e(e, "OlmException") } - } return decryption @@ -981,12 +982,11 @@ internal class KeysBackup @Inject constructor( keysBackupStateManager.state = KeysBackupState.Disabled } else { getKeysBackupTrust(keyBackupVersion, object : MatrixCallback { - override fun onSuccess(data: KeysBackupVersionTrust) { val versionInStore = cryptoStore.getKeyBackupVersion() if (data.usable) { - Timber.v("checkAndStartWithKeysBackupVersion: Found usable key backup. version: " + keyBackupVersion.version) + Timber.v("checkAndStartWithKeysBackupVersion: Found usable key backup. version: ${keyBackupVersion.version}") // Check the version we used at the previous app run if (versionInStore != null && versionInStore != keyBackupVersion.version) { Timber.v(" -> clean the previously used version $versionInStore") @@ -996,7 +996,7 @@ internal class KeysBackup @Inject constructor( Timber.v(" -> enabling key backups") enableKeysBackup(keyBackupVersion) } else { - Timber.v("checkAndStartWithKeysBackupVersion: No usable key backup. version: " + keyBackupVersion.version) + Timber.v("checkAndStartWithKeysBackupVersion: No usable key backup. version: ${keyBackupVersion.version}") if (versionInStore != null) { Timber.v(" -> disabling key backup") resetKeysBackupData() @@ -1009,7 +1009,6 @@ internal class KeysBackup @Inject constructor( override fun onFailure(failure: Throwable) { // Cannot happen } - }) } } @@ -1201,7 +1200,7 @@ internal class KeysBackup @Inject constructor( // Get a chunk of keys to backup val olmInboundGroupSessionWrappers = cryptoStore.inboundGroupSessionsToBackup(KEY_BACKUP_SEND_KEYS_MAX_COUNT) - Timber.v("backupKeys: 1 - " + olmInboundGroupSessionWrappers.size + " sessions to back up") + Timber.v("backupKeys: 1 - ${olmInboundGroupSessionWrappers.size} sessions to back up") if (olmInboundGroupSessionWrappers.isEmpty()) { // Backup is up to date diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackupPassword.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackupPassword.kt index eabd5dff04..344ba61277 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackupPassword.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/KeysBackupPassword.kt @@ -27,7 +27,6 @@ import javax.crypto.Mac import javax.crypto.spec.SecretKeySpec import kotlin.experimental.xor - private const val SALT_LENGTH = 32 private const val DEFAULT_ITERATION = 500_000 @@ -133,7 +132,7 @@ private fun deriveKey(password: String, } } - Timber.v("KeysBackupPassword", "## deriveKeys() : " + iterations + " in " + (System.currentTimeMillis() - t0) + " ms") + Timber.v("KeysBackupPassword: deriveKeys() : " + iterations + " in " + (System.currentTimeMillis() - t0) + " ms") return dk } @@ -149,4 +148,4 @@ private fun generateSalt(): String { } return salt.substring(0, SALT_LENGTH) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/api/RoomKeysApi.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/api/RoomKeysApi.kt index 73b6112fd8..f5d89fb5eb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/api/RoomKeysApi.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/api/RoomKeysApi.kt @@ -142,7 +142,6 @@ internal interface RoomKeysApi { @GET(NetworkConstants.URI_API_PREFIX_PATH_R0 + "room_keys/keys") fun getSessionsData(@Query("version") version: String): Call - /* ========================================================================================== * Deleting keys * ========================================================================================== */ diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeyBackupVersionTrustSignature.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeyBackupVersionTrustSignature.kt index fce77b33e5..caf4aaad0b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeyBackupVersionTrustSignature.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeyBackupVersionTrustSignature.kt @@ -32,5 +32,4 @@ class KeyBackupVersionTrustSignature { *Flag to indicate the signature from this device is valid. */ var valid = false - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrust.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrust.kt index ed765d1449..fc642b3fb2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrust.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrust.kt @@ -30,4 +30,4 @@ data class KeysBackupVersionTrust( * Signatures found in the backup version. */ var signatures: MutableList = ArrayList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrustSignature.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrustSignature.kt index afa6b77921..d91189a4bf 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrustSignature.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/KeysBackupVersionTrustSignature.kt @@ -38,5 +38,4 @@ class KeysBackupVersionTrustSignature { * Flag to indicate the signature from this device is valid. */ var valid = false - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/MegolmBackupCreationInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/MegolmBackupCreationInfo.kt index 2be7806b86..a08ba9ba96 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/MegolmBackupCreationInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/MegolmBackupCreationInfo.kt @@ -35,5 +35,4 @@ class MegolmBackupCreationInfo { * The Base58 recovery key. */ var recoveryKey: String = "" - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysAlgorithmAndData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysAlgorithmAndData.kt index 20e7357a39..6fba833589 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysAlgorithmAndData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysAlgorithmAndData.kt @@ -17,6 +17,7 @@ package im.vector.matrix.android.internal.crypto.keysbackup.model.rest import com.squareup.moshi.Json +import im.vector.matrix.android.api.util.JsonDict import im.vector.matrix.android.internal.crypto.keysbackup.model.MegolmBackupAuthData import im.vector.matrix.android.internal.di.MoshiProvider @@ -49,7 +50,7 @@ open class KeysAlgorithmAndData { * algorithm-dependent data, for "m.megolm_backup.v1.curve25519-aes-sha2" see [im.vector.matrix.android.internal.crypto.keysbackup.MegolmBackupAuthData] */ @Json(name = "auth_data") - var authData: Map? = null + var authData: JsonDict? = null /** * Facility method to convert authData to a MegolmBackupAuthData object diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysVersionResult.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysVersionResult.kt index bff8f13894..4510cdd773 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysVersionResult.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/KeysVersionResult.kt @@ -28,4 +28,4 @@ data class KeysVersionResult( // The number of keys stored in the backup. var count: Int? = null -) : KeysAlgorithmAndData() \ No newline at end of file +) : KeysAlgorithmAndData() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/UpdateKeysBackupVersionBody.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/UpdateKeysBackupVersionBody.kt index e2d628c459..cb8ba5e26c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/UpdateKeysBackupVersionBody.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/model/rest/UpdateKeysBackupVersionBody.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass data class UpdateKeysBackupVersionBody( // the backup version, mandatory val version: String -) : KeysAlgorithmAndData() \ No newline at end of file +) : KeysAlgorithmAndData() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/CreateKeysBackupVersionTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/CreateKeysBackupVersionTask.kt index 5aaaaea5b3..78ae0f7ea6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/CreateKeysBackupVersionTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/CreateKeysBackupVersionTask.kt @@ -28,7 +28,6 @@ internal interface CreateKeysBackupVersionTask : Task { data class Params( val version: String diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupLastVersionTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupLastVersionTask.kt index 3007622690..874a1749d6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupLastVersionTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupLastVersionTask.kt @@ -27,7 +27,6 @@ internal interface GetKeysBackupLastVersionTask : Task internal class DefaultGetKeysBackupLastVersionTask @Inject constructor(private val roomKeysApi: RoomKeysApi) : GetKeysBackupLastVersionTask { - override suspend fun execute(params: Unit): KeysVersionResult { return executeRequest { apiCall = roomKeysApi.getKeysBackupLastVersion() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupVersionTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupVersionTask.kt index c36f039c3c..ea0b9b9f3a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupVersionTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetKeysBackupVersionTask.kt @@ -27,7 +27,6 @@ internal interface GetKeysBackupVersionTask : Task internal class DefaultGetKeysBackupVersionTask @Inject constructor(private val roomKeysApi: RoomKeysApi) : GetKeysBackupVersionTask { - override suspend fun execute(params: String): KeysVersionResult { return executeRequest { apiCall = roomKeysApi.getKeysBackupVersion(params) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetRoomSessionsDataTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetRoomSessionsDataTask.kt index e8888f2590..ba903de8c1 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetRoomSessionsDataTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/GetRoomSessionsDataTask.kt @@ -22,7 +22,6 @@ import im.vector.matrix.android.internal.network.executeRequest import im.vector.matrix.android.internal.task.Task import javax.inject.Inject - internal interface GetRoomSessionsDataTask : Task { data class Params( val roomId: String, diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/UpdateKeysBackupVersionTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/UpdateKeysBackupVersionTask.kt index 28aedaf800..30b60af418 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/UpdateKeysBackupVersionTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/keysbackup/tasks/UpdateKeysBackupVersionTask.kt @@ -32,7 +32,6 @@ internal interface UpdateKeysBackupVersionTask : Task? = null -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/MXUsersDevicesMap.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/MXUsersDevicesMap.kt index 348b6ade12..bbad25ef51 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/MXUsersDevicesMap.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/MXUsersDevicesMap.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.crypto.model - class MXUsersDevicesMap { // A map of maps (userId -> (deviceId -> Object)). @@ -119,4 +118,4 @@ class MXUsersDevicesMap { override fun toString(): String { return "MXUsersDevicesMap $map" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmInboundGroupSessionWrapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmInboundGroupSessionWrapper.kt index 646f6b9c5b..69fc314796 100755 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmInboundGroupSessionWrapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmInboundGroupSessionWrapper.kt @@ -57,7 +57,6 @@ class OlmInboundGroupSessionWrapper : Serializable { } catch (e: Exception) { Timber.e(e, "## getFirstKnownIndex() : getFirstKnownIndex failed") } - } return null @@ -79,7 +78,6 @@ class OlmInboundGroupSessionWrapper : Serializable { } catch (e: Exception) { Timber.e(e, "Cannot create") } - } /** @@ -149,9 +147,8 @@ class OlmInboundGroupSessionWrapper : Serializable { } catch (e: Exception) { Timber.e(e, "## exportSession() : export failed") } - } return null } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmSessionWrapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmSessionWrapper.kt index a413abd5d8..acd056d9b9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmSessionWrapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/OlmSessionWrapper.kt @@ -33,4 +33,4 @@ data class OlmSessionWrapper( fun onMessageReceived() { lastReceivedMessageTs = System.currentTimeMillis() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptedEventContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptedEventContent.kt index 4d06b737e8..3efb2f59ad 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptedEventContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptedEventContent.kt @@ -55,6 +55,6 @@ data class EncryptedEventContent( @Json(name = "session_id") val sessionId: String? = null, - //Relation context is in clear in encrypted message + // Relation context is in clear in encrypted message @Json(name = "m.relates_to") val relatesTo: RelationDefaultContent? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptionEventContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptionEventContent.kt index 22df41e903..6de50f84c2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptionEventContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/EncryptionEventContent.kt @@ -41,4 +41,4 @@ data class EncryptionEventContent( */ @Json(name = "rotation_period_msgs") var rotationPeriodMsgs: Long? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/OlmPayloadContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/OlmPayloadContent.kt index c33ddb41a9..bf5833a44f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/OlmPayloadContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/event/OlmPayloadContent.kt @@ -58,5 +58,3 @@ data class OlmPayloadContent( } } } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/DeviceInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/DeviceInfo.kt index 1bd5f671cc..1289ef3d92 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/DeviceInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/DeviceInfo.kt @@ -59,5 +59,4 @@ data class DeviceInfo( override val date: Long get() = lastSeenTs ?: 0 - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedFileKey.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedFileKey.kt index 3cf1e3083a..799819ceee 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedFileKey.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedFileKey.kt @@ -77,4 +77,3 @@ data class EncryptedFileKey( return true } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedMessage.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedMessage.kt index bd070e3186..c546cd04c4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedMessage.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/EncryptedMessage.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.crypto.model.rest - import com.squareup.moshi.Json import com.squareup.moshi.JsonClass diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/ForwardedRoomKeyContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/ForwardedRoomKeyContent.kt index b887989f23..cf8652352c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/ForwardedRoomKeyContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/ForwardedRoomKeyContent.kt @@ -44,4 +44,4 @@ data class ForwardedRoomKeyContent( @Json(name = "sender_claimed_ed25519_key") val senderClaimedEd25519Key: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationCancel.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationCancel.kt index 1d4a9b345a..b5c45e9566 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationCancel.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationCancel.kt @@ -57,4 +57,4 @@ data class KeyVerificationCancel( } return true } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationKey.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationKey.kt index b5e3323236..4c6243fee3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationKey.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationKey.kt @@ -18,7 +18,6 @@ package im.vector.matrix.android.internal.crypto.model.rest import com.squareup.moshi.Json import com.squareup.moshi.JsonClass - /** * Sent by both devices to send their ephemeral Curve25519 public key to the other device. */ @@ -54,5 +53,4 @@ data class KeyVerificationKey( } return true } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationMac.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationMac.kt index 19dbbe5dda..8732e366d2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationMac.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationMac.kt @@ -62,5 +62,4 @@ data class KeyVerificationMac( } } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationStart.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationStart.kt index b042e32fef..081b19161a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationStart.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeyVerificationStart.kt @@ -74,7 +74,6 @@ class KeyVerificationStart : SendToDeviceObject { @Json(name = "short_authentication_string") var shortAuthenticationStrings: List? = null - companion object { const val VERIF_METHOD_SAS = "m.sas.v1" } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimBody.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimBody.kt index 3ae5ba20ad..87b9891ffa 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimBody.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimBody.kt @@ -37,4 +37,3 @@ data class KeysClaimBody( @Json(name = "one_time_keys") var oneTimeKeys: Map> ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimResponse.kt index 989267946b..976743d8bc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysClaimResponse.kt @@ -32,4 +32,3 @@ data class KeysClaimResponse( @Json(name = "one_time_keys") var oneTimeKeys: Map>>>? = null ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysUploadResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysUploadResponse.kt index 72e148baf5..b68c13bf4d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysUploadResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/KeysUploadResponse.kt @@ -51,4 +51,3 @@ data class KeysUploadResponse( return oneTimeKeyCounts?.containsKey(algorithm) == true } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShare.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShare.kt index 5d7d49f564..00ad490e1d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShare.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShare.kt @@ -35,4 +35,4 @@ open class RoomKeyShare : SendToDeviceObject { const val ACTION_SHARE_REQUEST = "request" const val ACTION_SHARE_CANCELLATION = "request_cancellation" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareCancellation.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareCancellation.kt index d763c5544b..768c2d71c5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareCancellation.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareCancellation.kt @@ -25,4 +25,4 @@ class RoomKeyShareCancellation : RoomKeyShare() { init { action = ACTION_SHARE_CANCELLATION } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareRequest.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareRequest.kt index 4374325870..0d8f7f8738 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareRequest.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/RoomKeyShareRequest.kt @@ -29,4 +29,4 @@ class RoomKeyShareRequest : RoomKeyShare() { init { action = ACTION_SHARE_REQUEST } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/SendToDeviceBody.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/SendToDeviceBody.kt index 0c873e8247..8b95d7c686 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/SendToDeviceBody.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/SendToDeviceBody.kt @@ -25,4 +25,4 @@ class SendToDeviceBody { * The device ID may also be *, meaning all known devices for the user. */ var messages: Map>? = null -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/UpdateDeviceInfoBody.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/UpdateDeviceInfoBody.kt index 3a7da69db8..161c5d0354 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/UpdateDeviceInfoBody.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/model/rest/UpdateDeviceInfoBody.kt @@ -29,4 +29,3 @@ data class UpdateDeviceInfoBody( var displayName: String? = null ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/repository/WarnOnUnknownDeviceRepository.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/repository/WarnOnUnknownDeviceRepository.kt index 24d213cfdb..879e565b57 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/repository/WarnOnUnknownDeviceRepository.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/repository/WarnOnUnknownDeviceRepository.kt @@ -41,5 +41,4 @@ internal class WarnOnUnknownDeviceRepository @Inject constructor() { fun setWarnOnUnknownDevices(warn: Boolean) { warnOnUnknownDevices = warn } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/IMXCryptoStore.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/IMXCryptoStore.kt index 1b19db2b89..4e8dfcb2b0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/IMXCryptoStore.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/IMXCryptoStore.kt @@ -179,7 +179,7 @@ internal interface IMXCryptoStore { * @param userId The user's id. * @param devices A map from device id to 'MXDevice' object for the device. */ - fun storeUserDevices(userId: String, devices: Map) + fun storeUserDevices(userId: String, devices: Map?) /** * Retrieve the known devices for a user. diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/Helper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/Helper.kt index 3f9aea3369..5ef2b9b1a2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/Helper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/Helper.kt @@ -27,7 +27,6 @@ import java.io.ObjectInputStream import java.io.ObjectOutputStream import java.util.zip.GZIPInputStream - /** * Get realm, invoke the action, close realm, and return the result of the action */ @@ -98,6 +97,7 @@ fun deserializeFromRealm(string: String?): T? { val gzis = GZIPInputStream(bais) val ois = ObjectInputStream(gzis) + @Suppress("UNCHECKED_CAST") val result = ois.readObject() as T ois.close() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt index 87e8b55b50..01826cee71 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt @@ -60,7 +60,6 @@ internal class RealmCryptoStore(private val realmConfiguration: RealmConfigurati // Cache for InboundGroupSession, to release them properly private val inboundGroupSessionToRelease = HashMap() - private val newSessionListeners = ArrayList() override fun addNewSessionListener(listener: NewSessionListener) { @@ -209,10 +208,7 @@ internal class RealmCryptoStore(private val realmConfiguration: RealmConfigurati ?.getDeviceInfo() } - override fun storeUserDevices(userId: String, devices: Map) { - if (userId == null) { - return - } + override fun storeUserDevices(userId: String, devices: Map?) { doRealmTransaction(realmConfiguration) { realm -> if (devices == null) { // Remove the user @@ -281,7 +277,7 @@ internal class RealmCryptoStore(private val realmConfiguration: RealmConfigurati try { sessionIdentifier = olmSessionWrapper.olmSession.sessionIdentifier() } catch (e: OlmException) { - Timber.e(e, "## storeSession() : sessionIdentifier failed " + e.message) + Timber.e(e, "## storeSession() : sessionIdentifier failed") } if (sessionIdentifier != null) { @@ -367,7 +363,7 @@ internal class RealmCryptoStore(private val realmConfiguration: RealmConfigurati try { sessionIdentifier = session.olmInboundGroupSession?.sessionIdentifier() } catch (e: OlmException) { - Timber.e(e, "## storeInboundGroupSession() : sessionIdentifier failed " + e.message) + Timber.e(e, "## storeInboundGroupSession() : sessionIdentifier failed") } if (sessionIdentifier != null) { @@ -737,5 +733,4 @@ internal class RealmCryptoStore(private val realmConfiguration: RealmConfigurati } .toMutableList() } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStoreModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStoreModule.kt index ff2f6cc42e..998274020a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStoreModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStoreModule.kt @@ -34,4 +34,4 @@ import io.realm.annotations.RealmModule OutgoingRoomKeyRequestEntity::class, UserEntity::class ]) -internal class RealmCryptoStoreModule \ No newline at end of file +internal class RealmCryptoStoreModule diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoMetadataEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoMetadataEntity.kt index 2c96bb25ed..eae202f966 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoMetadataEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoMetadataEntity.kt @@ -37,7 +37,6 @@ internal open class CryptoMetadataEntity( var backupVersion: String? = null ) : RealmObject() { - // Deserialize data fun getOlmAccount(): OlmAccount? { return deserializeFromRealm(olmAccountData) @@ -47,4 +46,4 @@ internal open class CryptoMetadataEntity( fun putOlmAccount(olmAccount: OlmAccount?) { olmAccountData = serializeForRealm(olmAccount) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoRoomEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoRoomEntity.kt index fcec259ed9..531f44a838 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoRoomEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/CryptoRoomEntity.kt @@ -27,5 +27,4 @@ internal open class CryptoRoomEntity( : RealmObject() { companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/IncomingRoomKeyRequestEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/IncomingRoomKeyRequestEntity.kt index 707418ab7e..9b1d116aa9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/IncomingRoomKeyRequestEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/IncomingRoomKeyRequestEntity.kt @@ -53,4 +53,4 @@ internal open class IncomingRoomKeyRequestEntity( requestBodySessionId = it.sessionId } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/KeysBackupDataEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/KeysBackupDataEntity.kt index 53ebf146d8..f88202dead 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/KeysBackupDataEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/KeysBackupDataEntity.kt @@ -27,4 +27,4 @@ internal open class KeysBackupDataEntity( var backupLastServerHash: String? = null, // The last known number of backed up keys on the server var backupLastServerNumberOfKeys: Int? = null -) : RealmObject() \ No newline at end of file +) : RealmObject() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmInboundGroupSessionEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmInboundGroupSessionEntity.kt index 4835300e66..caa8cb9668 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmInboundGroupSessionEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmInboundGroupSessionEntity.kt @@ -44,4 +44,4 @@ internal open class OlmInboundGroupSessionEntity( } companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmSessionEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmSessionEntity.kt index dbc860eff0..c051fe56a2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmSessionEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OlmSessionEntity.kt @@ -41,4 +41,4 @@ internal open class OlmSessionEntity(@PrimaryKey var primaryKey: String = "", } companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt index d468285882..b7bcb603f5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt @@ -73,5 +73,3 @@ internal open class OutgoingRoomKeyRequestEntity( } } } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/query/UserEntitiesQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/query/UserEntitiesQueries.kt index 3860d8d8ce..8088a14825 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/query/UserEntitiesQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/query/UserEntitiesQueries.kt @@ -42,4 +42,3 @@ internal fun UserEntity.Companion.delete(realm: Realm, userId: String) { .findFirst() ?.deleteFromRealm() } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/DeleteDeviceTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/DeleteDeviceTask.kt index 3e6e4d8ca2..0e52c118d9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/DeleteDeviceTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/DeleteDeviceTask.kt @@ -55,7 +55,6 @@ internal class DefaultDeleteDeviceTask @Inject constructor(private val cryptoApi } else { throw throwable } - } else { // Other error throw throwable diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/DefaultSasVerificationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/DefaultSasVerificationService.kt index e071fc8571..ca1157e583 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/DefaultSasVerificationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/DefaultSasVerificationService.kt @@ -37,7 +37,6 @@ import im.vector.matrix.android.internal.crypto.model.rest.* import im.vector.matrix.android.internal.crypto.store.IMXCryptoStore import im.vector.matrix.android.internal.crypto.tasks.SendToDeviceTask import im.vector.matrix.android.internal.session.SessionScope -import im.vector.matrix.android.internal.task.TaskConstraints import im.vector.matrix.android.internal.task.TaskExecutor import im.vector.matrix.android.internal.task.configureWith import im.vector.matrix.android.internal.util.MatrixCoroutineDispatchers @@ -90,7 +89,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre onMacReceived(event) } else -> { - //ignore + // ignore } } } @@ -120,7 +119,6 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre } catch (e: Throwable) { Timber.e(e, "## Error while notifying listeners") } - } } } @@ -167,7 +165,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre } return } - //Download device keys prior to everything + // Download device keys prior to everything checkKeysAreDownloaded( otherUserId!!, startReq, @@ -177,19 +175,19 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre val existing = getExistingTransaction(otherUserId, tid) val existingTxs = getExistingTransactionsForUser(otherUserId) if (existing != null) { - //should cancel both! + // should cancel both! Timber.v("## SAS onStartRequestReceived - Request exist with same if ${startReq.transactionID!!}") existing.cancel(CancelCode.UnexpectedMessage) cancelTransaction(tid, otherUserId, startReq.fromDevice!!, CancelCode.UnexpectedMessage) } else if (existingTxs?.isEmpty() == false) { Timber.v("## SAS onStartRequestReceived - There is already a transaction with this user ${startReq.transactionID!!}") - //Multiple keyshares between two devices: any two devices may only have at most one key verification in flight at a time. + // Multiple keyshares between two devices: any two devices may only have at most one key verification in flight at a time. existingTxs.forEach { it.cancel(CancelCode.UnexpectedMessage) } cancelTransaction(tid, otherUserId, startReq.fromDevice!!, CancelCode.UnexpectedMessage) } else { - //Ok we can create + // Ok we can create if (KeyVerificationStart.VERIF_METHOD_SAS == startReq.method) { Timber.v("## SAS onStartRequestReceived - request accepted ${startReq.transactionID!!}") val tx = IncomingSASVerificationTransaction( @@ -241,7 +239,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre val cancelReq = event.getClearContent().toModel()!! if (!cancelReq.isValid()) { - //ignore + // ignore Timber.e("## Received invalid accept request") return } @@ -263,7 +261,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre val acceptReq = event.getClearContent().toModel()!! if (!acceptReq.isValid()) { - //ignore + // ignore Timber.e("## Received invalid accept request") return } @@ -272,22 +270,20 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre if (existing == null) { Timber.e("## Received invalid accept request") return - } if (existing is SASVerificationTransaction) { existing.acceptToDeviceEvent(otherUserId, acceptReq) } else { - //not other types now + // not other types now } } - private suspend fun onKeyReceived(event: Event) { val keyReq = event.getClearContent().toModel()!! if (!keyReq.isValid()) { - //ignore + // ignore Timber.e("## Received invalid key request") return } @@ -300,7 +296,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre if (existing is SASVerificationTransaction) { existing.acceptToDeviceEvent(otherUserId, keyReq) } else { - //not other types now + // not other types now } } @@ -308,7 +304,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre val macReq = event.getClearContent().toModel()!! if (!macReq.isValid()) { - //ignore + // ignore Timber.e("## Received invalid key request") return } @@ -321,7 +317,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre if (existing is SASVerificationTransaction) { existing.acceptToDeviceEvent(otherUserId, macReq) } else { - //not other types known for now + // not other types known for now } } @@ -362,7 +358,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre override fun beginKeyVerification(method: String, userId: String, deviceID: String): String? { val txID = createUniqueIDForTransaction(userId, deviceID) - //should check if already one (and cancel it) + // should check if already one (and cancel it) if (KeyVerificationStart.VERIF_METHOD_SAS == method) { val tx = OutgoingSASVerificationRequest( this, @@ -397,7 +393,6 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre } } - override fun transactionUpdated(tx: VerificationTransaction) { dispatchTxUpdated(tx) if (tx is SASVerificationTransaction @@ -405,7 +400,7 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre || tx.state == SasVerificationTxState.OnCancelled || tx.state == SasVerificationTxState.Verified) ) { - //remove + // remove this.removeTransaction(tx.otherUserId, tx.transactionId) } } @@ -429,4 +424,4 @@ internal class DefaultSasVerificationService @Inject constructor(private val cre } .executeBy(taskExecutor) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/IncomingSASVerificationTransaction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/IncomingSASVerificationTransaction.kt index 641062d7f2..6ed5be4881 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/IncomingSASVerificationTransaction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/IncomingSASVerificationTransaction.kt @@ -82,16 +82,14 @@ internal class IncomingSASVerificationTransaction( Timber.v("## SAS received verification request from state $state") if (state != SasVerificationTxState.None) { Timber.e("## received verification request from invalid state") - //should I cancel?? + // should I cancel?? throw IllegalStateException("Interactive Key verification already started") } this.startReq = startReq state = SasVerificationTxState.OnStarted this.otherDeviceId = startReq.fromDevice - } - override fun performAccept() { if (state != SasVerificationTxState.OnStarted) { Timber.e("## Cannot perform accept from state $state") @@ -105,29 +103,29 @@ internal class IncomingSASVerificationTransaction( val agreedMac = startReq!!.messageAuthenticationCodes?.firstOrNull { KNOWN_MACS.contains(it) } val agreedShortCode = startReq!!.shortAuthenticationStrings?.filter { KNOWN_SHORT_CODES.contains(it) } - //No common key sharing/hashing/hmac/SAS methods. - //If a device is unable to complete the verification because the devices are unable to find a common key sharing, + // No common key sharing/hashing/hmac/SAS methods. + // If a device is unable to complete the verification because the devices are unable to find a common key sharing, // hashing, hmac, or SAS method, then it should send a m.key.verification.cancel message if (listOf(agreedProtocol, agreedHash, agreedMac).any { it.isNullOrBlank() } || agreedShortCode.isNullOrEmpty()) { - //Failed to find agreement + // Failed to find agreement Timber.e("## Failed to find agreement ") cancel(CancelCode.UnknownMethod) return } - //Bob’s device ensures that it has a copy of Alice’s device key. + // Bob’s device ensures that it has a copy of Alice’s device key. val mxDeviceInfo = cryptoStore.getUserDevice(deviceId = otherDeviceId!!, userId = otherUserId) if (mxDeviceInfo?.fingerprint() == null) { Timber.e("## Failed to find device key ") - //TODO force download keys!! - //would be probably better to download the keys - //for now I cancel + // TODO force download keys!! + // would be probably better to download the keys + // for now I cancel cancel(CancelCode.User) } else { // val otherKey = info.identityKey() - //need to jump back to correct thread + // need to jump back to correct thread val accept = KeyVerificationAccept.create( tid = transactionId, keyAgreementProtocol = agreedProtocol!!, @@ -140,26 +138,24 @@ internal class IncomingSASVerificationTransaction( } } - private fun doAccept(accept: KeyVerificationAccept) { this.accepted = accept Timber.v("## SAS accept request id:$transactionId") - //The hash commitment is the hash (using the selected hash algorithm) of the unpadded base64 representation of QB, + // The hash commitment is the hash (using the selected hash algorithm) of the unpadded base64 representation of QB, // concatenated with the canonical JSON representation of the content of the m.key.verification.start message val concat = getSAS().publicKey + JsonCanonicalizer.getCanonicalJson(KeyVerificationStart::class.java, startReq!!) accept.commitment = hashUsingAgreedHashMethod(concat) ?: "" - //we need to send this to other device now + // we need to send this to other device now state = SasVerificationTxState.SendingAccept sendToOther(EventType.KEY_VERIFICATION_ACCEPT, accept, SasVerificationTxState.Accepted, CancelCode.User) { if (state == SasVerificationTxState.SendingAccept) { - //It is possible that we receive the next event before this one :/, in this case we should keep state + // It is possible that we receive the next event before this one :/, in this case we should keep state state = SasVerificationTxState.Accepted } } } - override fun onVerificationAccept(accept: KeyVerificationAccept) { Timber.v("## SAS invalid message for incoming request id:$transactionId") cancel(CancelCode.UnexpectedMessage) @@ -180,11 +176,11 @@ internal class IncomingSASVerificationTransaction( val pubKey = getSAS().publicKey val keyToDevice = KeyVerificationKey.create(transactionId, pubKey) - //we need to send this to other device now + // we need to send this to other device now state = SasVerificationTxState.SendingKey this.sendToOther(EventType.KEY_VERIFICATION_KEY, keyToDevice, SasVerificationTxState.KeySent, CancelCode.User) { if (state == SasVerificationTxState.SendingKey) { - //It is possible that we receive the next event before this one :/, in this case we should keep state + // It is possible that we receive the next event before this one :/, in this case we should keep state state = SasVerificationTxState.KeySent } } @@ -194,7 +190,7 @@ internal class IncomingSASVerificationTransaction( // using the result as the shared secret. getSAS().setTheirPublicKey(otherKey) - //(Note: In all of the following HKDF is as defined in RFC 5869, and uses the previously agreed-on hash function as the hash function, + // (Note: In all of the following HKDF is as defined in RFC 5869, and uses the previously agreed-on hash function as the hash function, // the shared secret as the input keying material, no salt, and with the input parameter set to the concatenation of: // - the string “MATRIX_KEY_VERIFICATION_SAS”, // - the Matrix ID of the user who sent the m.key.verification.start message, @@ -206,8 +202,8 @@ internal class IncomingSASVerificationTransaction( "$otherUserId$otherDeviceId" + "${credentials.userId}${credentials.deviceId}" + transactionId - //decimal: generate five bytes by using HKDF. - //emoji: generate six bytes by using HKDF. + // decimal: generate five bytes by using HKDF. + // emoji: generate six bytes by using HKDF. shortCodeBytes = getSAS().generateShortCode(sasInfo, 6) Timber.e("************ BOB CODE ${getDecimalCodeRepresentation(shortCodeBytes!!)}") @@ -218,7 +214,7 @@ internal class IncomingSASVerificationTransaction( override fun onKeyVerificationMac(vKey: KeyVerificationMac) { Timber.v("## SAS received mac for request id:$transactionId") - //Check for state? + // Check for state? if (state != SasVerificationTxState.SendingKey && state != SasVerificationTxState.KeySent && state != SasVerificationTxState.ShortCodeReady @@ -231,11 +227,11 @@ internal class IncomingSASVerificationTransaction( } theirMac = vKey - //Do I have my Mac? + // Do I have my Mac? if (myMac != null) { - //I can check + // I can check verifyMacs() } - //Wait for ShortCode Accepted + // Wait for ShortCode Accepted } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/OutgoingSASVerificationRequest.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/OutgoingSASVerificationRequest.kt index 0500be5426..cade637cce 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/OutgoingSASVerificationRequest.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/OutgoingSASVerificationRequest.kt @@ -56,7 +56,6 @@ internal class OutgoingSASVerificationRequest( isIncoming = false), OutgoingSasVerificationRequest { - override val uxState: OutgoingSasVerificationRequest.UxState get() { return when (state) { @@ -87,7 +86,7 @@ internal class OutgoingSASVerificationRequest( fun start() { if (state != SasVerificationTxState.None) { Timber.e("## start verification from invalid state") - //should I cancel?? + // should I cancel?? throw IllegalStateException("Interactive Key verification already started") } @@ -119,7 +118,7 @@ internal class OutgoingSASVerificationRequest( cancel(CancelCode.UnexpectedMessage) return } - //Check that the agreement is correct + // Check that the agreement is correct if (!KNOWN_AGREEMENT_PROTOCOLS.contains(accept.keyAgreementProtocol) || !KNOWN_HASHES.contains(accept.hash) || !KNOWN_MACS.contains(accept.messageAuthenticationCode) @@ -129,7 +128,7 @@ internal class OutgoingSASVerificationRequest( return } - //Upon receipt of the m.key.verification.accept message from Bob’s device, + // Upon receipt of the m.key.verification.accept message from Bob’s device, // Alice’s device stores the commitment value for later use. accepted = accept state = SasVerificationTxState.OnAccepted @@ -139,10 +138,10 @@ internal class OutgoingSASVerificationRequest( val pubKey = getSAS().publicKey val keyToDevice = KeyVerificationKey.create(transactionId, pubKey) - //we need to send this to other device now + // we need to send this to other device now state = SasVerificationTxState.SendingKey sendToOther(EventType.KEY_VERIFICATION_KEY, keyToDevice, SasVerificationTxState.KeySent, CancelCode.User) { - //It is possible that we receive the next event before this one :/, in this case we should keep state + // It is possible that we receive the next event before this one :/, in this case we should keep state if (state == SasVerificationTxState.SendingKey) { state = SasVerificationTxState.KeySent } @@ -163,13 +162,13 @@ internal class OutgoingSASVerificationRequest( // message is the same as the expected value based on the value of the key property received // in Bob’s m.key.verification.key and the content of Alice’s m.key.verification.start message. - //check commitment + // check commitment val concat = vKey.key + JsonCanonicalizer.getCanonicalJson(KeyVerificationStart::class.java, startReq!!) val otherCommitment = hashUsingAgreedHashMethod(concat) ?: "" if (accepted!!.commitment.equals(otherCommitment)) { getSAS().setTheirPublicKey(otherKey) - //(Note: In all of the following HKDF is as defined in RFC 5869, and uses the previously agreed-on hash function as the hash function, + // (Note: In all of the following HKDF is as defined in RFC 5869, and uses the previously agreed-on hash function as the hash function, // the shared secret as the input keying material, no salt, and with the input parameter set to the concatenation of: // - the string “MATRIX_KEY_VERIFICATION_SAS”, // - the Matrix ID of the user who sent the m.key.verification.start message, @@ -181,12 +180,12 @@ internal class OutgoingSASVerificationRequest( "${credentials.userId}${credentials.deviceId}" + "$otherUserId$otherDeviceId" + transactionId - //decimal: generate five bytes by using HKDF. - //emoji: generate six bytes by using HKDF. + // decimal: generate five bytes by using HKDF. + // emoji: generate six bytes by using HKDF. shortCodeBytes = getSAS().generateShortCode(sasInfo, 6) state = SasVerificationTxState.ShortCodeReady } else { - //bad commitement + // bad commitement cancel(CancelCode.MismatchedCommitment) } } @@ -205,11 +204,11 @@ internal class OutgoingSASVerificationRequest( theirMac = vKey - //Do I have my Mac? + // Do I have my Mac? if (myMac != null) { - //I can check + // I can check verifyMacs() } - //Wait for ShortCode Accepted + // Wait for ShortCode Accepted } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/SASVerificationTransaction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/SASVerificationTransaction.kt index de4b997410..589103d38a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/SASVerificationTransaction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/verification/SASVerificationTransaction.kt @@ -59,20 +59,20 @@ internal abstract class SASVerificationTransaction( const val SAS_MAC_SHA256_LONGKDF = "hmac-sha256" const val SAS_MAC_SHA256 = "hkdf-hmac-sha256" - //ordered by preferred order + // ordered by preferred order val KNOWN_AGREEMENT_PROTOCOLS = listOf(MXKey.KEY_CURVE_25519_TYPE) - //ordered by preferred order + // ordered by preferred order val KNOWN_HASHES = listOf("sha256") - //ordered by preferred order + // ordered by preferred order val KNOWN_MACS = listOf(SAS_MAC_SHA256, SAS_MAC_SHA256_LONGKDF) - //older devices have limited support of emoji, so reply with decimal + // older devices have limited support of emoji, so reply with decimal val KNOWN_SHORT_CODES = - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { listOf(SasMode.EMOJI, SasMode.DECIMAL) - else + } else { listOf(SasMode.DECIMAL) - + } } override var state by Delegates.observable(SasVerificationTxState.None) { _, _, new -> @@ -108,7 +108,7 @@ internal abstract class SASVerificationTransaction( return olmSas!! } - //To override finalize(), all you need to do is simply declare it, without using the override keyword: + // To override finalize(), all you need to do is simply declare it, without using the override keyword: protected fun finalize() { releaseSAS() } @@ -119,7 +119,6 @@ internal abstract class SASVerificationTransaction( olmSas = null } - /** * To be called by the client when the user has verified that * both short codes do match @@ -127,16 +126,16 @@ internal abstract class SASVerificationTransaction( override fun userHasVerifiedShortCode() { Timber.v("## SAS short code verified by user for id:$transactionId") if (state != SasVerificationTxState.ShortCodeReady) { - //ignore and cancel? + // ignore and cancel? Timber.e("## Accepted short code from invalid state $state") cancel(CancelCode.UnexpectedMessage) return } state = SasVerificationTxState.ShortCodeAccepted - //Alice and Bob’ devices calculate the HMAC of their own device keys and a comma-separated, + // Alice and Bob’ devices calculate the HMAC of their own device keys and a comma-separated, // sorted list of the key IDs that they wish the other user to verify, - //the shared secret as the input keying material, no salt, and with the input parameter set to the concatenation of: + // the shared secret as the input keying material, no salt, and with the input parameter set to the concatenation of: // - the string “MATRIX_KEY_VERIFICATION_MAC”, // - the Matrix ID of the user whose key is being MAC-ed, // - the device ID of the device sending the MAC, @@ -155,7 +154,7 @@ internal abstract class SASVerificationTransaction( val keyStrings = macUsingAgreedMethod(keyId, baseInfo + "KEY_IDS") if (macString.isNullOrBlank() || keyStrings.isNullOrBlank()) { - //Should not happen + // Should not happen Timber.e("## SAS verification [$transactionId] failed to send KeyMac, empty key hashes.") cancel(CancelCode.UnexpectedMessage) return @@ -166,16 +165,15 @@ internal abstract class SASVerificationTransaction( state = SasVerificationTxState.SendingMac sendToOther(EventType.KEY_VERIFICATION_MAC, macMsg, SasVerificationTxState.MacSent, CancelCode.User) { if (state == SasVerificationTxState.SendingMac) { - //It is possible that we receive the next event before this one :/, in this case we should keep state + // It is possible that we receive the next event before this one :/, in this case we should keep state state = SasVerificationTxState.MacSent } } - //Do I already have their Mac? + // Do I already have their Mac? if (theirMac != null) { verifyMacs() - } //if not wait for it - + } // if not wait for it } override fun acceptToDeviceEvent(senderId: String, event: SendToDeviceObject) { @@ -185,7 +183,7 @@ internal abstract class SASVerificationTransaction( is KeyVerificationKey -> onKeyVerificationKey(senderId, event) is KeyVerificationMac -> onKeyVerificationMac(event) else -> { - //nop + // nop } } } @@ -202,7 +200,7 @@ internal abstract class SASVerificationTransaction( Timber.v("## SAS verifying macs for id:$transactionId") state = SasVerificationTxState.Verifying - //Keys have been downloaded earlier in process + // Keys have been downloaded earlier in process val otherUserKnownDevices = cryptoStore.getUserDevices(otherUserId) // Bob’s device calculates the HMAC (as above) of its copies of Alice’s keys given in the message (as identified by their key ID), @@ -219,25 +217,25 @@ internal abstract class SASVerificationTransaction( val keyStrings = macUsingAgreedMethod(commaSeparatedListOfKeyIds, baseInfo + "KEY_IDS") if (theirMac!!.keys != keyStrings) { - //WRONG! + // WRONG! cancel(CancelCode.MismatchedKeys) return } val verifiedDevices = ArrayList() - //cannot be empty because it has been validated + // cannot be empty because it has been validated theirMac!!.mac!!.keys.forEach { val keyIDNoPrefix = if (it.startsWith("ed25519:")) it.substring("ed25519:".length) else it val otherDeviceKey = otherUserKnownDevices?.get(keyIDNoPrefix)?.fingerprint() if (otherDeviceKey == null) { Timber.e("Verification: Could not find device $keyIDNoPrefix to verify") - //just ignore and continue + // just ignore and continue return@forEach } val mac = macUsingAgreedMethod(otherDeviceKey, baseInfo + it) if (mac != theirMac?.mac?.get(it)) { - //WRONG! + // WRONG! cancel(CancelCode.MismatchedKeys) return } @@ -252,7 +250,7 @@ internal abstract class SASVerificationTransaction( return } - //TODO what if the otherDevice is not in this list? and should we + // TODO what if the otherDevice is not in this list? and should we verifiedDevices.forEach { setDeviceVerified(it, otherUserId) } @@ -370,16 +368,16 @@ internal abstract class SASVerificationTransaction( * or with the three numbers on separate lines. */ fun getDecimalCodeRepresentation(byteArray: ByteArray): String { - val b0 = byteArray[0].toUnsignedInt() //need unsigned byte - val b1 = byteArray[1].toUnsignedInt() //need unsigned byte - val b2 = byteArray[2].toUnsignedInt() //need unsigned byte - val b3 = byteArray[3].toUnsignedInt() //need unsigned byte - val b4 = byteArray[4].toUnsignedInt() //need unsigned byte - //(B0 << 5 | B1 >> 3) + 1000 + val b0 = byteArray[0].toUnsignedInt() // need unsigned byte + val b1 = byteArray[1].toUnsignedInt() // need unsigned byte + val b2 = byteArray[2].toUnsignedInt() // need unsigned byte + val b3 = byteArray[3].toUnsignedInt() // need unsigned byte + val b4 = byteArray[4].toUnsignedInt() // need unsigned byte + // (B0 << 5 | B1 >> 3) + 1000 val first = (b0.shl(5) or b1.shr(3)) + 1000 - //((B1 & 0x7) << 10 | B2 << 2 | B3 >> 6) + 1000 + // ((B1 & 0x7) << 10 | B2 << 2 | B3 >> 6) + 1000 val second = ((b1 and 0x7).shl(10) or b2.shl(2) or b3.shr(6)) + 1000 - //((B3 & 0x3f) << 7 | B4 >> 1) + 1000 + // ((B3 & 0x3f) << 7 | B4 >> 1) + 1000 val third = ((b3 and 0x3f).shl(7) or b4.shr(1)) + 1000 return "$first $second $third" } @@ -411,5 +409,4 @@ internal abstract class SASVerificationTransaction( getEmojiForCode((b4 and 0xF).shl(2) or (b5 and 0xC0).shr(6)) ) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/AsyncTransaction.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/AsyncTransaction.kt index e1beefc2e5..36e68e5cf3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/AsyncTransaction.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/AsyncTransaction.kt @@ -21,7 +21,6 @@ import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.isActive import kotlinx.coroutines.withContext - suspend fun awaitTransaction(config: RealmConfiguration, transaction: suspend (realm: Realm) -> Unit) = withContext(Dispatchers.IO) { Realm.getInstance(config).use { bgRealm -> bgRealm.beginTransaction() @@ -36,4 +35,4 @@ suspend fun awaitTransaction(config: RealmConfiguration, transaction: suspend (r } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/DBConstants.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/DBConstants.kt index 0f420f3bbf..3dff2f2273 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/DBConstants.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/DBConstants.kt @@ -19,5 +19,4 @@ package im.vector.matrix.android.internal.database internal object DBConstants { const val STATE_EVENTS_CHUNK_TOKEN = "STATE_EVENTS_CHUNK_TOKEN" - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmKeysUtils.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmKeysUtils.kt index d2ab764087..55ced343d4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmKeysUtils.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmKeysUtils.kt @@ -117,4 +117,4 @@ internal class RealmKeysUtils @Inject constructor(context: Context, companion object { private const val ENCRYPTED_KEY_PREFIX = "REALM_ENCRYPTED_KEY" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmLiveEntityObserver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmLiveEntityObserver.kt index e78078f93e..9c7a788b44 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmLiveEntityObserver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmLiveEntityObserver.kt @@ -66,5 +66,4 @@ internal abstract class RealmLiveEntityObserver(protected val r override fun isStarted(): Boolean { return isStarted.get() } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmQueryLatch.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmQueryLatch.kt index 3e3ffad45c..2d386eac15 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmQueryLatch.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/RealmQueryLatch.kt @@ -22,7 +22,6 @@ import java.util.concurrent.CountDownLatch import java.util.concurrent.TimeUnit import java.util.concurrent.atomic.AtomicReference - class RealmQueryLatch(private val realmConfiguration: RealmConfiguration, private val realmQueryBuilder: (Realm) -> RealmQuery) { @@ -57,6 +56,4 @@ class RealmQueryLatch(private val realmConfiguration: RealmConf } } } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/SessionRealmConfigurationFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/SessionRealmConfigurationFactory.kt index d5a60e9d2b..881d7ce2c5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/SessionRealmConfigurationFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/SessionRealmConfigurationFactory.kt @@ -42,7 +42,6 @@ internal class SessionRealmConfigurationFactory @Inject constructor(private val private val sharedPreferences = context.getSharedPreferences("im.vector.matrix.android.realm", Context.MODE_PRIVATE) - fun create(): RealmConfiguration { val shouldClearRealm = sharedPreferences.getBoolean("$REALM_SHOULD_CLEAR_FLAG_$userMd5", false) if (shouldClearRealm) { @@ -88,4 +87,4 @@ internal class SessionRealmConfigurationFactory @Inject constructor(private val } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/ChunkEntityHelper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/ChunkEntityHelper.kt index 3824fed779..4c65fc1e64 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/ChunkEntityHelper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/ChunkEntityHelper.kt @@ -111,7 +111,6 @@ internal fun ChunkEntity.add(roomId: String, direction: PaginationDirection, stateIndexOffset: Int = 0, isUnlinked: Boolean = false) { - assertIsManaged() if (event.eventId != null && timelineEvents.find(event.eventId) != null) { return @@ -187,4 +186,4 @@ internal fun ChunkEntity.lastStateIndex(direction: PaginationDirection, defaultV PaginationDirection.FORWARDS -> forwardsStateIndex PaginationDirection.BACKWARDS -> backwardsStateIndex } ?: defaultValue -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/TimelineEventEntityHelper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/TimelineEventEntityHelper.kt index f6bf258baa..24765c120d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/TimelineEventEntityHelper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/helper/TimelineEventEntityHelper.kt @@ -30,7 +30,6 @@ import io.realm.Realm import io.realm.RealmList import io.realm.RealmQuery - internal fun TimelineEventEntity.updateSenderData() { assertIsManaged() val roomEntity = RoomEntity.where(realm, roomId = roomId).findFirst() ?: return @@ -67,7 +66,7 @@ internal fun TimelineEventEntity.updateSenderData() { this.senderMembershipEvent = senderMembershipEvent } -internal fun TimelineEventEntity.Companion.nextId(realm: Realm): Long{ +internal fun TimelineEventEntity.Companion.nextId(realm: Realm): Long { val currentIdNum = realm.where(TimelineEventEntity::class.java).max(TimelineEventEntityFields.LOCAL_ID) return if (currentIdNum == null) { 1 @@ -82,4 +81,3 @@ private fun RealmList.buildQuery(sender: String, isUnlinked .equalTo(TimelineEventEntityFields.ROOT.TYPE, EventType.STATE_ROOM_MEMBER) .equalTo(TimelineEventEntityFields.ROOT.IS_UNLINKED, isUnlinked) } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ContentMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ContentMapper.kt index 801fdf3920..2406027f24 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ContentMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ContentMapper.kt @@ -36,5 +36,4 @@ internal object ContentMapper { adapter.toJson(it) } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/DraftMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/DraftMapper.kt index 6b87951e0a..3bd6cf14e4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/DraftMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/DraftMapper.kt @@ -42,4 +42,4 @@ internal object DraftMapper { is UserDraft.REPLY -> DraftEntity(content = domain.text, draftMode = DraftEntity.MODE_REPLY, linkedEventId = domain.linkedEventId) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventAnnotationsSummaryMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventAnnotationsSummaryMapper.kt index 1b7b7f6407..701d35926a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventAnnotationsSummaryMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventAnnotationsSummaryMapper.kt @@ -61,7 +61,7 @@ internal object EventAnnotationsSummaryMapper { it.lastEditTs ) } - eventAnnotationsSummaryEntity.reactionsSummary = annotationsSummary.reactionsSummary?.let { + eventAnnotationsSummaryEntity.reactionsSummary = annotationsSummary.reactionsSummary.let { RealmList().apply { addAll(it.map { ReactionAggregatedSummaryEntity( @@ -81,4 +81,4 @@ internal object EventAnnotationsSummaryMapper { internal fun EventAnnotationsSummaryEntity.asDomain(): EventAnnotationsSummary { return EventAnnotationsSummaryMapper.map(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventMapper.kt index 4375a19d17..daeb7b241f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/EventMapper.kt @@ -27,7 +27,6 @@ import timber.log.Timber internal object EventMapper { - fun map(event: Event, roomId: String): EventEntity { val uds = if (event.unsignedData == null) null else MoshiProvider.providesMoshi().adapter(UnsignedData::class.java).toJson(event.unsignedData) @@ -48,16 +47,17 @@ internal object EventMapper { } fun map(eventEntity: EventEntity): Event { - val ud = if (eventEntity.unsignedData.isNullOrBlank()) { - null - } else { - try { - MoshiProvider.providesMoshi().adapter(UnsignedData::class.java).fromJson(eventEntity.unsignedData) - } catch (t: JsonDataException) { - null - } + val ud = eventEntity.unsignedData + ?.takeIf { it.isNotBlank() } + ?.let { + try { + MoshiProvider.providesMoshi().adapter(UnsignedData::class.java).fromJson(it) + } catch (t: JsonDataException) { + Timber.e(t, "Failed to parse UnsignedData") + null + } + } - } return Event( type = eventEntity.type, eventId = eventEntity.eventId, @@ -78,11 +78,12 @@ internal object EventMapper { Timber.e(t, "Failed to parse decryption result") } } - //TODO get the full crypto error object - it.mCryptoError = eventEntity.decryptionErrorCode?.let { MXCryptoError.ErrorType.valueOf(it) } + // TODO get the full crypto error object + it.mCryptoError = eventEntity.decryptionErrorCode?.let { errorCode -> + MXCryptoError.ErrorType.valueOf(errorCode) + } } } - } internal fun EventEntity.asDomain(): Event { @@ -92,4 +93,3 @@ internal fun EventEntity.asDomain(): Event { internal fun Event.toEntity(roomId: String): EventEntity { return EventMapper.map(this, roomId) } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupMapper.kt index fdd65be6b9..89ed5844c2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupMapper.kt @@ -20,7 +20,6 @@ import im.vector.matrix.android.api.session.group.Group import im.vector.matrix.android.internal.database.model.GroupEntity import im.vector.matrix.android.internal.session.group.DefaultGroup - internal object GroupMapper { fun map(groupEntity: GroupEntity): Group { @@ -32,4 +31,4 @@ internal object GroupMapper { internal fun GroupEntity.asDomain(): Group { return GroupMapper.map(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupSummaryMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupSummaryMapper.kt index 44cbf2998d..52e4d61d40 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupSummaryMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/GroupSummaryMapper.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.internal.database.mapper import im.vector.matrix.android.api.session.group.model.GroupSummary import im.vector.matrix.android.internal.database.model.GroupSummaryEntity - internal object GroupSummaryMapper { fun map(groupSummaryEntity: GroupSummaryEntity): GroupSummary { @@ -37,4 +36,4 @@ internal object GroupSummaryMapper { internal fun GroupSummaryEntity.asDomain(): GroupSummary { return GroupSummaryMapper.map(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/HomeServerCapabilitiesMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/HomeServerCapabilitiesMapper.kt index 44f3d69db5..66b0f1b379 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/HomeServerCapabilitiesMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/HomeServerCapabilitiesMapper.kt @@ -35,4 +35,4 @@ internal object HomeServerCapabilitiesMapper { maxUploadFileSize = domain.maxUploadFileSize ) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushConditionMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushConditionMapper.kt index 4aabc9a8f1..3bc532fd93 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushConditionMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushConditionMapper.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.internal.database.mapper import im.vector.matrix.android.api.pushrules.rest.PushCondition import im.vector.matrix.android.internal.database.model.PushConditionEntity - internal object PushConditionMapper { fun map(entity: PushConditionEntity): PushCondition { @@ -39,4 +38,4 @@ internal object PushConditionMapper { pattern = domain.pattern ) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushRulesMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushRulesMapper.kt index 1ed2151e68..8912928a88 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushRulesMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushRulesMapper.kt @@ -24,7 +24,6 @@ import im.vector.matrix.android.internal.di.MoshiProvider import io.realm.RealmList import timber.log.Timber - internal object PushRulesMapper { private val moshiActionsAdapter = MoshiProvider.providesMoshi().adapter>(Types.newParameterizedType(List::class.java, Any::class.java)) @@ -53,7 +52,6 @@ internal object PushRulesMapper { } } - fun mapRoomRule(pushrule: PushRuleEntity): PushRule { return PushRule( actions = fromActionStr(pushrule.actionsStr), @@ -78,7 +76,6 @@ internal object PushRulesMapper { ) } - fun map(pushrule: PushRuleEntity): PushRule { return PushRule( actions = fromActionStr(pushrule.actionsStr), @@ -101,5 +98,4 @@ internal object PushRulesMapper { } ?: RealmList() ) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushersMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushersMapper.kt index d11532c588..315c8a766c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushersMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/PushersMapper.kt @@ -24,7 +24,6 @@ import im.vector.matrix.android.internal.session.pushers.JsonPusher internal object PushersMapper { fun map(pushEntity: PusherEntity): Pusher { - return Pusher( pushKey = pushEntity.pushKey, kind = pushEntity.kind ?: "", @@ -58,4 +57,4 @@ internal fun PusherEntity.asDomain(): Pusher { internal fun JsonPusher.toEntity(): PusherEntity { return PushersMapper.map(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ReadReceiptsSummaryMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ReadReceiptsSummaryMapper.kt index 9fa9fc011d..952dfb9728 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ReadReceiptsSummaryMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/ReadReceiptsSummaryMapper.kt @@ -41,5 +41,4 @@ internal class ReadReceiptsSummaryMapper @Inject constructor(@SessionDatabase pr } } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/RoomSummaryMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/RoomSummaryMapper.kt index 2f34d18770..5db062b000 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/RoomSummaryMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/RoomSummaryMapper.kt @@ -39,8 +39,8 @@ internal class RoomSummaryMapper @Inject constructor( timelineEventMapper.map(it) } if (latestEvent?.root?.isEncrypted() == true && latestEvent.root.mxDecryptionResult == null) { - //TODO use a global event decryptor? attache to session and that listen to new sessionId? - //for now decrypt sync + // TODO use a global event decryptor? attache to session and that listen to new sessionId? + // for now decrypt sync try { val result = cryptoService.decryptEvent(latestEvent.root, latestEvent.root.roomId + UUID.randomUUID().toString()) latestEvent.root.mxDecryptionResult = OlmDecryptionResult( @@ -50,7 +50,6 @@ internal class RoomSummaryMapper @Inject constructor( forwardingCurve25519KeyChain = result.forwardingCurve25519KeyChain ) } catch (e: MXCryptoError) { - } } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/TimelineEventMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/TimelineEventMapper.kt index 5bd6f99b3a..8046ecbff0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/TimelineEventMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/TimelineEventMapper.kt @@ -49,7 +49,4 @@ internal class TimelineEventMapper @Inject constructor(private val readReceiptsS hasReadMarker = timelineEventEntity.readMarker?.eventId?.isNotEmpty() == true ) } - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/UserMapper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/UserMapper.kt index 2389427c90..bfbe40df03 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/UserMapper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/mapper/UserMapper.kt @@ -32,4 +32,4 @@ internal object UserMapper { internal fun UserEntity.asDomain(): User { return UserMapper.map(this) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ChunkEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ChunkEntity.kt index d8661984d7..577c391b3a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ChunkEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ChunkEntity.kt @@ -33,10 +33,10 @@ internal open class ChunkEntity(@Index var prevToken: String? = null, var forwardsStateIndex: Int? = null ) : RealmObject() { - fun identifier() = "${prevToken}_${nextToken}" + fun identifier() = "${prevToken}_$nextToken" @LinkingObjects("chunks") val room: RealmResults? = null companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/DraftEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/DraftEntity.kt index 9666ebd9a1..3b5aae8b13 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/DraftEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/DraftEntity.kt @@ -31,4 +31,3 @@ internal open class DraftEntity(var content: String = "", const val MODE_QUOTE = "QUOTE" } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EditAggregatedSummaryEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EditAggregatedSummaryEntity.kt index f2690c96de..3a179eb1f0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EditAggregatedSummaryEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EditAggregatedSummaryEntity.kt @@ -30,5 +30,4 @@ internal open class EditAggregatedSummaryEntity( ) : RealmObject() { companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventAnnotationsSummaryEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventAnnotationsSummaryEntity.kt index 4c6b26f0e5..523d94b770 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventAnnotationsSummaryEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventAnnotationsSummaryEntity.kt @@ -19,7 +19,6 @@ import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.PrimaryKey - internal open class EventAnnotationsSummaryEntity( @PrimaryKey var eventId: String = "", @@ -29,5 +28,4 @@ internal open class EventAnnotationsSummaryEntity( ) : RealmObject() { companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventEntity.kt index 4401d394bb..4def7aec5d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventEntity.kt @@ -59,7 +59,6 @@ internal open class EventEntity(@Index var eventId: String = "", sendStateStr = value.name } - companion object @LinkingObjects("untimelinedStateEvents") @@ -68,7 +67,6 @@ internal open class EventEntity(@Index var eventId: String = "", @LinkingObjects("root") val timelineEventEntity: RealmResults? = null - fun setDecryptionResult(result: MXEventDecryptionResult) { val decryptionResult = OlmDecryptionResult( payload = result.clearEvent, @@ -81,4 +79,4 @@ internal open class EventEntity(@Index var eventId: String = "", decryptionErrorCode = null timelineEventEntity?.firstOrNull()?.root = this } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/FilterEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/FilterEntity.kt index 13209cb96e..eabcdce34d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/FilterEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/FilterEntity.kt @@ -33,4 +33,4 @@ internal open class FilterEntity( ) : RealmObject() { companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupEntity.kt index 433f209501..eb346a74ca 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupEntity.kt @@ -38,5 +38,4 @@ internal open class GroupEntity(@PrimaryKey var groupId: String = "") } companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupSummaryEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupSummaryEntity.kt index 7ab67b6ab0..f3700b1dd7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupSummaryEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/GroupSummaryEntity.kt @@ -39,5 +39,4 @@ internal open class GroupSummaryEntity(@PrimaryKey var groupId: String = "", } companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/HomeServerCapabilitiesEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/HomeServerCapabilitiesEntity.kt index 2bed0305c7..0d067286e1 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/HomeServerCapabilitiesEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/HomeServerCapabilitiesEntity.kt @@ -25,5 +25,4 @@ internal open class HomeServerCapabilitiesEntity( ) : RealmObject() { companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushConditionEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushConditionEntity.kt index e6c3d406c8..7922db5c0a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushConditionEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushConditionEntity.kt @@ -25,5 +25,4 @@ internal open class PushConditionEntity( ) : RealmObject() { companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRuleEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRuleEntity.kt index dd6cc79022..4744c8d053 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRuleEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRuleEntity.kt @@ -19,21 +19,19 @@ import io.realm.RealmList import io.realm.RealmObject internal open class PushRuleEntity( - //Required. The actions to perform when this rule is matched. + // Required. The actions to perform when this rule is matched. var actionsStr: String? = null, - //Required. Whether this is a default rule, or has been set explicitly. + // Required. Whether this is a default rule, or has been set explicitly. var default: Boolean = false, - //Required. Whether the push rule is enabled or not. + // Required. Whether the push rule is enabled or not. var enabled: Boolean = true, - //Required. The ID of this rule. + // Required. The ID of this rule. var ruleId: String = "", - //The conditions that must hold true for an event in order for a rule to be applied to an event + // The conditions that must hold true for an event in order for a rule to be applied to an event var conditions: RealmList? = RealmList(), - //The glob-style pattern to match against. Only applicable to content rules. + // The glob-style pattern to match against. Only applicable to content rules. var pattern: String? = null ) : RealmObject() { companion object - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRulesEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRulesEntity.kt index e0acfa49ae..9527dafba4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRulesEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PushRulesEntity.kt @@ -19,7 +19,6 @@ import im.vector.matrix.android.api.pushrules.RuleKind import io.realm.RealmList import io.realm.RealmObject - internal open class PushRulesEntity( var scope: String = "", var pushRules: RealmList = RealmList() @@ -35,4 +34,4 @@ internal open class PushRulesEntity( } companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherDataEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherDataEntity.kt index 87694fb723..acc4f43bf9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherDataEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherDataEntity.kt @@ -22,4 +22,4 @@ internal open class PusherDataEntity( var format: String? = null ) : RealmObject() { companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherEntity.kt index 6ec9d4b0de..9c4dcce3cd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/PusherEntity.kt @@ -18,7 +18,7 @@ package im.vector.matrix.android.internal.database.model import im.vector.matrix.android.api.session.pushers.PusherState import io.realm.RealmObject -//TODO +// TODO // at java.lang.Thread.run(Thread.java:764) // Caused by: java.lang.IllegalArgumentException: 'value' is not a valid managed object. // at io.realm.ProxyState.checkValidObject(ProxyState.java:213) @@ -44,14 +44,13 @@ internal open class PusherEntity( try { return PusherState.valueOf(stateStr) } catch (e: Exception) { - //can this happen? + // can this happen? return PusherState.UNREGISTERED } - } set(value) { stateStr = value.name } companion object -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReactionAggregatedSummaryEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReactionAggregatedSummaryEntity.kt index 70938e5b89..58da4faf6b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReactionAggregatedSummaryEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReactionAggregatedSummaryEntity.kt @@ -38,5 +38,4 @@ internal open class ReactionAggregatedSummaryEntity( ) : RealmObject() { companion object - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadMarkerEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadMarkerEntity.kt index d67308b283..9e78c94f88 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadMarkerEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadMarkerEntity.kt @@ -31,5 +31,4 @@ internal open class ReadMarkerEntity( val timelineEvent: RealmResults? = null companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadReceiptsSummaryEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadReceiptsSummaryEntity.kt index 56e8938caa..b08ed0f728 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadReceiptsSummaryEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/ReadReceiptsSummaryEntity.kt @@ -33,5 +33,4 @@ internal open class ReadReceiptsSummaryEntity( val timelineEvent: RealmResults? = null companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomEntity.kt index a9f91390be..7de9451c32 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomEntity.kt @@ -39,4 +39,3 @@ internal open class RoomEntity(@PrimaryKey var roomId: String = "", companion object } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomSummaryEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomSummaryEntity.kt index b42e367024..f414325aed 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomSummaryEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomSummaryEntity.kt @@ -60,5 +60,4 @@ internal open class RoomSummaryEntity(@PrimaryKey var roomId: String = "", } companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomTagEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomTagEntity.kt index 12ca29b179..c78aa6ae84 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomTagEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/RoomTagEntity.kt @@ -24,5 +24,4 @@ internal open class RoomTagEntity( ) : RealmObject() { companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/SyncEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/SyncEntity.kt index a7d3db1a7b..2eb39be325 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/SyncEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/SyncEntity.kt @@ -21,4 +21,4 @@ import io.realm.annotations.PrimaryKey internal open class SyncEntity(var nextBatch: String? = null, @PrimaryKey var id: Long = 0 -) : RealmObject() \ No newline at end of file +) : RealmObject() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/TimelineEventEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/TimelineEventEntity.kt index e727ce40c7..fd3a427781 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/TimelineEventEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/TimelineEventEntity.kt @@ -21,7 +21,6 @@ import io.realm.RealmResults import io.realm.annotations.Index import io.realm.annotations.LinkingObjects - internal open class TimelineEventEntity(var localId: Long = 0, @Index var eventId: String = "", @Index var roomId: String = "", @@ -39,5 +38,4 @@ internal open class TimelineEventEntity(var localId: Long = 0, val chunk: RealmResults? = null companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserDraftsEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserDraftsEntity.kt index b713fe1c3f..432b3367ad 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserDraftsEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserDraftsEntity.kt @@ -32,5 +32,4 @@ internal open class UserDraftsEntity(var userDrafts: RealmList = Re val roomSummaryEntity: RealmResults? = null companion object - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserEntity.kt index b4bfd9f22b..baf7629fdc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/UserEntity.kt @@ -26,4 +26,3 @@ internal open class UserEntity(@PrimaryKey var userId: String = "", companion object } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ChunkEntityQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ChunkEntityQueries.kt index 2f7145629a..69402ac1de 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ChunkEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ChunkEntityQueries.kt @@ -62,4 +62,4 @@ internal fun ChunkEntity.Companion.create(realm: Realm, prevToken: String?, next this.prevToken = prevToken this.nextToken = nextToken } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventAnnotationsSummaryEntityQuery.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventAnnotationsSummaryEntityQuery.kt index 0f454b0af7..1e7a5758ad 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventAnnotationsSummaryEntityQuery.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventAnnotationsSummaryEntityQuery.kt @@ -37,14 +37,13 @@ internal fun EventAnnotationsSummaryEntity.Companion.whereInRoom(realm: Realm, r return query } - internal fun EventAnnotationsSummaryEntity.Companion.create(realm: Realm, roomId: String, eventId: String): EventAnnotationsSummaryEntity { val obj = realm.createObject(EventAnnotationsSummaryEntity::class.java, eventId).apply { this.roomId = roomId } - //Denormalization + // Denormalization TimelineEventEntity.where(realm, roomId = roomId, eventId = eventId).findFirst()?.let { it.annotations = obj } return obj -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventEntityQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventEntityQueries.kt index 6610edb884..62f53c3d7b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/EventEntityQueries.kt @@ -53,7 +53,6 @@ internal fun EventEntity.Companion.where(realm: Realm, } } - internal fun EventEntity.Companion.types(realm: Realm, typeList: List = emptyList()): RealmQuery { val query = realm.where() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/FilterContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/FilterContent.kt index 92608a1f42..be7075ddd0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/FilterContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/FilterContent.kt @@ -19,5 +19,4 @@ package im.vector.matrix.android.internal.database.query internal object FilterContent { internal const val EDIT_TYPE = """{*"m.relates_to"*"rel_type":*"m.replace"*}""" - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadQueries.kt index bd7e3a7a5e..9462f582ff 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadQueries.kt @@ -45,4 +45,4 @@ internal fun isEventRead(monarchy: Monarchy, } return isEventRead -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadReceiptEntityQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadReceiptEntityQueries.kt index 330d76fd15..e0a507f939 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadReceiptEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/ReadReceiptEntityQueries.kt @@ -20,7 +20,6 @@ import im.vector.matrix.android.internal.database.model.ReadReceiptEntity import im.vector.matrix.android.internal.database.model.ReadReceiptEntityFields import io.realm.Realm import io.realm.RealmQuery -import io.realm.RealmResults import io.realm.kotlin.where internal fun ReadReceiptEntity.Companion.where(realm: Realm, roomId: String, userId: String): RealmQuery { @@ -34,7 +33,6 @@ internal fun ReadReceiptEntity.Companion.whereUserId(realm: Realm, userId: Strin .equalTo(ReadReceiptEntityFields.USER_ID, userId) } - internal fun ReadReceiptEntity.Companion.createUnmanaged(roomId: String, eventId: String, userId: String, originServerTs: Double): ReadReceiptEntity { return ReadReceiptEntity().apply { this.primaryKey = "${roomId}_$userId" diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/RoomSummaryEntityQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/RoomSummaryEntityQueries.kt index bfa3f2c51c..a92d81b54c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/RoomSummaryEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/RoomSummaryEntityQueries.kt @@ -36,7 +36,6 @@ internal fun RoomSummaryEntity.Companion.getOrCreate(realm: Realm, roomId: Strin ?: realm.createObject(RoomSummaryEntity::class.java, roomId) } - internal fun RoomSummaryEntity.Companion.getDirectRooms(realm: Realm): RealmResults { return RoomSummaryEntity.where(realm) .equalTo(RoomSummaryEntityFields.IS_DIRECT, true) @@ -50,6 +49,3 @@ internal fun RoomSummaryEntity.Companion.isDirect(realm: Realm, roomId: String): .findAll() .isNotEmpty() } - - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/TimelineEventEntityQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/TimelineEventEntityQueries.kt index 8b9beca11e..d7e2f59742 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/TimelineEventEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/TimelineEventEntityQueries.kt @@ -58,13 +58,11 @@ internal fun TimelineEventEntity.Companion.findWithSenderMembershipEvent(realm: .findAll() } - internal fun TimelineEventEntity.Companion.latestEvent(realm: Realm, roomId: String, includesSending: Boolean, includedTypes: List = emptyList(), excludedTypes: List = emptyList()): TimelineEventEntity? { - val roomEntity = RoomEntity.where(realm, roomId).findFirst() ?: return null val eventList = if (includesSending && roomEntity.sendingTimelineEvents.isNotEmpty()) { roomEntity.sendingTimelineEvents @@ -108,7 +106,6 @@ internal fun RealmQuery.prev(since: Int? = null, strict: Bo .findFirst() } - internal fun RealmList.find(eventId: String): TimelineEventEntity? { return this.where() .equalTo(TimelineEventEntityFields.ROOT.EVENT_ID, eventId) @@ -119,10 +116,9 @@ internal fun TimelineEventEntity.Companion.findAllInRoomWithSendStates(realm: Re roomId: String, sendStates: List) : RealmResults { - val sendStatesStr = sendStates.map { it.name }.toTypedArray() return realm.where() .equalTo(TimelineEventEntityFields.ROOM_ID, roomId) .`in`(TimelineEventEntityFields.ROOT.SEND_STATE_STR, sendStatesStr) .findAll() -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/UserDraftsEntityQueries.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/UserDraftsEntityQueries.kt index ae368c5850..149efee492 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/UserDraftsEntityQueries.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/query/UserDraftsEntityQueries.kt @@ -30,4 +30,3 @@ internal fun UserDraftsEntity.Companion.where(realm: Realm, roomId: String? = nu } return query } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/AuthQualifiers.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/AuthQualifiers.kt index 55f0c28c18..8ee27b3375 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/AuthQualifiers.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/AuthQualifiers.kt @@ -24,4 +24,4 @@ annotation class Authenticated @Qualifier @Retention(AnnotationRetention.RUNTIME) -annotation class Unauthenticated \ No newline at end of file +annotation class Unauthenticated diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/DbQualifiers.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/DbQualifiers.kt index ac9a30a3ec..3fdeb7eacc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/DbQualifiers.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/DbQualifiers.kt @@ -28,4 +28,4 @@ annotation class SessionDatabase @Qualifier @Retention(AnnotationRetention.RUNTIME) -annotation class CryptoDatabase \ No newline at end of file +annotation class CryptoDatabase diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixComponent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixComponent.kt index 1627266c1c..f7314fe6b4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixComponent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixComponent.kt @@ -33,7 +33,6 @@ import im.vector.matrix.android.internal.util.MatrixCoroutineDispatchers import okhttp3.OkHttpClient import org.matrix.olm.OlmManager - @Component(modules = [MatrixModule::class, NetworkModule::class, AuthModule::class]) @MatrixScope internal interface MatrixComponent { @@ -69,5 +68,4 @@ internal interface MatrixComponent { interface Factory { fun create(@BindsInstance context: Context): MatrixComponent } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixModule.kt index 55b92ef89b..811950ac15 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixModule.kt @@ -55,5 +55,4 @@ internal object MatrixModule { fun providesOlmManager(): OlmManager { return OlmManager() } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixScope.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixScope.kt index a0886c11b9..54e1467695 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixScope.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MatrixScope.kt @@ -24,4 +24,4 @@ import javax.inject.Scope @Scope @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) -internal annotation class MatrixScope \ No newline at end of file +internal annotation class MatrixScope diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MoshiProvider.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MoshiProvider.kt index 81de47948c..d8db462f7c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MoshiProvider.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/MoshiProvider.kt @@ -25,7 +25,6 @@ import im.vector.matrix.android.internal.session.sync.model.UserAccountDataDirec import im.vector.matrix.android.internal.session.sync.model.UserAccountDataFallback import im.vector.matrix.android.internal.session.sync.model.UserAccountDataPushRules - object MoshiProvider { private val moshi: Moshi = Moshi.Builder() @@ -50,7 +49,4 @@ object MoshiProvider { fun providesMoshi(): Moshi { return moshi } - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/NetworkModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/NetworkModule.kt index 2061d03bed..4d6c66b7ed 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/NetworkModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/NetworkModule.kt @@ -92,4 +92,4 @@ internal object NetworkModule { fun providesMoshi(): Moshi { return MoshiProvider.providesMoshi() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/SessionAssistedInjectModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/SessionAssistedInjectModule.kt index 1e8686da92..52100a598a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/SessionAssistedInjectModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/SessionAssistedInjectModule.kt @@ -21,4 +21,4 @@ import dagger.Module @AssistedModule @Module(includes = [AssistedInject_SessionAssistedInjectModule::class]) -interface SessionAssistedInjectModule \ No newline at end of file +interface SessionAssistedInjectModule diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/FileQualifiers.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/UserCacheDirectory.kt similarity index 76% rename from matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/FileQualifiers.kt rename to matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/UserCacheDirectory.kt index ad4991d5ea..93df68ed07 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/FileQualifiers.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/di/UserCacheDirectory.kt @@ -14,6 +14,12 @@ * limitations under the License. */ +/* + * Unfortunatly "ktlint-disable filename" this does not work so this file is renamed to UserCacheDirectory.kt + * If a new qualifier is added, please rename this file ti FileQualifiers.kt... + */ +/* ktlint-disable filename */ + package im.vector.matrix.android.internal.di import javax.inject.Qualifier diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/RealmExtensions.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/RealmExtensions.kt index 4894538200..8e658aab5c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/RealmExtensions.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/RealmExtensions.kt @@ -22,4 +22,4 @@ internal fun RealmObject.assertIsManaged() { if (!isManaged) { throw IllegalStateException("${javaClass.simpleName} entity should be managed to use this function") } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/Try.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/Try.kt index 7852940487..6a23ca9094 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/Try.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/extensions/Try.kt @@ -38,4 +38,4 @@ fun Try.foldToCallback(callback: MatrixCallback): Unit = fold( inline fun Try.alsoDo(f: (A) -> Unit) = map { f(it) it -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/AccessTokenInterceptor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/AccessTokenInterceptor.kt index 70b16a4d61..2630560e45 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/AccessTokenInterceptor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/AccessTokenInterceptor.kt @@ -31,6 +31,4 @@ internal class AccessTokenInterceptor @Inject constructor(private val credential request = newRequestBuilder.build() return chain.proceed(request) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/HttpHeaders.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/HttpHeaders.kt index f4b93e8a31..11fafd5c5a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/HttpHeaders.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/HttpHeaders.kt @@ -20,5 +20,4 @@ object HttpHeaders { const val Authorization = "Authorization" const val UserAgent = "User-Agent" - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConnectivityChecker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConnectivityChecker.kt index be012dd308..bfc37d733d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConnectivityChecker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConnectivityChecker.kt @@ -101,14 +101,9 @@ internal class NetworkConnectivityChecker @Inject constructor(context: Context, interface Listener { fun onConnect() { - } fun onDisconnect() { - } } - - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConstants.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConstants.kt index 02ac778fcc..d0d8d134cb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConstants.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/NetworkConstants.kt @@ -22,9 +22,7 @@ internal object NetworkConstants { const val URI_API_PREFIX_PATH_R0 = "$URI_API_PREFIX_PATH/r0/" const val URI_API_PREFIX_PATH_UNSTABLE = "$URI_API_PREFIX_PATH/unstable/" - // Media private const val URI_API_MEDIA_PREFIX_PATH = "_matrix/media" const val URI_API_MEDIA_PREFIX_PATH_R0 = "$URI_API_MEDIA_PREFIX_PATH/r0/" - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ProgressRequestBody.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ProgressRequestBody.kt index dab6d2efeb..6e371f7a5c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ProgressRequestBody.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ProgressRequestBody.kt @@ -63,4 +63,4 @@ internal class ProgressRequestBody(private val delegate: RequestBody, interface Listener { fun onProgress(current: Long, total: Long) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/Request.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/Request.kt index a333a02c67..7f8e6643c3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/Request.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/Request.kt @@ -46,4 +46,4 @@ internal class Request { } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/RetrofitFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/RetrofitFactory.kt index 70143f7cbf..15e6f76381 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/RetrofitFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/RetrofitFactory.kt @@ -32,5 +32,4 @@ class RetrofitFactory @Inject constructor(private val moshi: Moshi) { .addConverterFactory(MoshiConverterFactory.create(moshi)) .build() } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/TimeOutInterceptor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/TimeOutInterceptor.kt index eea437cb0e..5adb4e89f1 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/TimeOutInterceptor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/TimeOutInterceptor.kt @@ -53,4 +53,4 @@ internal class TimeOutInterceptor @Inject constructor() : Interceptor { const val READ_TIMEOUT = "READ_TIMEOUT" const val WRITE_TIMEOUT = "WRITE_TIMEOUT" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UnitConverterFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UnitConverterFactory.kt index 74d9623a6f..945a064a74 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UnitConverterFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UnitConverterFactory.kt @@ -32,4 +32,4 @@ object UnitConverterFactory : Converter.Factory() { value.close() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentHolder.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentHolder.kt index 5c344a0b11..097ab50abc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentHolder.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentHolder.kt @@ -33,7 +33,6 @@ internal class UserAgentHolder @Inject constructor(private val context: Context) setApplicationFlavor("NoFlavor") } - /** * Create an user agent with the application version. * Ex: RiotX/1.0.0 (Linux; U; Android 6.0.1; SM-A510F Build/MMB29; Flavour GPlay; MatrixAndroidSDK_X 1.0) @@ -58,7 +57,7 @@ internal class UserAgentHolder @Inject constructor(private val context: Context) appName = appPackageName } } catch (e: Exception) { - Timber.e(e, "## initUserAgent() : failed " + e.message) + Timber.e(e, "## initUserAgent() : failed") } var systemUserAgent = System.getProperty("http.agent") @@ -83,4 +82,4 @@ internal class UserAgentHolder @Inject constructor(private val context: Context) "; MatrixAndroidSDK_X " + BuildConfig.VERSION_NAME + ")" } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentInterceptor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentInterceptor.kt index 44e3ddd10e..f4e51e6173 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentInterceptor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/UserAgentInterceptor.kt @@ -34,5 +34,4 @@ internal class UserAgentInterceptor @Inject constructor(private val userAgentHol request = newRequestBuilder.build() return chain.proceed(request) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/parsing/UriMoshiAdapter.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/parsing/UriMoshiAdapter.kt index 77b9a92106..9223c12259 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/parsing/UriMoshiAdapter.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/parsing/UriMoshiAdapter.kt @@ -31,5 +31,4 @@ internal class UriMoshiAdapter { fun fromJson(uriString: String): Uri { return Uri.parse(uriString) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/CertUtil.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/CertUtil.kt index 976cbde17d..501fed0bd4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/CertUtil.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/CertUtil.kt @@ -104,11 +104,11 @@ internal object CertUtil { * Recursively checks the exception to see if it was caused by an * UnrecognizedCertificateException * - * @param e the throwable. + * @param root the throwable. * @return The UnrecognizedCertificateException if exists, else null. */ - fun getCertificateException(e: Throwable?): UnrecognizedCertificateException? { - var e = e + fun getCertificateException(root: Throwable?): UnrecognizedCertificateException? { + var e = root var i = 0 // Just in case there is a getCause loop while (e != null && i < 10) { if (e is UnrecognizedCertificateException) { @@ -140,7 +140,7 @@ internal object CertUtil { try { tf = TrustManagerFactory.getInstance("PKIX") } catch (e: Exception) { - Timber.e(e, "## newPinnedSSLSocketFactory() : TrustManagerFactory.getInstance failed " + e.message) + Timber.e(e, "## newPinnedSSLSocketFactory() : TrustManagerFactory.getInstance failed") } // it doesn't exist, use the default one. @@ -148,9 +148,8 @@ internal object CertUtil { try { tf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()) } catch (e: Exception) { - Timber.e(e, "## addRule : onBingRuleUpdateFailure failed " + e.message) + Timber.e(e, "## addRule : onBingRuleUpdateFailure failed") } - } tf!!.init(null as KeyStore?) @@ -181,7 +180,6 @@ internal object CertUtil { } catch (e: Exception) { throw RuntimeException(e) } - } /** @@ -202,7 +200,7 @@ internal object CertUtil { try { for (cert in session.peerCertificates) { for (allowedFingerprint in trustedFingerprints) { - if (allowedFingerprint != null && cert is X509Certificate && allowedFingerprint.matchesCert(cert)) { + if (cert is X509Certificate && allowedFingerprint.matchesCert(cert)) { return@HostnameVerifier true } } @@ -235,6 +233,7 @@ internal object CertUtil { builder.cipherSuites(*tlsCipherSuites.toTypedArray()) } + @Suppress("DEPRECATION") builder.supportsTlsExtensions(hsConfig.shouldAcceptTlsExtensions) val list = ArrayList() list.add(builder.build()) @@ -243,4 +242,4 @@ internal object CertUtil { } return list } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/Fingerprint.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/Fingerprint.kt index 6a0a8189ad..99c2eb9c72 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/Fingerprint.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/Fingerprint.kt @@ -80,5 +80,4 @@ data class Fingerprint( @Json(name = "sha-1") SHA1, @Json(name = "sha-256")SHA256 } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/PinnedTrustManager.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/PinnedTrustManager.kt index 2438114aa2..f3f9ecc562 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/PinnedTrustManager.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/PinnedTrustManager.kt @@ -31,54 +31,50 @@ import javax.net.ssl.X509TrustManager * @param defaultTrustManager Optional trust manager to fall back on if cert does not match * any of the fingerprints. Can be null. */ -internal class PinnedTrustManager(private val mFingerprints: List?, - private val mDefaultTrustManager: X509TrustManager?) : X509TrustManager { +internal class PinnedTrustManager(private val fingerprints: List?, + private val defaultTrustManager: X509TrustManager?) : X509TrustManager { @Throws(CertificateException::class) override fun checkClientTrusted(chain: Array, s: String) { try { - if (mDefaultTrustManager != null) { - mDefaultTrustManager.checkClientTrusted( - chain, s - ) + if (defaultTrustManager != null) { + defaultTrustManager.checkClientTrusted(chain, s) return } } catch (e: CertificateException) { // If there is an exception we fall back to checking fingerprints - if (mFingerprints == null || mFingerprints.isEmpty()) { + if (fingerprints == null || fingerprints.isEmpty()) { throw UnrecognizedCertificateException(chain[0], Fingerprint.newSha256Fingerprint(chain[0]), e.cause) } } - checkTrusted("client", chain) + checkTrusted(chain) } @Throws(CertificateException::class) override fun checkServerTrusted(chain: Array, s: String) { try { - if (mDefaultTrustManager != null) { - mDefaultTrustManager.checkServerTrusted( - chain, s - ) + if (defaultTrustManager != null) { + defaultTrustManager.checkServerTrusted(chain, s) return } } catch (e: CertificateException) { // If there is an exception we fall back to checking fingerprints - if (mFingerprints == null || mFingerprints.isEmpty()) { + if (fingerprints == null || fingerprints.isEmpty()) { throw UnrecognizedCertificateException(chain[0], Fingerprint.newSha256Fingerprint(chain[0]), e.cause) } } - checkTrusted("server", chain) + checkTrusted(chain) } @Throws(CertificateException::class) - private fun checkTrusted(type: String, chain: Array) { + private fun checkTrusted(chain: Array) { val cert = chain[0] var found = false - if (mFingerprints != null) { - for (allowedFingerprint in mFingerprints) { + if (fingerprints != null) { + for (allowedFingerprint in fingerprints) { if (allowedFingerprint.matchesCert(cert)) { found = true break diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/TLSSocketFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/TLSSocketFactory.kt index 167c712870..9b6d16a4d7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/TLSSocketFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/network/ssl/TLSSocketFactory.kt @@ -37,7 +37,6 @@ import javax.net.ssl.TrustManager internal class TLSSocketFactory - /** * Constructor * diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultInitialSyncProgressService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultInitialSyncProgressService.kt index 6eb1ec35c1..c8bd5154a2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultInitialSyncProgressService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultInitialSyncProgressService.kt @@ -22,7 +22,6 @@ import im.vector.matrix.android.api.session.InitialSyncProgressService import timber.log.Timber import javax.inject.Inject - @SessionScope class DefaultInitialSyncProgressService @Inject constructor() : InitialSyncProgressService { @@ -58,7 +57,7 @@ class DefaultInitialSyncProgressService @Inject constructor() : InitialSyncProgr fun endTask(nameRes: Int) { val endedTask = rootTask?.leaf() if (endedTask?.nameRes == nameRes) { - //close it + // close it val parent = endedTask.parent parent?.child = null parent?.setProgress(endedTask.offset + (endedTask.totalProgress * endedTask.parentWeight).toInt()) @@ -73,7 +72,6 @@ class DefaultInitialSyncProgressService @Inject constructor() : InitialSyncProgr status.postValue(null) } - private inner class TaskInfo(@StringRes var nameRes: Int, var totalProgress: Int, var parent: TaskInfo? = null, @@ -123,7 +121,6 @@ inline fun reportSubtask(reporter: DefaultInitialSyncProgressService?, } } - inline fun Map.mapWithProgress(reporter: DefaultInitialSyncProgressService?, taskId: Int, weight: Float, @@ -139,4 +136,3 @@ inline fun Map.mapWithProgress(reporter: DefaultInitialSyncP reporter?.endTask(taskId) } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultSession.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultSession.kt index 319cce491b..4b33e28000 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultSession.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/DefaultSession.kt @@ -23,6 +23,7 @@ import androidx.lifecycle.LiveData import dagger.Lazy import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.auth.data.SessionParams +import im.vector.matrix.android.api.failure.ConsentNotGivenError import im.vector.matrix.android.api.pushrules.PushRuleService import im.vector.matrix.android.api.session.InitialSyncProgressService import im.vector.matrix.android.api.session.Session @@ -45,6 +46,9 @@ import im.vector.matrix.android.internal.crypto.DefaultCryptoService import im.vector.matrix.android.internal.database.LiveEntityObserver import im.vector.matrix.android.internal.session.sync.job.SyncThread import im.vector.matrix.android.internal.session.sync.job.SyncWorker +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode import timber.log.Timber import javax.inject.Inject import javax.inject.Provider @@ -96,6 +100,7 @@ internal class DefaultSession @Inject constructor(override val sessionParams: Se assert(!isOpen) isOpen = true liveEntityObservers.forEach { it.start() } + EventBus.getDefault().register(this) } override fun requireBackgroundSync() { @@ -135,6 +140,7 @@ internal class DefaultSession @Inject constructor(override val sessionParams: Se liveEntityObservers.forEach { it.dispose() } cryptoService.get().close() isOpen = false + EventBus.getDefault().unregister(this) } override fun syncState(): LiveData { @@ -163,6 +169,11 @@ internal class DefaultSession @Inject constructor(override val sessionParams: Se }) } + @Subscribe(threadMode = ThreadMode.MAIN) + fun onConsentNotGivenError(consentNotGivenError: ConsentNotGivenError) { + sessionListeners.dispatchConsentNotGiven(consentNotGivenError) + } + override fun contentUrlResolver() = contentUrlResolver override fun contentUploadProgressTracker() = contentUploadProgressTracker @@ -182,5 +193,4 @@ internal class DefaultSession @Inject constructor(override val sessionParams: Se throw IllegalStateException("This method can only be called on the main thread!") } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionComponent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionComponent.kt index b2ed02ff3e..8c16050442 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionComponent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionComponent.kt @@ -101,8 +101,4 @@ internal interface SessionComponent { matrixComponent: MatrixComponent, @BindsInstance sessionParams: SessionParams): SessionComponent } - - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionListeners.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionListeners.kt index 51b7354785..25678bef66 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionListeners.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionListeners.kt @@ -16,19 +16,31 @@ package im.vector.matrix.android.internal.session +import im.vector.matrix.android.api.failure.ConsentNotGivenError import im.vector.matrix.android.api.session.Session import javax.inject.Inject -internal class SessionListeners @Inject constructor(){ +internal class SessionListeners @Inject constructor() { private val listeners = ArrayList() fun addListener(listener: Session.Listener) { - listeners.add(listener) + synchronized(listeners) { + listeners.add(listener) + } } fun removeListener(listener: Session.Listener) { - listeners.remove(listener) + synchronized(listeners) { + listeners.remove(listener) + } } -} \ No newline at end of file + fun dispatchConsentNotGiven(consentNotGivenError: ConsentNotGivenError) { + synchronized(listeners) { + listeners.forEach { + it.onConsentNotGivenError(consentNotGivenError) + } + } + } +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionModule.kt index 4637b1428c..d038630a74 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionModule.kt @@ -62,7 +62,6 @@ internal abstract class SessionModule { return sessionParams.homeServerConnectionConfig } - @JvmStatic @Provides fun providesCredentials(sessionParams: SessionParams): Credentials { @@ -172,5 +171,4 @@ internal abstract class SessionModule { @Binds abstract fun bindHomeServerCapabilitiesService(homeServerCapabilitiesService: DefaultHomeServerCapabilitiesService): HomeServerCapabilitiesService - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionScope.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionScope.kt index 964165e00d..ab0c3f5770 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionScope.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/SessionScope.kt @@ -21,4 +21,4 @@ import javax.inject.Scope @Scope @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) -internal annotation class SessionScope \ No newline at end of file +internal annotation class SessionScope diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/CacheModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/CacheModule.kt index 96f6fbd8e0..a418109cec 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/CacheModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/CacheModule.kt @@ -38,5 +38,4 @@ internal abstract class CacheModule { @Binds abstract fun bindCacheService(cacheService: DefaultCacheService): CacheService - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/ClearCacheTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/ClearCacheTask.kt index 5af4ee74fb..cd802d40dc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/ClearCacheTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/ClearCacheTask.kt @@ -30,4 +30,4 @@ internal class RealmClearCacheTask @Inject constructor(private val realmConfigur it.deleteAll() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/DefaultCacheService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/DefaultCacheService.kt index 12684965b7..63db2b4b86 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/DefaultCacheService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/cache/DefaultCacheService.kt @@ -35,4 +35,4 @@ internal class DefaultCacheService @Inject constructor(@SessionDatabase } .executeBy(taskExecutor) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ContentUploadResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ContentUploadResponse.kt index e1f456fe5f..242502a5bc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ContentUploadResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ContentUploadResponse.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class ContentUploadResponse( @Json(name = "content_uri") val contentUri: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUploadStateTracker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUploadStateTracker.kt index e44c8eb5ee..5fcad0e30f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUploadStateTracker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUploadStateTracker.kt @@ -80,5 +80,4 @@ internal class DefaultContentUploadStateTracker @Inject constructor() : ContentU } } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUrlResolver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUrlResolver.kt index 55508b11b3..f288f949cd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUrlResolver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/DefaultContentUrlResolver.kt @@ -20,7 +20,6 @@ import im.vector.matrix.android.api.auth.data.HomeServerConnectionConfig import im.vector.matrix.android.api.session.content.ContentUrlResolver import javax.inject.Inject - private const val MATRIX_CONTENT_URI_SCHEME = "mxc://" private const val URI_PREFIX_CONTENT_API = "_matrix/media/v1/" @@ -59,7 +58,6 @@ internal class DefaultContentUrlResolver @Inject constructor(private val homeSer contentUrl: String, prefix: String, params: String? = null): String? { - var serverAndMediaId = contentUrl.removePrefix(MATRIX_CONTENT_URI_SCHEME) val fragmentOffset = serverAndMediaId.indexOf("#") var fragment = "" @@ -76,5 +74,4 @@ internal class DefaultContentUrlResolver @Inject constructor(private val homeSer private fun String.isValidMatrixContentUrl(): Boolean { return startsWith(MATRIX_CONTENT_URI_SCHEME) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/FileUploader.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/FileUploader.kt index 8c554977e3..209f03ad9d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/FileUploader.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/FileUploader.kt @@ -22,41 +22,41 @@ import im.vector.matrix.android.internal.di.Authenticated import im.vector.matrix.android.internal.network.ProgressRequestBody import im.vector.matrix.android.internal.network.awaitResponse import im.vector.matrix.android.internal.network.toFailure -import okhttp3.* import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.MediaType.Companion.toMediaTypeOrNull +import okhttp3.OkHttpClient +import okhttp3.Request +import okhttp3.RequestBody +import okhttp3.RequestBody.Companion.asRequestBody +import okhttp3.RequestBody.Companion.toRequestBody import java.io.File import java.io.IOException import javax.inject.Inject - internal class FileUploader @Inject constructor(@Authenticated private val okHttpClient: OkHttpClient, - private val sessionParams: SessionParams, - private val moshi: Moshi) { + sessionParams: SessionParams, + moshi: Moshi) { private val uploadUrl = DefaultContentUrlResolver.getUploadUrl(sessionParams.homeServerConnectionConfig) private val responseAdapter = moshi.adapter(ContentUploadResponse::class.java) - suspend fun uploadFile(file: File, filename: String?, mimeType: String, progressListener: ProgressRequestBody.Listener? = null): ContentUploadResponse { - val uploadBody = RequestBody.create(mimeType.toMediaTypeOrNull(), file) + val uploadBody = file.asRequestBody(mimeType.toMediaTypeOrNull()) return upload(uploadBody, filename, progressListener) - } suspend fun uploadByteArray(byteArray: ByteArray, filename: String?, mimeType: String, progressListener: ProgressRequestBody.Listener? = null): ContentUploadResponse { - val uploadBody = RequestBody.create(mimeType.toMediaTypeOrNull(), byteArray) + val uploadBody = byteArray.toRequestBody(mimeType.toMediaTypeOrNull()) return upload(uploadBody, filename, progressListener) } - private suspend fun upload(uploadBody: RequestBody, filename: String?, progressListener: ProgressRequestBody.Listener?): ContentUploadResponse { val urlBuilder = uploadUrl.toHttpUrlOrNull()?.newBuilder() ?: throw RuntimeException() @@ -82,4 +82,4 @@ internal class FileUploader @Inject constructor(@Authenticated } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ThumbnailExtractor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ThumbnailExtractor.kt index 8fc6f5f983..f8935e9283 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ThumbnailExtractor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/ThumbnailExtractor.kt @@ -63,6 +63,4 @@ internal object ThumbnailExtractor { outputStream.reset() return thumbnailData } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/UploadContentWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/UploadContentWorker.kt index 2d9509b43d..a05edb7b0f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/UploadContentWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/content/UploadContentWorker.kt @@ -38,7 +38,6 @@ import java.io.File import java.io.FileInputStream import javax.inject.Inject - internal class UploadContentWorker(context: Context, params: WorkerParameters) : CoroutineWorker(context, params) { @JsonClass(generateAdapter = true) @@ -212,7 +211,6 @@ internal class UploadContentWorker(context: Context, params: WorkerParameters) : ) } - private fun MessageFileContent.update(url: String, encryptedFileInfo: EncryptedFileInfo?): MessageFileContent { return copy( @@ -228,6 +226,4 @@ internal class UploadContentWorker(context: Context, params: WorkerParameters) : encryptedFileInfo = encryptedFileInfo?.copy(url = url) ) } - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterRepository.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterRepository.kt index c46da8b318..02e6db189a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterRepository.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterRepository.kt @@ -108,4 +108,4 @@ internal class DefaultFilterRepository @Inject constructor( return result } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterService.kt index 445e416b45..84e820ebca 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultFilterService.kt @@ -53,4 +53,4 @@ internal class DefaultFilterService @Inject constructor(private val filterReposi .executeBy(taskExecutor) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultSaveFilterTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultSaveFilterTask.kt index 8df7426263..b98049675e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultSaveFilterTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/DefaultSaveFilterTask.kt @@ -21,7 +21,6 @@ import im.vector.matrix.android.internal.network.executeRequest import im.vector.matrix.android.internal.task.Task import javax.inject.Inject - /** * Save a filter to the server */ @@ -30,7 +29,6 @@ internal interface SaveFilterTask : Task { data class Params( val filter: FilterBody ) - } internal class DefaultSaveFilterTask @Inject constructor(@UserId private val userId: String, @@ -45,5 +43,4 @@ internal class DefaultSaveFilterTask @Inject constructor(@UserId private val use } filterRepository.storeFilterId(params.filter, filterResponse.filterId) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterBody.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterBody.kt index 8abf6f3fb8..fa66470c9b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterBody.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterBody.kt @@ -19,7 +19,6 @@ import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import im.vector.matrix.android.internal.di.MoshiProvider - /** * Class which can be parsed to a filter json string. Used for POST and GET * Have a look here for further information: diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterFactory.kt index d5c93ac350..86c94d3dfa 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterFactory.kt @@ -73,4 +73,4 @@ internal object FilterFactory { // TODO Complete the list EventType.STATE_ROOM_MEMBER ) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterModule.kt index 0fc125a172..7b787048c5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterModule.kt @@ -44,6 +44,4 @@ internal abstract class FilterModule { @Binds abstract fun bindSaveFilterTask(saveFilterTask: DefaultSaveFilterTask): SaveFilterTask - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterRepository.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterRepository.kt index f48153e9be..092d9ff766 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterRepository.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterRepository.kt @@ -37,4 +37,4 @@ internal interface FilterRepository { * Return the room filter */ fun getRoomFilter(): String -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterUtil.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterUtil.kt index 526191cf2f..d3020b3fa6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterUtil.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/FilterUtil.kt @@ -55,7 +55,6 @@ internal object FilterUtil { } } } else { - filterBody.room?.let { room -> room.ephemeral?.types?.remove("m.receipt") if (room.ephemeral?.types?.isEmpty() == true) { diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomEventFilter.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomEventFilter.kt index 1d8720a9af..ee81e399ee 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomEventFilter.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomEventFilter.kt @@ -51,6 +51,4 @@ data class RoomEventFilter( || containsUrl != null || lazyLoadMembers != null) } - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomFilter.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomFilter.kt index 4c8fc1662c..4742bdb988 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomFilter.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/filter/RoomFilter.kt @@ -42,5 +42,4 @@ data class RoomFilter( || timeline != null || accountData != null) } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGetGroupDataTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGetGroupDataTask.kt index 003f6a8c61..3479d6dcdc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGetGroupDataTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGetGroupDataTask.kt @@ -30,7 +30,6 @@ import javax.inject.Inject internal interface GetGroupDataTask : Task { data class Params(val groupId: String) - } internal class DefaultGetGroupDataTask @Inject constructor( @@ -52,7 +51,6 @@ internal class DefaultGetGroupDataTask @Inject constructor( insertInDb(groupSummary, groupRooms, groupUsers, groupId) } - private fun insertInDb(groupSummary: GroupSummaryResponse, groupRooms: GroupRooms, groupUsers: GroupUsers, @@ -82,4 +80,4 @@ internal class DefaultGetGroupDataTask @Inject constructor( } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroup.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroup.kt index f7e2a23c2d..6c7b5b2a8b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroup.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroup.kt @@ -18,6 +18,4 @@ package im.vector.matrix.android.internal.session.group import im.vector.matrix.android.api.session.group.Group -internal class DefaultGroup(override val groupId: String) : Group { - -} \ No newline at end of file +internal class DefaultGroup(override val groupId: String) : Group diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroupService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroupService.kt index a574df7c8f..be059038f3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroupService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/DefaultGroupService.kt @@ -39,5 +39,4 @@ internal class DefaultGroupService @Inject constructor(private val monarchy: Mon { it.asDomain() } ) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GetGroupDataWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GetGroupDataWorker.kt index 913a468bd7..76a7d5a48d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GetGroupDataWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GetGroupDataWorker.kt @@ -52,5 +52,4 @@ internal class GetGroupDataWorker(context: Context, params: WorkerParameters) : private suspend fun fetchGroupData(groupId: String) { getGroupDataTask.execute(GetGroupDataTask.Params(groupId)) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupAPI.kt index a0f902bf2e..8d5dd03fb2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupAPI.kt @@ -42,7 +42,6 @@ internal interface GroupAPI { @GET(NetworkConstants.URI_API_PREFIX_PATH_R0 + "groups/{groupId}/rooms") fun getRooms(@Path("groupId") groupId: String): Call - /** * Request the users list. * @@ -50,6 +49,4 @@ internal interface GroupAPI { */ @GET(NetworkConstants.URI_API_PREFIX_PATH_R0 + "groups/{groupId}/users") fun getUsers(@Path("groupId") groupId: String): Call - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupModule.kt index cdb698b003..3b88dc5b6b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupModule.kt @@ -41,4 +41,4 @@ internal abstract class GroupModule { @Binds abstract fun bindGroupService(groupService: DefaultGroupService): GroupService -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupSummaryUpdater.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupSummaryUpdater.kt index 12a256e7dc..9eceb44417 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupSummaryUpdater.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/GroupSummaryUpdater.kt @@ -85,4 +85,4 @@ internal class GroupSummaryUpdater @Inject constructor(private val context: Cont .deleteAllFromRealm() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryRoomsSection.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryRoomsSection.kt index 2b1a8f226e..75d35f07ce 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryRoomsSection.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryRoomsSection.kt @@ -30,5 +30,5 @@ internal data class GroupSummaryRoomsSection( @Json(name = "rooms") val rooms: List = emptyList() // @TODO: Check the meaning and the usage of these categories. This dictionary is empty FTM. - //public Map categories; + // public Map categories; ) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryUsersSection.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryUsersSection.kt index 53bb1ab9c3..52bced1c39 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryUsersSection.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupSummaryUsersSection.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.internal.session.group.model import com.squareup.moshi.Json import com.squareup.moshi.JsonClass - /** * This class represents the community members in a group summary response. */ @@ -32,5 +31,5 @@ internal data class GroupSummaryUsersSection( @Json(name = "users") val users: List = emptyList() // @TODO: Check the meaning and the usage of these roles. This dictionary is empty FTM. - //public Map roles; + // public Map roles; ) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUser.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUser.kt index 62be8f5e7e..f2e504dd47 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUser.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUser.kt @@ -26,4 +26,4 @@ internal data class GroupUser( @Json(name = "is_privileged") val isPrivileged: Boolean = false, @Json(name = "avatar_url") val avatarUrl: String? = "", @Json(name = "is_public") val isPublic: Boolean = false -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUsers.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUsers.kt index b04ebc7ca7..b98d467c55 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUsers.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/group/model/GroupUsers.kt @@ -23,4 +23,4 @@ import com.squareup.moshi.JsonClass internal data class GroupUsers( @Json(name = "total_user_count_estimate") val totalUserCountEstimate: Int, @Json(name = "chunk") val users: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/CapabilitiesAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/CapabilitiesAPI.kt index 69972a1f57..f2015229fd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/CapabilitiesAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/CapabilitiesAPI.kt @@ -27,5 +27,4 @@ internal interface CapabilitiesAPI { */ @GET(NetworkConstants.URI_API_MEDIA_PREFIX_PATH_R0 + "config") fun getUploadCapabilities(): Call - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/DefaultGetHomeServerCapabilitiesTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/DefaultGetHomeServerCapabilitiesTask.kt index f88178cebd..98ab0b5389 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/DefaultGetHomeServerCapabilitiesTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/DefaultGetHomeServerCapabilitiesTask.kt @@ -33,7 +33,6 @@ internal class DefaultGetHomeServerCapabilitiesTask @Inject constructor( private val monarchy: Monarchy ) : GetHomeServerCapabilitiesTask { - override suspend fun execute(params: Unit) { var doRequest = false monarchy.awaitTransaction { realm -> @@ -55,7 +54,6 @@ internal class DefaultGetHomeServerCapabilitiesTask @Inject constructor( insertInDb(uploadCapabilities) } - private suspend fun insertInDb(getUploadCapabilitiesResult: GetUploadCapabilitiesResult) { monarchy.awaitTransaction { realm -> val homeServerCapabilitiesEntity = HomeServerCapabilitiesEntity.getOrCreate(realm) @@ -71,4 +69,4 @@ internal class DefaultGetHomeServerCapabilitiesTask @Inject constructor( // 8 hours like on Riot Web private const val MIN_DELAY_BETWEEN_TWO_REQUEST_MILLIS = 8 * 60 * 60 * 1000 } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/HomeServerCapabilitiesModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/HomeServerCapabilitiesModule.kt index 71b3ee63b8..9082fceb9e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/HomeServerCapabilitiesModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/homeserver/HomeServerCapabilitiesModule.kt @@ -37,5 +37,4 @@ internal abstract class HomeServerCapabilitiesModule { @Binds abstract fun bindGetHomeServerCapabilitiesTask(getHomeServerCapabilitiesTask: DefaultGetHomeServerCapabilitiesTask): GetHomeServerCapabilitiesTask - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/DefaultPushRuleService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/DefaultPushRuleService.kt index fb436c3b21..82b928fc54 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/DefaultPushRuleService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/DefaultPushRuleService.kt @@ -42,7 +42,7 @@ internal class DefaultPushRuleService @Inject constructor(private val getPushRul private val monarchy: Monarchy ) : PushRuleService { - private var listeners = ArrayList() + private var listeners = mutableSetOf() override fun fetchPushRules(scope: String) { getPushRulesTask @@ -90,22 +90,24 @@ internal class DefaultPushRuleService @Inject constructor(private val getPushRul } override fun updatePushRuleEnableStatus(kind: RuleKind, pushRule: PushRule, enabled: Boolean, callback: MatrixCallback): Cancelable { + // The rules will be updated, and will come back from the next sync response return updatePushRuleEnableStatusTask .configureWith(UpdatePushRuleEnableStatusTask.Params(kind, pushRule, enabled)) { this.callback = callback } - // TODO Fetch the rules .executeBy(taskExecutor) } override fun removePushRuleListener(listener: PushRuleService.PushRuleListener) { - listeners.remove(listener) + synchronized(listeners) { + listeners.remove(listener) + } } - override fun addPushRuleListener(listener: PushRuleService.PushRuleListener) { - if (!listeners.contains(listener)) + synchronized(listeners) { listeners.add(listener) + } } // fun processEvents(events: List) { @@ -121,43 +123,63 @@ internal class DefaultPushRuleService @Inject constructor(private val getPushRul // } fun dispatchBing(event: Event, rule: PushRule) { - try { + synchronized(listeners) { val actionsList = rule.getActions() listeners.forEach { - it.onMatchRule(event, actionsList) + try { + it.onMatchRule(event, actionsList) + } catch (e: Throwable) { + Timber.e(e, "Error while dispatching bing") + } } - } catch (e: Throwable) { - Timber.e(e, "Error while dispatching bing") } } - fun dispatchRoomLeft(roomid: String) { - try { + fun dispatchRoomJoined(roomId: String) { + synchronized(listeners) { listeners.forEach { - it.onRoomLeft(roomid) + try { + it.onRoomJoined(roomId) + } catch (e: Throwable) { + Timber.e(e, "Error while dispatching room joined") + } + } + } + } + + fun dispatchRoomLeft(roomId: String) { + synchronized(listeners) { + listeners.forEach { + try { + it.onRoomLeft(roomId) + } catch (e: Throwable) { + Timber.e(e, "Error while dispatching room left") + } } - } catch (e: Throwable) { - Timber.e(e, "Error while dispatching room left") } } fun dispatchRedactedEventId(redactedEventId: String) { - try { + synchronized(listeners) { listeners.forEach { - it.onEventRedacted(redactedEventId) + try { + it.onEventRedacted(redactedEventId) + } catch (e: Throwable) { + Timber.e(e, "Error while dispatching redacted event") + } } - } catch (e: Throwable) { - Timber.e(e, "Error while dispatching room left") } } fun dispatchFinish() { - try { + synchronized(listeners) { listeners.forEach { - it.batchFinish() + try { + it.batchFinish() + } catch (e: Throwable) { + Timber.e(e, "Error while dispatching finish") + } } - } catch (e: Throwable) { - Timber.e(e, "Error while dispatching finish") } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/ProcessEventForPushTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/ProcessEventForPushTask.kt index e2db0362bb..a48990d48f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/ProcessEventForPushTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/notification/ProcessEventForPushTask.kt @@ -45,6 +45,10 @@ internal class DefaultProcessEventForPushTask @Inject constructor( params.syncResponse.leave.keys.forEach { defaultPushRuleService.dispatchRoomLeft(it) } + // Handle joined rooms + params.syncResponse.join.keys.forEach { + defaultPushRuleService.dispatchRoomJoined(it) + } val newJoinEvents = params.syncResponse.join .map { entries -> entries.value.timeline?.events?.map { it.copy(roomId = entries.key) } @@ -107,7 +111,7 @@ internal class DefaultProcessEventForPushTask @Inject constructor( val isFullfilled = rule.conditions?.map { it.asExecutableCondition()?.isSatisfied(conditionResolver) ?: false }?.fold(true/*A rule with no conditions always matches*/, { acc, next -> - //All conditions must hold true for an event in order to apply the action for the event. + // All conditions must hold true for an event in order to apply the action for the event. acc && next }) ?: false @@ -117,5 +121,4 @@ internal class DefaultProcessEventForPushTask @Inject constructor( } return null } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/AddHttpPusherWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/AddHttpPusherWorker.kt index e230c02e49..9eed515d14 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/AddHttpPusherWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/AddHttpPusherWorker.kt @@ -44,7 +44,6 @@ internal class AddHttpPusherWorker(context: Context, params: WorkerParameters) @Inject lateinit var monarchy: Monarchy override suspend fun doWork(): Result { - val params = WorkerParamsFactory.fromData(inputData) ?: return Result.failure() @@ -65,11 +64,11 @@ internal class AddHttpPusherWorker(context: Context, params: WorkerParameters) else -> { monarchy.awaitTransaction { realm -> PusherEntity.where(realm, pusher.pushKey).findFirst()?.let { - //update it + // update it it.state = PusherState.FAILED_TO_REGISTER } } - //always return success, or the chain will be stuck for ever! + // always return success, or the chain will be stuck for ever! Result.failure() } } @@ -83,7 +82,7 @@ internal class AddHttpPusherWorker(context: Context, params: WorkerParameters) monarchy.awaitTransaction { realm -> val echo = PusherEntity.where(realm, pusher.pushKey).findFirst() if (echo != null) { - //update it + // update it echo.appDisplayName = pusher.appDisplayName echo.appId = pusher.appId echo.kind = pusher.kind @@ -100,4 +99,4 @@ internal class AddHttpPusherWorker(context: Context, params: WorkerParameters) } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultConditionResolver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultConditionResolver.kt index a40c5e801b..881d122606 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultConditionResolver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultConditionResolver.kt @@ -26,7 +26,6 @@ internal class DefaultConditionResolver(private val event: Event, private val roomService: RoomService, @UserId private val userId: String) : ConditionResolver { - override fun resolveEventMatchCondition(eventMatchCondition: EventMatchCondition): Boolean { return eventMatchCondition.isSatisfied(event) } @@ -38,9 +37,9 @@ internal class DefaultConditionResolver(private val event: Event, override fun resolveSenderNotificationPermissionCondition(senderNotificationPermissionCondition: SenderNotificationPermissionCondition): Boolean { // val roomId = event.roomId ?: return false // val room = roomService.getRoom(roomId) ?: return false - //TODO RoomState not yet managed + // TODO RoomState not yet managed Timber.e("POWER LEVELS STATE NOT YET MANAGED BY RIOTX") - return false //senderNotificationPermissionCondition.isSatisfied(event, ) + return false // senderNotificationPermissionCondition.isSatisfied(event, ) } override fun resolveContainsDisplayNameCondition(containsDisplayNameCondition: ContainsDisplayNameCondition): Boolean { @@ -49,4 +48,4 @@ internal class DefaultConditionResolver(private val event: Event, val myDisplayName = room.getRoomMember(userId)?.displayName ?: return false return containsDisplayNameCondition.isSatisfied(event, myDisplayName) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultPusherService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultPusherService.kt index 12f6ee9f01..243e4d4b03 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultPusherService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/DefaultPusherService.kt @@ -36,7 +36,6 @@ import java.util.* import java.util.concurrent.TimeUnit import javax.inject.Inject - internal class DefaultPusherService @Inject constructor(private val context: Context, private val monarchy: Monarchy, @UserId private val userId: String, @@ -45,7 +44,6 @@ internal class DefaultPusherService @Inject constructor(private val context: Con private val taskExecutor: TaskExecutor ) : PushersService { - override fun refreshPushers() { getPusherTask .configureWith() @@ -56,7 +54,6 @@ internal class DefaultPusherService @Inject constructor(private val context: Con lang: String, appDisplayName: String, deviceDisplayName: String, url: String, append: Boolean, withEventIdOnly: Boolean) : UUID { - val pusher = JsonPusher( pushKey = pushkey, kind = "http", @@ -68,7 +65,6 @@ internal class DefaultPusherService @Inject constructor(private val context: Con data = JsonPusherData(url, if (withEventIdOnly) PushersService.EVENT_ID_ONLY else null), append = append) - val params = AddHttpPusherWorker.Params(pusher, userId) val request = matrixOneTimeWorkRequestBuilder() @@ -86,7 +82,7 @@ internal class DefaultPusherService @Inject constructor(private val context: Con .configureWith(params) { this.callback = callback } - //.enableRetry() ?? + // .enableRetry() ?? .executeBy(taskExecutor) } @@ -100,4 +96,4 @@ internal class DefaultPusherService @Inject constructor(private val context: Con override fun pushers(): List { return monarchy.fetchAllCopiedSync { PusherEntity.where(it) }.map { it.asDomain() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushRulesTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushRulesTask.kt index d542a8fffc..d135c36543 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushRulesTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushRulesTask.kt @@ -20,7 +20,6 @@ import im.vector.matrix.android.internal.network.executeRequest import im.vector.matrix.android.internal.task.Task import javax.inject.Inject - internal interface GetPushRulesTask : Task { data class Params(val scope: String) } @@ -38,4 +37,4 @@ internal class DefaultGetPushRulesTask @Inject constructor(private val pushRules savePushRulesTask.execute(SavePushRulesTask.Params(response)) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersResponse.kt index 4f4cac9302..1a46dcc8be 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersResponse.kt @@ -18,9 +18,8 @@ package im.vector.matrix.android.internal.session.pushers import com.squareup.moshi.Json import com.squareup.moshi.JsonClass - @JsonClass(generateAdapter = true) internal class GetPushersResponse( @Json(name = "pushers") val pushers: List? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersTask.kt index ffaedad652..045db56786 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/GetPushersTask.kt @@ -34,7 +34,7 @@ internal class DefaultGetPushersTask @Inject constructor(private val pushersAPI: apiCall = pushersAPI.getPushers() } monarchy.awaitTransaction { realm -> - //clear existings? + // clear existings? realm.where(PusherEntity::class.java) .findAll().deleteAllFromRealm() response.pushers?.forEach { jsonPusher -> @@ -45,4 +45,4 @@ internal class DefaultGetPushersTask @Inject constructor(private val pushersAPI: } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusher.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusher.kt index d262eeb745..8234a3b387 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusher.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusher.kt @@ -100,4 +100,3 @@ internal data class JsonPusher( @Json(name = "append") val append: Boolean? = false ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusherData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusherData.kt index 95898acae2..67c13b343f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusherData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/JsonPusherData.kt @@ -31,4 +31,4 @@ internal data class JsonPusherData( */ @Json(name = "format") val format: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushRulesApi.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushRulesApi.kt index f191b21d1d..786c1c90e6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushRulesApi.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushRulesApi.kt @@ -21,7 +21,6 @@ import im.vector.matrix.android.internal.network.NetworkConstants import retrofit2.Call import retrofit2.http.* - internal interface PushRulesApi { /** * Get all push rules @@ -42,7 +41,6 @@ internal interface PushRulesApi { @Body enable: Boolean?) : Call - /** * Update the ruleID action * @@ -56,7 +54,6 @@ internal interface PushRulesApi { @Body actions: Any) : Call - /** * Delete a rule * @@ -80,4 +77,4 @@ internal interface PushRulesApi { @Path("ruleId") ruleId: String, @Body rule: PushRule) : Call -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersAPI.kt index 7516e48a0c..9f1859548e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersAPI.kt @@ -21,7 +21,6 @@ import retrofit2.http.Body import retrofit2.http.GET import retrofit2.http.POST - internal interface PushersAPI { /** @@ -40,5 +39,4 @@ internal interface PushersAPI { */ @POST(NetworkConstants.URI_API_PREFIX_PATH_R0 + "pushers/set") fun setPusher(@Body jsonPusher: JsonPusher): Call - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersModule.kt index ad4e3eee7a..7aa06c0275 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/PushersModule.kt @@ -44,7 +44,6 @@ internal abstract class PushersModule { fun providesPushRulesApi(retrofit: Retrofit): PushRulesApi { return retrofit.create(PushRulesApi::class.java) } - } @Binds @@ -73,5 +72,4 @@ internal abstract class PushersModule { @Binds abstract fun bindProcessEventForPushTask(processEventForPushTask: DefaultProcessEventForPushTask): ProcessEventForPushTask - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/RemovePusherTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/RemovePusherTask.kt index d22447586c..297375454a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/RemovePusherTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/RemovePusherTask.kt @@ -66,4 +66,4 @@ internal class DefaultRemovePusherTask @Inject constructor( PusherEntity.where(it, params.pushKey).findFirst()?.deleteFromRealm() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/SavePushRulesTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/SavePushRulesTask.kt index b658858e47..fcab627251 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/SavePushRulesTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/SavePushRulesTask.kt @@ -25,7 +25,6 @@ import im.vector.matrix.android.internal.task.Task import im.vector.matrix.android.internal.util.awaitTransaction import javax.inject.Inject - /** * Save the push rules in DB */ @@ -78,4 +77,4 @@ internal class DefaultSavePushRulesTask @Inject constructor(private val monarchy realm.insertOrUpdate(underrides) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/UpdatePushRuleEnableStatusTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/UpdatePushRuleEnableStatusTask.kt index f3077e6837..91ed65d833 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/UpdatePushRuleEnableStatusTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/pushers/UpdatePushRuleEnableStatusTask.kt @@ -21,7 +21,6 @@ import im.vector.matrix.android.internal.network.executeRequest import im.vector.matrix.android.internal.task.Task import javax.inject.Inject - internal interface UpdatePushRuleEnableStatusTask : Task { data class Params(val kind: RuleKind, val pushRule: PushRule, @@ -36,4 +35,4 @@ internal class DefaultUpdatePushRuleEnableStatusTask @Inject constructor(private apiCall = pushRulesApi.updateEnableRuleStatus(params.kind.value, params.pushRule.ruleId, params.enabled) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoom.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoom.kt index 228552592e..7d957ccdad 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoom.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoom.kt @@ -85,5 +85,4 @@ internal class DefaultRoom @Inject constructor(override val roomId: String, override fun shouldEncryptForInvitedMembers(): Boolean { return cryptoService.shouldEncryptForInvitedMembers(roomId) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomDirectoryService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomDirectoryService.kt index 4aeace70ed..4251a66304 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomDirectoryService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomDirectoryService.kt @@ -59,4 +59,4 @@ internal class DefaultRoomDirectoryService @Inject constructor(private val getPu } .executeBy(taskExecutor) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomService.kt index bd5462b151..c64676c8c2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/DefaultRoomService.kt @@ -80,4 +80,4 @@ internal class DefaultRoomService @Inject constructor(private val monarchy: Mona } .executeBy(taskExecutor) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationTask.kt index 3743eef211..00d6619ce7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationTask.kt @@ -50,7 +50,7 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( private val monarchy: Monarchy, private val cryptoService: CryptoService) : EventRelationsAggregationTask { - //OPT OUT serer aggregation until API mature enough + // OPT OUT serer aggregation until API mature enough private val SHOULD_HANDLE_SERVER_AGREGGATION = false override suspend fun execute(params: EventRelationsAggregationTask.Params) { @@ -65,7 +65,7 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( private fun update(realm: Realm, events: List, userId: String) { events.forEach { event -> - try { //Temporary catch, should be removed + try { // Temporary catch, should be removed val roomId = event.roomId if (roomId == null) { Timber.w("Event has no room id ${event.eventId}") @@ -74,7 +74,7 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( val isLocalEcho = LocalEchoEventFactory.isLocalEchoId(event.eventId ?: "") when (event.type) { EventType.REACTION -> { - //we got a reaction!! + // we got a reaction!! Timber.v("###REACTION in room $roomId , reaction eventID ${event.eventId}") handleReaction(event, roomId, realm, userId, isLocalEcho) } @@ -95,18 +95,16 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( val content: MessageContent? = event.content.toModel() if (content?.relatesTo?.type == RelationType.REPLACE) { Timber.v("###REPLACE in room $roomId for event ${event.eventId}") - //A replace! + // A replace! handleReplace(realm, event, content, roomId, isLocalEcho) } - - } EventType.ENCRYPTED -> { - //Relation type is in clear + // Relation type is in clear val encryptedEventContent = event.content.toModel() if (encryptedEventContent?.relatesTo?.type == RelationType.REPLACE) { - //we need to decrypt if needed + // we need to decrypt if needed if (event.mxDecryptionResult == null) { try { val result = cryptoService.decryptEvent(event, event.roomId) @@ -118,12 +116,12 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( ) } catch (e: MXCryptoError) { Timber.w("Failed to decrypt e2e replace") - //TODO -> we should keep track of this and retry, or aggregation will be broken + // TODO -> we should keep track of this and retry, or aggregation will be broken } } event.getClearContent().toModel()?.let { Timber.v("###REPLACE in room $roomId for event ${event.eventId}") - //A replace! + // A replace! handleReplace(realm, event, it, roomId, isLocalEcho, encryptedEventContent.relatesTo.eventId) } } @@ -137,12 +135,11 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( // val unsignedData = EventMapper.map(eventToPrune).unsignedData // ?: UnsignedData(null, null) - //was this event a m.replace + // was this event a m.replace val contentModel = ContentMapper.map(eventToPrune.content)?.toModel() if (RelationType.REPLACE == contentModel?.relatesTo?.type && contentModel.relatesTo?.eventId != null) { handleRedactionOfReplace(eventToPrune, contentModel.relatesTo!!.eventId!!, realm) } - } EventType.REACTION -> { handleReactionRedact(eventToPrune, realm, userId) @@ -151,30 +148,28 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( } else -> Timber.v("UnHandled event ${event.eventId}") } - } catch (t: Throwable) { Timber.e(t, "## Should not happen ") } } - } private fun handleReplace(realm: Realm, event: Event, content: MessageContent, roomId: String, isLocalEcho: Boolean, relatedEventId: String? = null) { val eventId = event.eventId ?: return val targetEventId = relatedEventId ?: content.relatesTo?.eventId ?: return val newContent = content.newContent ?: return - //ok, this is a replace + // ok, this is a replace var existing = EventAnnotationsSummaryEntity.where(realm, targetEventId).findFirst() if (existing == null) { Timber.v("###REPLACE creating new relation summary for $targetEventId") existing = EventAnnotationsSummaryEntity.create(realm, roomId, targetEventId) } - //we have it + // we have it val existingSummary = existing.editSummary if (existingSummary == null) { - Timber.v("###REPLACE new edit summary for ${targetEventId}, creating one (localEcho:$isLocalEcho)") - //create the edit summary + Timber.v("###REPLACE new edit summary for $targetEventId, creating one (localEcho:$isLocalEcho)") + // create the edit summary val editSummary = realm.createObject(EditAggregatedSummaryEntity::class.java) editSummary.aggregatedContent = ContentMapper.map(newContent) if (isLocalEcho) { @@ -188,14 +183,14 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( existing.editSummary = editSummary } else { if (existingSummary.sourceEvents.contains(eventId)) { - //ignore this event, we already know it (??) - Timber.v("###REPLACE ignoring event for summary, it's known ${eventId}") + // ignore this event, we already know it (??) + Timber.v("###REPLACE ignoring event for summary, it's known $eventId") return } val txId = event.unsignedData?.transactionId - //is it a remote echo? + // is it a remote echo? if (!isLocalEcho && existingSummary.sourceLocalEchoEvents.contains(txId)) { - //ok it has already been managed + // ok it has already been managed Timber.v("###REPLACE Receiving remote echo of edit (edit already done)") existingSummary.sourceLocalEchoEvents.remove(txId) existingSummary.sourceEvents.add(event.eventId) @@ -205,7 +200,7 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( ) { Timber.v("###REPLACE Computing aggregated edit summary (isLocalEcho:$isLocalEcho)") if (!isLocalEcho) { - //Do not take local echo originServerTs here, could mess up ordering (keep old ts) + // Do not take local echo originServerTs here, could mess up ordering (keep old ts) existingSummary.lastEditTs = event.originServerTs ?: System.currentTimeMillis() } existingSummary.aggregatedContent = ContentMapper.map(newContent) @@ -215,14 +210,13 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( existingSummary.sourceEvents.add(eventId) } } else { - //ignore this event for the summary (back paginate) + // ignore this event for the summary (back paginate) if (!isLocalEcho) { existingSummary.sourceEvents.add(eventId) } Timber.v("###REPLACE ignoring event for summary, it's to old $eventId") } } - } private fun handleInitialAggregatedRelations(event: Event, roomId: String, aggregation: AggregatedAnnotation, realm: Realm) { @@ -235,11 +229,11 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( val eventSummary = EventAnnotationsSummaryEntity.create(realm, roomId, eventId) val sum = realm.createObject(ReactionAggregatedSummaryEntity::class.java) sum.key = it.key - sum.firstTimestamp = event.originServerTs ?: 0 //TODO how to maintain order? + sum.firstTimestamp = event.originServerTs ?: 0 // TODO how to maintain order? sum.count = it.count eventSummary.reactionsSummary.add(sum) } else { - //TODO how to handle that + // TODO how to handle that } } } @@ -252,7 +246,7 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( Timber.e("Malformed reaction content ${event.content}") return } - //rel_type must be m.annotation + // rel_type must be m.annotation if (RelationType.ANNOTATION == content.relatesTo?.type) { val reaction = content.relatesTo.key val relatedEventID = content.relatesTo.eventId @@ -282,12 +276,11 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( sum.addedByMe = sum.addedByMe || (userId == event.senderId) eventSummary.reactionsSummary.add(sum) } else { - //is this a known event (is possible? pagination?) + // is this a known event (is possible? pagination?) if (!sum.sourceEvents.contains(reactionEventId)) { - - //check if it's not the sync of a local echo + // check if it's not the sync of a local echo if (!isLocalEcho && sum.sourceLocalEcho.contains(txId)) { - //ok it has already been counted, just sync the list, do not touch count + // ok it has already been counted, just sync the list, do not touch count Timber.v("Ignoring synced of local echo for reaction $reaction") sum.sourceLocalEcho.remove(txId) sum.sourceEvents.add(reactionEventId) @@ -303,14 +296,11 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( sum.addedByMe = sum.addedByMe || (userId == event.senderId) } - } } - } else { Timber.e("Unknwon relation type ${content.relatesTo?.type} for event ${event.eventId}") } - } /** @@ -329,29 +319,28 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( Timber.w("Redaction of a replace that was not known in aggregation $sourceToDiscard") return } - //Need to remove this event from the redaction list and compute new aggregation state + // Need to remove this event from the redaction list and compute new aggregation state sourceEvents.removeAt(sourceToDiscard) val previousEdit = sourceEvents.mapNotNull { EventEntity.where(realm, it).findFirst() }.sortedBy { it.originServerTs }.lastOrNull() if (previousEdit == null) { - //revert to original + // revert to original eventSummary.editSummary?.deleteFromRealm() } else { - //I have the last event + // I have the last event ContentMapper.map(previousEdit.content)?.toModel()?.newContent?.let { newContent -> eventSummary.editSummary?.lastEditTs = previousEdit.originServerTs ?: System.currentTimeMillis() eventSummary.editSummary?.aggregatedContent = ContentMapper.map(newContent) } ?: run { Timber.e("Failed to udate edited summary") - //TODO how to reccover that + // TODO how to reccover that } - } } fun handleReactionRedact(eventToPrune: EventEntity, realm: Realm, userId: String) { Timber.v("REDACTION of reaction ${eventToPrune.eventId}") - //delete a reaction, need to update the annotation summary if any + // delete a reaction, need to update the annotation summary if any val reactionContent: ReactionContent = EventMapper.map(eventToPrune).content.toModel() ?: return val eventThatWasReacted = reactionContent.relatesTo?.eventId ?: return @@ -371,11 +360,11 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( Timber.v("Known reactions after ${aggregation.sourceEvents.joinToString(",")}") aggregation.count = aggregation.count - 1 if (eventToPrune.sender == userId) { - //Was it a redact on my reaction? + // Was it a redact on my reaction? aggregation.addedByMe = false } if (aggregation.count == 0) { - //delete! + // delete! aggregation.deleteFromRealm() } } else { @@ -386,4 +375,4 @@ internal class DefaultEventRelationsAggregationTask @Inject constructor( Timber.e("## Cannot find summary for key $reactionKey") } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationUpdater.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationUpdater.kt index 97bbe62b11..aadf1bfccf 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationUpdater.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/EventRelationsAggregationUpdater.kt @@ -65,6 +65,4 @@ internal class EventRelationsAggregationUpdater @Inject constructor(@SessionData ) task.configureWith(params).executeBy(taskExecutor) } - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomAPI.kt index 0a5dcea3cb..daee1c914c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomAPI.kt @@ -80,7 +80,6 @@ internal interface RoomAPI { @Query("filter") filter: String? ): Call - /** * Get all members of a room * @@ -96,7 +95,6 @@ internal interface RoomAPI { @Query("not_membership") notMembership: String? ): Call - /** * Send an event to a room. * @@ -196,7 +194,6 @@ internal interface RoomAPI { @Body content: Content? ): Call - /** * Paginate relations for event based in normal topological order * @@ -248,4 +245,4 @@ internal interface RoomAPI { @Path("eventId") parent_id: String, @Body reason: Map ): Call -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomFactory.kt index e972f6a98e..65a3624d2c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomFactory.kt @@ -29,7 +29,6 @@ import im.vector.matrix.android.internal.session.room.state.DefaultStateService import im.vector.matrix.android.internal.session.room.timeline.DefaultTimelineService import javax.inject.Inject - internal interface RoomFactory { fun create(roomId: String): Room } @@ -61,5 +60,4 @@ internal class DefaultRoomFactory @Inject constructor(private val monarchy: Mona membershipServiceFactory.create(roomId) ) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomSummaryUpdater.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomSummaryUpdater.kt index f92f2ccc1e..0fb3d40bb5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomSummaryUpdater.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/RoomSummaryUpdater.kt @@ -91,7 +91,7 @@ internal class RoomSummaryUpdater @Inject constructor(@UserId private val userId val lastTopicEvent = EventEntity.where(realm, roomId, EventType.STATE_ROOM_TOPIC).prev()?.asDomain() roomSummaryEntity.hasUnreadMessages = roomSummaryEntity.notificationCount > 0 - //avoid this call if we are sure there are unread events + // avoid this call if we are sure there are unread events || !isEventRead(monarchy, userId, roomId, latestPreviewableEvent?.eventId) val otherRoomMembers = RoomMembers(realm, roomId) @@ -108,4 +108,4 @@ internal class RoomSummaryUpdater @Inject constructor(@UserId private val userId roomSummaryEntity.otherMemberIds.clear() roomSummaryEntity.otherMemberIds.addAll(otherRoomMembers) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/CreateRoomTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/CreateRoomTask.kt index 93c2eb0b11..ca86765cd9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/CreateRoomTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/CreateRoomTask.kt @@ -47,7 +47,6 @@ internal class DefaultCreateRoomTask @Inject constructor(private val roomAPI: Ro @SessionDatabase private val realmConfiguration: RealmConfiguration) : CreateRoomTask { - override suspend fun execute(params: CreateRoomParams): String { val createRoomResponse = executeRequest { apiCall = roomAPI.createRoom(params) @@ -88,5 +87,4 @@ internal class DefaultCreateRoomTask @Inject constructor(private val roomAPI: Ro val setReadMarkerParams = SetReadMarkersTask.Params(roomId, markAllAsRead = true) return readMarkersTask.execute(setReadMarkerParams) } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/RoomCreateEventLiveObserver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/RoomCreateEventLiveObserver.kt index 1bc6b9658e..010023596c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/RoomCreateEventLiveObserver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/create/RoomCreateEventLiveObserver.kt @@ -65,9 +65,7 @@ internal class RoomCreateEventLiveObserver @Inject constructor(@SessionDatabase ?: RoomSummaryEntity(predecessorRoomId) predecessorRoomSummary.versioningState = VersioningState.UPGRADED_ROOM_JOINED realm.insertOrUpdate(predecessorRoomSummary) - } } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/draft/DefaultDraftService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/draft/DefaultDraftService.kt index 424598d590..9fd9cf7c9d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/draft/DefaultDraftService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/draft/DefaultDraftService.kt @@ -163,4 +163,3 @@ internal class DefaultDraftService @AssistedInject constructor(@Assisted private } } } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/DefaultMembershipService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/DefaultMembershipService.kt index a1aac0ae36..3490fed30f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/DefaultMembershipService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/DefaultMembershipService.kt @@ -109,4 +109,4 @@ internal class DefaultMembershipService @AssistedInject constructor(@Assisted pr } .executeBy(taskExecutor) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/LoadRoomMembersTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/LoadRoomMembersTask.kt index 709e8da973..d952915d2c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/LoadRoomMembersTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/LoadRoomMembersTask.kt @@ -64,7 +64,6 @@ internal class DefaultLoadRoomMembersTask @Inject constructor(private val roomAP val roomEntity = RoomEntity.where(realm, roomId).findFirst() ?: realm.createObject(roomId) - for (roomMemberEvent in response.roomMemberEvents) { roomEntity.addStateEvent(roomMemberEvent) UserEntityFactory.createOrNull(roomMemberEvent)?.also { @@ -84,5 +83,4 @@ internal class DefaultLoadRoomMembersTask @Inject constructor(private val roomAP RoomEntity.where(it, roomId).findFirst()?.areAllMembersLoaded ?: false } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomDisplayNameResolver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomDisplayNameResolver.kt index 37adba0df8..965bd21cf4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomDisplayNameResolver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomDisplayNameResolver.kt @@ -77,7 +77,6 @@ internal class RoomDisplayNameResolver @Inject constructor(private val context: val roomMembers = RoomMembers(realm, roomId) val loadedMembers = roomMembers.queryRoomMembersEvent().findAll() - if (roomEntity?.membership == Membership.INVITE) { val inviteMeEvent = roomMembers.queryRoomMemberEvent(userId).findFirst() val inviterId = inviteMeEvent?.sender diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembers.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembers.kt index 8db3f170ea..74b8d3c3a7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembers.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembers.kt @@ -137,5 +137,4 @@ internal class RoomMembers(private val realm: Realm, .keys .toList() } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembersResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembersResponse.kt index af3bf9b680..7f77fbf79c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembersResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/RoomMembersResponse.kt @@ -23,4 +23,4 @@ import im.vector.matrix.android.api.session.events.model.Event @JsonClass(generateAdapter = true) internal data class RoomMembersResponse( @Json(name = "chunk") val roomMemberEvents: List -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/InviteTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/InviteTask.kt index 68d72c6b84..a41e8d3ca3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/InviteTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/InviteTask.kt @@ -21,7 +21,6 @@ import im.vector.matrix.android.internal.session.room.RoomAPI import im.vector.matrix.android.internal.task.Task import javax.inject.Inject - internal interface InviteTask : Task { data class Params( val roomId: String, diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/JoinRoomTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/JoinRoomTask.kt index 5ca23a0d2d..2555d80209 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/JoinRoomTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/joining/JoinRoomTask.kt @@ -63,5 +63,4 @@ internal class DefaultJoinRoomTask @Inject constructor(private val roomAPI: Room val setReadMarkerParams = SetReadMarkersTask.Params(roomId, markAllAsRead = true) readMarkersTask.execute(setReadMarkerParams) } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/leaving/LeaveRoomTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/leaving/LeaveRoomTask.kt index d4ff169c73..be9a421e95 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/leaving/LeaveRoomTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/membership/leaving/LeaveRoomTask.kt @@ -34,5 +34,4 @@ internal class DefaultLeaveRoomTask @Inject constructor(private val roomAPI: Roo apiCall = roomAPI.leave(params.roomId, HashMap()) } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/EventsPruner.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/EventsPruner.kt index ac3c7a4e22..d66a2f6e57 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/EventsPruner.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/EventsPruner.kt @@ -23,7 +23,6 @@ import im.vector.matrix.android.internal.database.mapper.asDomain import im.vector.matrix.android.internal.database.model.EventEntity import im.vector.matrix.android.internal.database.query.types import im.vector.matrix.android.internal.di.SessionDatabase -import im.vector.matrix.android.internal.di.UserId import im.vector.matrix.android.internal.task.TaskExecutor import im.vector.matrix.android.internal.task.configureWith import io.realm.OrderedCollectionChangeSet @@ -37,7 +36,6 @@ import javax.inject.Inject * As it will actually delete the content, it should be called last in the list of listener. */ internal class EventsPruner @Inject constructor(@SessionDatabase realmConfiguration: RealmConfiguration, - @UserId private val userId: String, private val pruneEventTask: PruneEventTask, private val taskExecutor: TaskExecutor) : RealmLiveEntityObserver(realmConfiguration) { @@ -52,11 +50,7 @@ internal class EventsPruner @Inject constructor(@SessionDatabase realmConfigurat .mapNotNull { results[it]?.asDomain() } .toList() - val params = PruneEventTask.Params( - insertedDomains, - userId - ) + val params = PruneEventTask.Params(insertedDomains) pruneEventTask.configureWith(params).executeBy(taskExecutor) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/PruneEventTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/PruneEventTask.kt index 35df20df78..c55007c54a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/PruneEventTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/prune/PruneEventTask.kt @@ -34,14 +34,11 @@ import io.realm.Realm import timber.log.Timber import javax.inject.Inject - internal interface PruneEventTask : Task { data class Params( - val redactionEvents: List, - val userId: String + val redactionEvents: List ) - } internal class DefaultPruneEventTask @Inject constructor(private val monarchy: Monarchy) : PruneEventTask { @@ -49,19 +46,19 @@ internal class DefaultPruneEventTask @Inject constructor(private val monarchy: M override suspend fun execute(params: PruneEventTask.Params) { monarchy.awaitTransaction { realm -> params.redactionEvents.forEach { event -> - pruneEvent(realm, event, params.userId) + pruneEvent(realm, event) } } } - private fun pruneEvent(realm: Realm, redactionEvent: Event, userId: String) { + private fun pruneEvent(realm: Realm, redactionEvent: Event) { if (redactionEvent.redacts.isNullOrBlank()) { return } - val redactionEventEntity = EventEntity.where(realm, eventId = redactionEvent.eventId - ?: "").findFirst() - ?: return + // Check that we know this event + EventEntity.where(realm, eventId = redactionEvent.eventId ?: "").findFirst() ?: return + val isLocalEcho = LocalEchoEventFactory.isLocalEchoId(redactionEvent.eventId ?: "") Timber.v("Redact event for ${redactionEvent.redacts} localEcho=$isLocalEcho") @@ -80,7 +77,7 @@ internal class DefaultPruneEventTask @Inject constructor(private val monarchy: M val unsignedData = EventMapper.map(eventToPrune).unsignedData ?: UnsignedData(null, null) - //was this event a m.replace + // was this event a m.replace // val contentModel = ContentMapper.map(eventToPrune.content)?.toModel() // if (RelationType.REPLACE == contentModel?.relatesTo?.type && contentModel.relatesTo?.eventId != null) { // eventRelationsAggregationUpdater.handleRedactionOfReplace(eventToPrune, contentModel.relatesTo!!.eventId!!, realm) @@ -91,7 +88,6 @@ internal class DefaultPruneEventTask @Inject constructor(private val monarchy: M eventToPrune.unsignedData = MoshiProvider.providesMoshi().adapter(UnsignedData::class.java).toJson(modified) eventToPrune.decryptionResultJson = null eventToPrune.decryptionErrorCode = null - } // EventType.REACTION -> { // eventRelationsAggregationUpdater.handleReactionRedact(eventToPrune, realm, userId) @@ -106,7 +102,6 @@ internal class DefaultPruneEventTask @Inject constructor(private val monarchy: M } } - private fun computeAllowedKeys(type: String): List { // Add filtered content, allowed keys in content depends on the event type return when (type) { @@ -128,4 +123,4 @@ internal class DefaultPruneEventTask @Inject constructor(private val monarchy: M else -> emptyList() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/DefaultReadService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/DefaultReadService.kt index ea15367528..b8b9fe82ef 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/DefaultReadService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/DefaultReadService.kt @@ -76,7 +76,6 @@ internal class DefaultReadService @AssistedInject constructor(@Assisted private .executeBy(taskExecutor) } - override fun isEventRead(eventId: String): Boolean { return isEventRead(monarchy, userId, roomId, eventId) } @@ -102,7 +101,6 @@ internal class DefaultReadService @AssistedInject constructor(@Assisted private } override fun getEventReadReceiptsLive(eventId: String): LiveData> { - val liveRealmData = monarchy.findAllMappedWithChanges( { ReadReceiptsSummaryEntity.where(it, eventId) }, { readReceiptsSummaryMapper.map(it) } @@ -111,4 +109,4 @@ internal class DefaultReadService @AssistedInject constructor(@Assisted private it.firstOrNull() ?: emptyList() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/FullyReadContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/FullyReadContent.kt index 6790ea658c..c91b2af1ae 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/FullyReadContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/FullyReadContent.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) data class FullyReadContent( @Json(name = "event_id") val eventId: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/SetReadMarkersTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/SetReadMarkersTask.kt index 2748a49930..3ed322b483 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/SetReadMarkersTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/read/SetReadMarkersTask.kt @@ -130,5 +130,4 @@ internal class DefaultSetReadMarkersTask @Inject constructor(private val roomAPI newReadMarkerIndex > currentReadMarkerIndex } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt index 9df34c1c50..6abc7ed60e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/DefaultRelationService.kt @@ -76,7 +76,6 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv } override fun undoReaction(reaction: String, targetEventId: String, myUserId: String)/*: Cancelable*/ { - val params = FindReactionEventForUndoTask.Params( roomId, targetEventId, @@ -87,7 +86,7 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv override fun onSuccess(data: FindReactionEventForUndoTask.Result) { if (data.redactEventId == null) { Timber.w("Cannot find reaction to undo (not yet synced?)") - //TODO? + // TODO? } data.redactEventId?.let { toRedact -> @@ -97,7 +96,6 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv val redactWork = createRedactEventWork(redactEvent, toRedact, null) TimelineSendEventWorkCommon.postWork(context, roomId, redactWork) - } } } @@ -109,7 +107,7 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv .executeBy(taskExecutor) } - //TODO duplicate with send service? + // TODO duplicate with send service? private fun createRedactEventWork(localEvent: Event, eventId: String, reason: String?): OneTimeWorkRequest { val sendContentWorkerParams = RedactEventWorker.Params( userId, @@ -136,13 +134,11 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv val workRequest = createSendEventWork(event, false) TimelineSendEventWorkCommon.postSequentialWorks(context, roomId, encryptWork, workRequest) CancelableWork(context, encryptWork.id) - } else { val workRequest = createSendEventWork(event, true) TimelineSendEventWorkCommon.postWork(context, roomId, workRequest) CancelableWork(context, workRequest.id) } - } override fun editReply(replyToEdit: TimelineEvent, @@ -162,7 +158,6 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv val workRequest = createSendEventWork(event, false) TimelineSendEventWorkCommon.postSequentialWorks(context, roomId, encryptWork, workRequest) CancelableWork(context, encryptWork.id) - } else { val workRequest = createSendEventWork(event, true) TimelineSendEventWorkCommon.postWork(context, roomId, workRequest) @@ -189,13 +184,11 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv val workRequest = createSendEventWork(event, false) TimelineSendEventWorkCommon.postSequentialWorks(context, roomId, encryptWork, workRequest) CancelableWork(context, encryptWork.id) - } else { val workRequest = createSendEventWork(event, true) TimelineSendEventWorkCommon.postWork(context, roomId, workRequest) CancelableWork(context, workRequest.id) } - } private fun createEncryptEventWork(event: Event, keepKeys: List?): OneTimeWorkRequest { @@ -213,7 +206,7 @@ internal class DefaultRelationService @AssistedInject constructor(@Assisted priv override fun getEventSummaryLive(eventId: String): LiveData> { val liveData = monarchy.findAllMappedWithChanges( - { EventAnnotationsSummaryEntity.where(it, eventId)}, + { EventAnnotationsSummaryEntity.where(it, eventId) }, { it.asDomain() } ) return Transformations.map(liveData) { results -> diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/FetchEditHistoryTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/FetchEditHistoryTask.kt index 792df3b1b6..5e5db58bdb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/FetchEditHistoryTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/FetchEditHistoryTask.kt @@ -23,7 +23,6 @@ import im.vector.matrix.android.internal.session.room.RoomAPI import im.vector.matrix.android.internal.task.Task import javax.inject.Inject - internal interface FetchEditHistoryTask : Task> { data class Params( @@ -33,7 +32,6 @@ internal interface FetchEditHistoryTask : Task { data class Params( @@ -37,7 +36,6 @@ internal interface FindReactionEventForUndoTask : Task - //is it mine? + // is it mine? if (eventEntity.sender == userId) { return eventEntity } @@ -69,4 +67,4 @@ internal class DefaultFindReactionEventForUndoTask @Inject constructor(private v } return null } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/RelationsResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/RelationsResponse.kt index 737165ff0f..73e6592f7d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/RelationsResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/RelationsResponse.kt @@ -25,4 +25,4 @@ internal data class RelationsResponse( @Json(name = "original_event") val originalEvent: Event?, @Json(name = "next_batch") val nextBatch: String?, @Json(name = "prev_batch") val prevBatch: String? -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/SendRelationWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/SendRelationWorker.kt index 5df995d9e9..eafe1e7419 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/SendRelationWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/SendRelationWorker.kt @@ -73,8 +73,8 @@ internal class SendRelationWorker(context: Context, params: WorkerParameters) : when (exception) { is Failure.NetworkConnection -> Result.retry() else -> { - //TODO mark as failed to send? - //always return success, or the chain will be stuck for ever! + // TODO mark as failed to send? + // always return success, or the chain will be stuck for ever! Result.success() } } @@ -92,5 +92,4 @@ internal class SendRelationWorker(context: Context, params: WorkerParameters) : ) } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/UpdateQuickReactionTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/UpdateQuickReactionTask.kt index fd081fbe55..e4b71c0d42 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/UpdateQuickReactionTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/relation/UpdateQuickReactionTask.kt @@ -24,7 +24,6 @@ import im.vector.matrix.android.internal.task.Task import io.realm.Realm import javax.inject.Inject - internal interface UpdateQuickReactionTask : Task { data class Params( @@ -51,13 +50,12 @@ internal class DefaultUpdateQuickReactionTask @Inject constructor(private val mo return UpdateQuickReactionTask.Result(res?.first, res?.second ?: emptyList()) } - private fun updateQuickReaction(realm: Realm, reaction: String, oppositeReaction: String, eventId: String, myUserId: String): Pair?> { - //the emoji reaction has been selected, we need to check if we have reacted it or not + // the emoji reaction has been selected, we need to check if we have reacted it or not val existingSummary = EventAnnotationsSummaryEntity.where(realm, eventId).findFirst() ?: return Pair(reaction, null) - //Ok there is already reactions on this event, have we reacted to it + // Ok there is already reactions on this event, have we reacted to it val aggregationForReaction = existingSummary.reactionsSummary.where() .equalTo(ReactionAggregatedSummaryEntityFields.KEY, reaction) .findFirst() @@ -66,23 +64,22 @@ internal class DefaultUpdateQuickReactionTask @Inject constructor(private val mo .findFirst() if (aggregationForReaction == null || !aggregationForReaction.addedByMe) { - //i haven't yet reacted to it, so need to add it, but do I need to redact the opposite? + // i haven't yet reacted to it, so need to add it, but do I need to redact the opposite? val toRedact = aggregationForOppositeReaction?.sourceEvents?.mapNotNull { - //find source event + // find source event val entity = EventEntity.where(realm, it).findFirst() if (entity?.sender == myUserId) entity.eventId else null } return Pair(reaction, toRedact) } else { - //I already added it, so i need to undo it (like a toggle) + // I already added it, so i need to undo it (like a toggle) // find all m.redaction coming from me to readact them val toRedact = aggregationForReaction.sourceEvents.mapNotNull { - //find source event + // find source event val entity = EventEntity.where(realm, it).findFirst() if (entity?.sender == myUserId) entity.eventId else null } return Pair(null, toRedact) } - } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/DefaultSendService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/DefaultSendService.kt index 8b5b84c297..7c720e56a7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/DefaultSendService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/DefaultSendService.kt @@ -106,7 +106,7 @@ internal class DefaultSendService @AssistedInject constructor(@Assisted private } override fun redactEvent(event: Event, reason: String?): Cancelable { - //TODO manage media/attachements? + // TODO manage media/attachements? val redactWork = createRedactEventWork(event, reason) TimelineSendEventWorkCommon.postWork(context, roomId, redactWork) return CancelableWork(context, redactWork.id) @@ -117,12 +117,11 @@ internal class DefaultSendService @AssistedInject constructor(@Assisted private return sendEvent(localEcho.root) } return null - } override fun resendMediaMessage(localEcho: TimelineEvent): Cancelable? { if (localEcho.root.isImageMessage() && localEcho.root.sendState.hasFailed()) { - //TODO this need a refactoring of attachement sending + // TODO this need a refactoring of attachement sending // val clearContent = localEcho.root.getClearContent() // val messageContent = clearContent?.toModel() ?: return null // when (messageContent.type) { @@ -176,7 +175,7 @@ internal class DefaultSendService @AssistedInject constructor(@Assisted private .build().let { TimelineSendEventWorkCommon.postWork(context, roomId, it, ExistingWorkPolicy.REPLACE) - //need to clear also image sending queue + // need to clear also image sending queue WorkManager.getInstance(context) .beginUniqueWork(buildWorkName(UPLOAD_WORK), ExistingWorkPolicy.REPLACE, it) .enqueue() @@ -189,7 +188,6 @@ internal class DefaultSendService @AssistedInject constructor(@Assisted private } } } - } override fun resendAllFailedMessages() { @@ -218,12 +216,11 @@ internal class DefaultSendService @AssistedInject constructor(@Assisted private MessageType.MSGTYPE_VIDEO, MessageType.MSGTYPE_IMAGE, MessageType.MSGTYPE_AUDIO -> { - //need to resend the attachement + // need to resend the attachement } else -> { Timber.e("Cannot resend message ${event.type} / ${content.type}") } - } } else { Timber.e("Unsupported message to resend ${event.type}") @@ -329,6 +326,4 @@ internal class DefaultSendService @AssistedInject constructor(@Assisted private .setBackoffCriteria(BackoffPolicy.LINEAR, BACKOFF_DELAY, TimeUnit.MILLISECONDS) .build() } - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/EncryptEventWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/EncryptEventWorker.kt index 031ceb1681..a269529dd2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/EncryptEventWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/EncryptEventWorker.kt @@ -70,8 +70,7 @@ internal class EncryptEventWorker(context: Context, params: WorkerParameters) } localEchoUpdater.updateSendState(localEvent.eventId, SendState.ENCRYPTING) - - val localMutableContent = HashMap(localEvent.content) + val localMutableContent = localEvent.content?.toMutableMap() ?: mutableMapOf() params.keepKeys?.forEach { localMutableContent.remove(it) } @@ -89,7 +88,7 @@ internal class EncryptEventWorker(context: Context, params: WorkerParameters) val modifiedContent = HashMap(result.eventContent) params.keepKeys?.forEach { toKeep -> localEvent.content?.get(toKeep)?.let { - //put it back in the encrypted thing + // put it back in the encrypted thing modifiedContent[toKeep] = it } } @@ -106,7 +105,7 @@ internal class EncryptEventWorker(context: Context, params: WorkerParameters) else -> SendState.UNDELIVERED } localEchoUpdater.updateSendState(localEvent.eventId, sendState) - //always return success, or the chain will be stuck for ever! + // always return success, or the chain will be stuck for ever! val nextWorkerParams = SendEventWorker.Params(params.userId, params.roomId, localEvent, error?.localizedMessage ?: "Error") return Result.success(WorkerParamsFactory.toData(nextWorkerParams)) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt index ffc539471b..a4ce62e1f0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoEventFactory.kt @@ -17,6 +17,7 @@ package im.vector.matrix.android.internal.session.room.send import android.media.MediaMetadataRetriever +import androidx.exifinterface.media.ExifInterface import com.zhuinden.monarchy.Monarchy import im.vector.matrix.android.R import im.vector.matrix.android.api.permalinks.PermalinkFactory @@ -159,7 +160,7 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use reaction ) ) - val localId = dummyEventId(roomId) + val localId = dummyEventId() return Event( roomId = roomId, originServerTs = dummyOriginServerTs(), @@ -168,18 +169,30 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use type = EventType.REACTION, content = content.toContent(), unsignedData = UnsignedData(age = null, transactionId = localId)) - } - private fun createImageEvent(roomId: String, attachment: ContentAttachmentData): Event { + var width = attachment.width + var height = attachment.height + + when (attachment.exifOrientation) { + ExifInterface.ORIENTATION_ROTATE_90, + ExifInterface.ORIENTATION_TRANSVERSE, + ExifInterface.ORIENTATION_ROTATE_270, + ExifInterface.ORIENTATION_TRANSPOSE -> { + val tmp = width + width = height + height = tmp + } + } + val content = MessageImageContent( type = MessageType.MSGTYPE_IMAGE, body = attachment.name ?: "image", info = ImageInfo( mimeType = attachment.mimeType, - width = attachment.width?.toInt() ?: 0, - height = attachment.height?.toInt() ?: 0, + width = width?.toInt() ?: 0, + height = height?.toInt() ?: 0, size = attachment.size.toInt() ), url = attachment.path @@ -251,7 +264,7 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use } private fun createEvent(roomId: String, content: Any? = null): Event { - val localID = dummyEventId(roomId) + val localID = dummyEventId() return Event( roomId = roomId, originServerTs = dummyOriginServerTs(), @@ -267,13 +280,13 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use return System.currentTimeMillis() } - private fun dummyEventId(roomId: String): String { + private fun dummyEventId(): String { return "$LOCAL_ID_PREFIX${UUID.randomUUID()}" } fun createReplyTextEvent(roomId: String, eventReplied: TimelineEvent, replyText: String, autoMarkdown: Boolean): Event? { - //Fallbacks and event representation - //TODO Add error/warning logs when any of this is null + // Fallbacks and event representation + // TODO Add error/warning logs when any of this is null val permalink = PermalinkFactory.createPermalink(eventReplied.root) ?: return null val userId = eventReplied.root.senderId ?: return null val userLink = PermalinkFactory.createPermalink(userId) ?: return null @@ -339,10 +352,11 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use } } val isReply = content.isReply() || originalContent.isReply() - return if (isReply) + return if (isReply) { TextContent(content.body, formattedText).removeInReplyFallbacks() - else + } else { TextContent(content.body, formattedText) + } } MessageType.MSGTYPE_FILE -> return TextContent(stringProvider.getString(R.string.reply_to_a_file)) MessageType.MSGTYPE_AUDIO -> return TextContent(stringProvider.getString(R.string.reply_to_an_audio_file)) @@ -369,7 +383,7 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use } */ fun createRedactEvent(roomId: String, eventId: String, reason: String?): Event { - val localID = dummyEventId(roomId) + val localID = dummyEventId() return Event( roomId = roomId, originServerTs = dummyOriginServerTs(), @@ -383,7 +397,7 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use } fun saveLocalEcho(monarchy: Monarchy, event: Event) { - if (event.roomId == null) throw IllegalStateException("Your event should have a roomId") + checkNotNull(event.roomId) { "Your event should have a roomId" } monarchy.writeAsync { realm -> val roomEntity = RoomEntity.where(realm, roomId = event.roomId).findFirst() ?: return@writeAsync @@ -395,7 +409,6 @@ internal class LocalEchoEventFactory @Inject constructor(@UserId private val use companion object { const val LOCAL_ID_PREFIX = "local." - // //
// In reply to diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoUpdater.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoUpdater.kt index c4242239ee..4c45ba0a4d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoUpdater.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/LocalEchoUpdater.kt @@ -32,12 +32,11 @@ internal class LocalEchoUpdater @Inject constructor(private val monarchy: Monarc val sendingEventEntity = EventEntity.where(realm, eventId).findFirst() if (sendingEventEntity != null) { if (sendState == SendState.SENT && sendingEventEntity.sendState == SendState.SYNCED) { - //If already synced, do not put as sent + // If already synced, do not put as sent } else { sendingEventEntity.sendState = sendState } } } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/NoMerger.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/NoMerger.kt index c41c4bc04d..05b31ca420 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/NoMerger.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/NoMerger.kt @@ -25,4 +25,4 @@ internal class NoMerger : InputMerger() { override fun merge(inputs: MutableList): Data { return inputs.first() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/RedactEventWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/RedactEventWorker.kt index bac71cf7bd..ec311458cd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/RedactEventWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/RedactEventWorker.kt @@ -71,8 +71,8 @@ internal class RedactEventWorker(context: Context, params: WorkerParameters) : C when (it) { is Failure.NetworkConnection -> Result.retry() else -> { - //TODO mark as failed to send? - //always return success, or the chain will be stuck for ever! + // TODO mark as failed to send? + // always return success, or the chain will be stuck for ever! Result.success(WorkerParamsFactory.toData(params.copy( lastFailureMessage = it.localizedMessage ))) @@ -81,5 +81,4 @@ internal class RedactEventWorker(context: Context, params: WorkerParameters) : C } ) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendEventWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendEventWorker.kt index 442c60842f..183b0ad9b8 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendEventWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendEventWorker.kt @@ -32,7 +32,6 @@ import im.vector.matrix.android.internal.worker.WorkerParamsFactory import im.vector.matrix.android.internal.worker.getSessionComponent import javax.inject.Inject - internal class SendEventWorker constructor(context: Context, params: WorkerParameters) : CoroutineWorker(context, params) { @@ -72,7 +71,7 @@ internal class SendEventWorker constructor(context: Context, params: WorkerParam Result.retry() } else { localEchoUpdater.updateSendState(event.eventId, SendState.UNDELIVERED) - //always return success, or the chain will be stuck for ever! + // always return success, or the chain will be stuck for ever! Result.success() } } @@ -95,5 +94,4 @@ internal class SendEventWorker constructor(context: Context, params: WorkerParam } localEchoUpdater.updateSendState(eventId, SendState.SENT) } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendResponse.kt index d11c5164ee..947edee1ed 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/SendResponse.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) internal data class SendResponse( @Json(name = "event_id") val eventId: String -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt index bf7cb36188..ff31fc30c8 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/send/TextContent.kt @@ -32,7 +32,6 @@ data class TextContent( fun takeFormatted() = formattedText ?: text } - fun TextContent.toMessageTextContent(msgType: String = MessageType.MSGTYPE_TEXT): MessageTextContent { return MessageTextContent( type = msgType, @@ -48,5 +47,3 @@ fun TextContent.removeInReplyFallbacks(): TextContent { formattedText = this.formattedText?.let { extractUsefulTextFromHtmlReply(it) } ) } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/state/DefaultStateService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/state/DefaultStateService.kt index f51b0e0448..785fd9ae71 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/state/DefaultStateService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/state/DefaultStateService.kt @@ -57,13 +57,10 @@ internal class DefaultStateService @AssistedInject constructor(@Assisted private "topic" to topic )) - sendStateTask .configureWith(params) { this.callback = callback } .executeBy(taskExecutor) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/ClearUnlinkedEventsTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/ClearUnlinkedEventsTask.kt index df7a0cc886..04cf810fe4 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/ClearUnlinkedEventsTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/ClearUnlinkedEventsTask.kt @@ -30,7 +30,6 @@ import javax.inject.Inject internal interface ClearUnlinkedEventsTask : Task { data class Params(val roomId: String) - } internal class DefaultClearUnlinkedEventsTask @Inject constructor(private val monarchy: Monarchy) : ClearUnlinkedEventsTask { @@ -46,5 +45,4 @@ internal class DefaultClearUnlinkedEventsTask @Inject constructor(private val mo } } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultGetContextOfEventTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultGetContextOfEventTask.kt index efd099e9f9..96e1caf71b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultGetContextOfEventTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultGetContextOfEventTask.kt @@ -28,7 +28,6 @@ internal interface GetContextOfEventTask : Task { data class Params( @@ -31,7 +30,6 @@ internal interface PaginationTask : Task> { collection, changeSet -> var hasChange = false @@ -147,7 +141,6 @@ internal class DefaultTimeline( if (hasChange) postSnapshot() } - // Public methods ****************************************************************************** override fun paginate(direction: Timeline.Direction, count: Int) { @@ -332,7 +325,7 @@ internal class DefaultTimeline( private fun rebuildEvent(eventId: String, builder: (TimelineEvent) -> TimelineEvent): Boolean { return builtEventsIdMap[eventId]?.let { builtIndex -> - //Update the relation of existing event + // Update the relation of existing event builtEvents[builtIndex]?.let { te -> builtEvents[builtIndex] = builder(te) true @@ -366,7 +359,6 @@ internal class DefaultTimeline( } } - /** * This has to be called on TimelineThread as it access realm live results * @return true if createSnapshot should be posted @@ -552,7 +544,6 @@ internal class DefaultTimeline( return if (direction == Timeline.Direction.BACKWARDS) chunkEntity.prevToken else chunkEntity.nextToken } - /** * This has to be called on TimelineThread as it access realm live results */ @@ -593,7 +584,7 @@ internal class DefaultTimeline( val position = if (direction == Timeline.Direction.FORWARDS) 0 else builtEvents.size builtEvents.add(position, timelineEvent) - //Need to shift :/ + // Need to shift :/ builtEventsIdMap.entries.filter { it.value >= position }.forEach { it.setValue(it.value + 1) } builtEventsIdMap[eventEntity.eventId] = position } @@ -636,7 +627,6 @@ internal class DefaultTimeline( .findAll() } - private fun buildEventQuery(realm: Realm): RealmQuery { return if (initialEventId == null) { TimelineEventEntity @@ -675,7 +665,6 @@ internal class DefaultTimeline( forwardsState.set(State()) } - // Extension methods *************************************************************************** private fun Timeline.Direction.toPaginationDirection(): PaginationDirection { @@ -698,7 +687,4 @@ internal class DefaultTimeline( val isPaginating: Boolean = false, val requestedPaginationCount: Int = 0 ) - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultTimelineService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultTimelineService.kt index 8f7d4b9905..3bd67d38c3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultTimelineService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/DefaultTimelineService.kt @@ -71,7 +71,7 @@ internal class DefaultTimelineService @AssistedInject constructor(@Assisted priv return monarchy .fetchCopyMap({ TimelineEventEntity.where(it, roomId = roomId, eventId = eventId).findFirst() - }, { entity, realm -> + }, { entity, _ -> timelineEventMapper.map(entity) }) } @@ -85,5 +85,4 @@ internal class DefaultTimelineService @AssistedInject constructor(@Assisted priv events.firstOrNull().toOptional() } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/EventContextResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/EventContextResponse.kt index 782e3fe870..4dfe3e5c45 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/EventContextResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/EventContextResponse.kt @@ -32,5 +32,4 @@ data class EventContextResponse( override val events: List get() = listOf(event) - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/GetEventTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/GetEventTask.kt index 5fdee1b5af..8e097c50d9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/GetEventTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/GetEventTask.kt @@ -35,4 +35,4 @@ internal class GetEventTask @Inject constructor(private val roomAPI: RoomAPI apiCall = roomAPI.getEvent(params.roomId, params.eventId) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationDirection.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationDirection.kt index f1194ed4e7..26bbe8071d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationDirection.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationDirection.kt @@ -35,5 +35,4 @@ internal enum class PaginationDirection(val value: String) { BACKWARDS -> FORWARDS } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationResponse.kt index adcfa2dfd4..0c57373d5b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/PaginationResponse.kt @@ -26,4 +26,4 @@ internal data class PaginationResponse( @Json(name = "end") override val end: String? = null, @Json(name = "chunk") override val events: List = emptyList(), @Json(name = "state") override val stateEvents: List = emptyList() -) : TokenChunkEvent \ No newline at end of file +) : TokenChunkEvent diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineEventDecryptor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineEventDecryptor.kt index 14c044f42d..9562f57d63 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineEventDecryptor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineEventDecryptor.kt @@ -29,7 +29,6 @@ import timber.log.Timber import java.util.concurrent.ExecutorService import java.util.concurrent.Executors - internal class TimelineEventDecryptor( private val realmConfiguration: RealmConfiguration, private val timelineId: String, @@ -51,7 +50,6 @@ internal class TimelineEventDecryptor( } } } - } private var executor: ExecutorService? = null @@ -76,7 +74,7 @@ internal class TimelineEventDecryptor( synchronized(existingRequests) { if (existingRequests.contains(eventId)) { return Unit.also { - Timber.d("Skip Decryption request for event ${eventId}, already requested") + Timber.d("Skip Decryption request for event $eventId, already requested") } } existingRequests.add(eventId) @@ -84,7 +82,7 @@ internal class TimelineEventDecryptor( synchronized(unknownSessionsFailure) { unknownSessionsFailure.values.forEach { if (it.contains(eventId)) return@synchronized Unit.also { - Timber.d("Skip Decryption request for event ${eventId}, unknown session") + Timber.d("Skip Decryption request for event $eventId, unknown session") } } } @@ -96,7 +94,7 @@ internal class TimelineEventDecryptor( } private fun processDecryptRequest(eventId: String, realm: Realm) { - Timber.v("Decryption request for event ${eventId}") + Timber.v("Decryption request for event $eventId") val eventEntity = EventEntity.where(realm, eventId = eventId).findFirst() ?: return Unit.also { Timber.d("Decryption request for unknown message") @@ -104,14 +102,14 @@ internal class TimelineEventDecryptor( val event = eventEntity.asDomain() try { val result = cryptoService.decryptEvent(event, timelineId) - Timber.v("Successfully decrypted event ${eventId}") + Timber.v("Successfully decrypted event $eventId") realm.executeTransaction { eventEntity.setDecryptionResult(result) } } catch (e: MXCryptoError) { - Timber.v("Failed to decrypt event ${eventId} ${e}") + Timber.v("Failed to decrypt event $eventId $e") if (e is MXCryptoError.Base && e.errorType == MXCryptoError.ErrorType.UNKNOWN_INBOUND_SESSION_ID) { - //Keep track of unknown sessions to automatically try to decrypt on new session + // Keep track of unknown sessions to automatically try to decrypt on new session realm.executeTransaction { eventEntity.decryptionErrorCode = e.errorType.name } @@ -135,4 +133,4 @@ internal class TimelineEventDecryptor( } } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadMarker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadMarker.kt index 58097c0433..4f80883bf9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadMarker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadMarker.kt @@ -87,7 +87,6 @@ internal class TimelineHiddenReadMarker constructor(private val roomId: String, } } - /** * Start the realm query subscription. Has to be called on an HandlerThread */ @@ -105,7 +104,6 @@ internal class TimelineHiddenReadMarker constructor(private val roomId: String, .filterReceiptsWithSettings() .findAllAsync() .also { it.addChangeListener(readMarkerListener) } - } /** @@ -132,6 +130,4 @@ internal class TimelineHiddenReadMarker constructor(private val roomId: String, endGroup() return this } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadReceipts.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadReceipts.kt index 1a4958e656..1a1f90c7a3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadReceipts.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineHiddenReadReceipts.kt @@ -144,7 +144,6 @@ internal class TimelineHiddenReadReceipts constructor(private val readReceiptsSu return correctedReadReceiptsByEvent[eventId] } - /** * We are looking for receipts related to filtered events. So, it's the opposite of [DefaultTimeline.filterEventsWithSettings] method. */ @@ -162,6 +161,4 @@ internal class TimelineHiddenReadReceipts constructor(private val readReceiptsSu endGroup() return this } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineSendEventWorkCommon.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineSendEventWorkCommon.kt index 575c066243..f6f894d860 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineSendEventWorkCommon.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TimelineSendEventWorkCommon.kt @@ -22,7 +22,6 @@ import im.vector.matrix.android.internal.worker.WorkManagerUtil.matrixOneTimeWor import im.vector.matrix.android.internal.worker.startChain import java.util.concurrent.TimeUnit - private const val SEND_WORK = "SEND_WORK" private const val BACKOFF_DELAY = 10_000L @@ -74,4 +73,4 @@ internal object TimelineSendEventWorkCommon { fun cancelAllWorks(context: Context, roomId: String) { WorkManager.getInstance(context).cancelUniqueWork(buildWorkName(roomId)) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEvent.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEvent.kt index 97b8f793b3..95edf9bc49 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEvent.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEvent.kt @@ -23,4 +23,4 @@ internal interface TokenChunkEvent { val end: String? val events: List val stateEvents: List -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEventPersistor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEventPersistor.kt index 2703b5fb91..0d9fb4e9e6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEventPersistor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/timeline/TokenChunkEventPersistor.kt @@ -107,7 +107,6 @@ internal class TokenChunkEventPersistor @Inject constructor(private val monarchy suspend fun insertInDb(receivedChunk: TokenChunkEvent, roomId: String, direction: PaginationDirection): Result { - monarchy .awaitTransaction { realm -> Timber.v("Start persisting ${receivedChunk.events.size} events in $roomId towards $direction") @@ -194,7 +193,6 @@ internal class TokenChunkEventPersistor @Inject constructor(private val monarchy direction: PaginationDirection, currentChunk: ChunkEntity, otherChunk: ChunkEntity): ChunkEntity { - // We always merge the bottom chunk into top chunk, so we are always merging backwards Timber.v("Merge ${currentChunk.prevToken} | ${currentChunk.nextToken} with ${otherChunk.prevToken} | ${otherChunk.nextToken}") return if (direction == PaginationDirection.BACKWARDS && !otherChunk.isLastForward) { @@ -207,5 +205,4 @@ internal class TokenChunkEventPersistor @Inject constructor(private val monarchy otherChunk } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/tombstone/RoomTombstoneEventLiveObserver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/tombstone/RoomTombstoneEventLiveObserver.kt index d71b32ef8b..301c383a6d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/tombstone/RoomTombstoneEventLiveObserver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/room/tombstone/RoomTombstoneEventLiveObserver.kt @@ -68,9 +68,7 @@ internal class RoomTombstoneEventLiveObserver @Inject constructor(@SessionDataba predecessorRoomSummary.versioningState = VersioningState.UPGRADED_ROOM_NOT_JOINED } realm.insertOrUpdate(predecessorRoomSummary) - } } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/securestorage/SecretStoringUtils.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/securestorage/SecretStoringUtils.kt index 6192aaf148..de1c7b0479 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/securestorage/SecretStoringUtils.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/securestorage/SecretStoringUtils.kt @@ -14,6 +14,8 @@ * limitations under the License. */ +@file:Suppress("DEPRECATION") + package im.vector.matrix.android.internal.session.securestorage import android.content.Context @@ -38,7 +40,6 @@ import javax.crypto.spec.SecretKeySpec import javax.inject.Inject import javax.security.auth.x500.X500Principal - /** * Offers simple methods to securely store secrets in an Android Application. * The encryption keys are randomly generated and securely managed by the key store, thus your secrets @@ -65,7 +66,7 @@ import javax.security.auth.x500.X500Principal * //This can be stored anywhere e.g. encoded in b64 and stored in preference for example * * //to get back the secret, just call - * val kDecripted = SecretStoringUtils.loadSecureSecret(KEncrypted!!, "myAlias", context) + * val kDecrypted = SecretStoringUtils.loadSecureSecret(KEncrypted!!, "myAlias", context) * * * You can also just use this utility to store a secret key, and use any encryption algorithm that you want. @@ -148,13 +149,12 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte } } - @RequiresApi(Build.VERSION_CODES.M) private fun getOrGenerateSymmetricKeyForAliasM(alias: String): SecretKey { val secretKeyEntry = (keyStore.getEntry(alias, null) as? KeyStore.SecretKeyEntry) ?.secretKey if (secretKeyEntry == null) { - //we generate it + // we generate it val generator = KeyGenerator.getInstance(KeyProperties.KEY_ALGORITHM_AES, "AndroidKeyStore") val keyGenSpec = KeyGenParameterSpec.Builder(alias, KeyProperties.PURPOSE_ENCRYPT or KeyProperties.PURPOSE_DECRYPT) @@ -169,7 +169,7 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte } /* - Symetric Key Generation is only available in M, so before M the idea is to: + Symmetric Key Generation is only available in M, so before M the idea is to: - Generate a pair of RSA keys; - Generate a random AES key; - Encrypt the AES key using the RSA public key; @@ -190,19 +190,17 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte .setAlias(alias) .setSubject(X500Principal("CN=$alias")) .setSerialNumber(BigInteger.TEN) - //.setEncryptionRequired() requires that the phone as a pin/schema + // .setEncryptionRequired() requires that the phone as a pin/schema .setStartDate(start.time) .setEndDate(end.time) .build() - KeyPairGenerator.getInstance(KeyProperties.KEY_ALGORITHM_RSA, ANDROID_KEY_STORE).run { + KeyPairGenerator.getInstance("RSA" /*KeyProperties.KEY_ALGORITHM_RSA*/, ANDROID_KEY_STORE).run { initialize(spec) generateKeyPair() } return (keyStore.getEntry(alias, null) as KeyStore.PrivateKeyEntry) - } - @RequiresApi(Build.VERSION_CODES.M) fun encryptStringM(text: String, keyAlias: String): ByteArray? { val secretKey = getOrGenerateSymmetricKeyForAliasM(keyAlias) @@ -210,7 +208,7 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte val cipher = Cipher.getInstance(AES_MODE) cipher.init(Cipher.ENCRYPT_MODE, secretKey) val iv = cipher.iv - //we happen the iv to the final result + // we happen the iv to the final result val encryptedBytes: ByteArray = cipher.doFinal(text.toByteArray(Charsets.UTF_8)) return formatMMake(iv, encryptedBytes) } @@ -230,12 +228,12 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte @RequiresApi(Build.VERSION_CODES.KITKAT) private fun encryptStringK(text: String, keyAlias: String): ByteArray? { - //we generate a random symetric key + // we generate a random symmetric key val key = ByteArray(16) secureRandom.nextBytes(key) val sKey = SecretKeySpec(key, "AES") - //we encrypt this key thanks to the key store + // we encrypt this key thanks to the key store val encryptedKey = rsaEncrypt(keyAlias, key) val cipher = Cipher.getInstance(AES_MODE) @@ -263,7 +261,6 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte } private fun decryptForOldDevicesNotGood(data: ByteArray, keyAlias: String): String? { - val (salt, iv, encrypted) = format2Extract(ByteArrayInputStream(data)) val factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256") val spec = PBEKeySpec(keyAlias.toCharArray(), salt, 10_000, 128) @@ -282,10 +279,9 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte @RequiresApi(Build.VERSION_CODES.KITKAT) private fun decryptStringK(data: ByteArray, keyAlias: String): String? { - val (encryptedKey, iv, encrypted) = format1Extract(ByteArrayInputStream(data)) - //we need to decrypt the key + // we need to decrypt the key val sKeyBytes = rsaDecrypt(keyAlias, ByteArrayInputStream(encryptedKey)) val cipher = Cipher.getInstance(AES_MODE) val spec = if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) IvParameterSpec(iv) else GCMParameterSpec(128, iv) @@ -307,7 +303,7 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte ObjectOutputStream(bos1).use { it.writeObject(writeObject) } - //Have to do it like that if i encapsulate the outputstream, the cipher could fail saying reuse IV + // Have to do it like that if i encapsulate the output stream, the cipher could fail saying reuse IV val doFinal = cipher.doFinal(bos1.toByteArray()) output.write(FORMAT_API_M.toInt()) output.write(iv.size) @@ -317,12 +313,12 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte @RequiresApi(Build.VERSION_CODES.KITKAT) private fun saveSecureObjectK(keyAlias: String, output: OutputStream, writeObject: Any) { - //we generate a random symetric key + // we generate a random symmetric key val key = ByteArray(16) secureRandom.nextBytes(key) val sKey = SecretKeySpec(key, "AES") - //we encrypt this key thanks to the key store + // we encrypt this key thanks to the key store val encryptedKey = rsaEncrypt(keyAlias, key) val cipher = Cipher.getInstance(AES_MODE) @@ -351,7 +347,6 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte val tmp = factory.generateSecret(PBEKeySpec(keyAlias.toCharArray(), salt, 10000, 128)) val secretKey = SecretKeySpec(tmp.encoded, "AES") - val cipher = Cipher.getInstance(AES_MODE) cipher.init(Cipher.ENCRYPT_MODE, secretKey) val iv = cipher.iv @@ -360,7 +355,7 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte ObjectOutputStream(bos1).use { it.writeObject(writeObject) } - //Have to do it like that if i encapsulate the outputstream, the cipher could fail saying reuse IV + // Have to do it like that if i encapsulate the output stream, the cipher could fail saying reuse IV val doFinal = cipher.doFinal(bos1.toByteArray()) output.write(FORMAT_2.toInt()) @@ -405,19 +400,18 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte CipherInputStream(inputStream, cipher).use { cipherInputStream -> ObjectInputStream(cipherInputStream).use { val readObject = it.readObject() + @Suppress("UNCHECKED_CAST") return readObject as? T } } - } @RequiresApi(Build.VERSION_CODES.KITKAT) @Throws(IOException::class) private fun loadSecureObjectK(keyAlias: String, inputStream: InputStream): T? { - val (encryptedKey, iv, encrypted) = format1Extract(inputStream) - //we need to decrypt the key + // we need to decrypt the key val sKeyBytes = rsaDecrypt(keyAlias, ByteArrayInputStream(encryptedKey)) val cipher = Cipher.getInstance(AES_MODE) val spec = if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) IvParameterSpec(iv) else GCMParameterSpec(128, iv) @@ -428,6 +422,7 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte CipherInputStream(encIS, cipher).use { cipherInputStream -> ObjectInputStream(cipherInputStream).use { val readObject = it.readObject() + @Suppress("UNCHECKED_CAST") return readObject as? T } } @@ -440,7 +435,7 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte val factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256") val tmp = factory.generateSecret(PBEKeySpec(keyAlias.toCharArray(), salt, 10000, 128)) val sKey = SecretKeySpec(tmp.encoded, "AES") - //we need to decrypt the key + // we need to decrypt the key val cipher = Cipher.getInstance(AES_MODE) val spec = if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) IvParameterSpec(iv) else GCMParameterSpec(128, iv) @@ -449,14 +444,14 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte val encIS = ByteArrayInputStream(encrypted) CipherInputStream(encIS, cipher).use { - ObjectInputStream(it).use { - val readObject = it.readObject() + ObjectInputStream(it).use { ois -> + val readObject = ois.readObject() + @Suppress("UNCHECKED_CAST") return readObject as? T } } } - @RequiresApi(Build.VERSION_CODES.KITKAT) @Throws(Exception::class) private fun rsaEncrypt(alias: String, secret: ByteArray): ByteArray { @@ -562,4 +557,4 @@ internal class SecretStoringUtils @Inject constructor(private val context: Conte val encrypted = bis.readBytes() return Triple(salt, iv, encrypted) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/DefaultSignOutService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/DefaultSignOutService.kt index 2463a5ade5..b48ac2c78a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/DefaultSignOutService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/DefaultSignOutService.kt @@ -32,5 +32,4 @@ internal class DefaultSignOutService @Inject constructor(private val signOutTask } .executeBy(taskExecutor) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutAPI.kt index cf45c8d996..2f19fee847 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutAPI.kt @@ -27,5 +27,4 @@ internal interface SignOutAPI { */ @POST(NetworkConstants.URI_API_PREFIX_PATH_R0 + "logout") fun signOut(): Call - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutModule.kt index c123dd01ca..c55c82274d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutModule.kt @@ -41,5 +41,4 @@ internal abstract class SignOutModule { @Binds abstract fun bindSignOutService(signOutService: DefaultSignOutService): SignOutService - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutTask.kt index 68536d4f50..fbeabff0b5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/signout/SignOutTask.kt @@ -72,4 +72,4 @@ internal class DefaultSignOutTask @Inject constructor(private val context: Conte realmKeysUtils.clear(SessionModule.DB_ALIAS_PREFIX + userMd5) realmKeysUtils.clear(CryptoModule.DB_ALIAS_PREFIX + userMd5) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/CryptoSyncHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/CryptoSyncHandler.kt index 945f344036..b7ad577203 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/CryptoSyncHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/CryptoSyncHandler.kt @@ -32,7 +32,6 @@ import im.vector.matrix.android.internal.session.sync.model.ToDeviceSyncResponse import timber.log.Timber import javax.inject.Inject - internal class CryptoSyncHandler @Inject constructor(private val cryptoService: DefaultCryptoService, private val sasVerificationService: DefaultSasVerificationService) { @@ -56,7 +55,6 @@ internal class CryptoSyncHandler @Inject constructor(private val cryptoService: cryptoService.onSyncCompleted(syncResponse) } - /** * Decrypt an encrypted event * @@ -70,7 +68,7 @@ internal class CryptoSyncHandler @Inject constructor(private val cryptoService: try { result = cryptoService.decryptEvent(event, timelineId ?: "") } catch (exception: MXCryptoError) { - event.mCryptoError = (exception as? MXCryptoError.Base)?.errorType //setCryptoError(exception.cryptoError) + event.mCryptoError = (exception as? MXCryptoError.Base)?.errorType // setCryptoError(exception.cryptoError) } if (null != result) { @@ -78,7 +76,7 @@ internal class CryptoSyncHandler @Inject constructor(private val cryptoService: // payload = result.clearEvent, // keysClaimed = map // ) - //TODO persist that? + // TODO persist that? event.mxDecryptionResult = OlmDecryptionResult( payload = result.clearEvent, senderKey = result.senderCurve25519Key, @@ -92,4 +90,4 @@ internal class CryptoSyncHandler @Inject constructor(private val cryptoService: return false } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/GroupSyncHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/GroupSyncHandler.kt index 2fc733f4d5..2ca9b6cccc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/GroupSyncHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/GroupSyncHandler.kt @@ -63,7 +63,6 @@ internal class GroupSyncHandler @Inject constructor(private val monarchy: Monarc handlingStrategy.data.mapWithProgress(reporter, R.string.initial_sync_start_importing_account_groups, 0.1f) { handleLeftGroup(realm, it.key) } - } /** Note: [im.vector.matrix.android.internal.session.group.GroupSummaryUpdater] is observing changes */ @@ -82,7 +81,6 @@ internal class GroupSyncHandler @Inject constructor(private val monarchy: Monarc val groupEntity = GroupEntity.where(realm, groupId).findFirst() ?: GroupEntity(groupId) groupEntity.membership = Membership.INVITE return groupEntity - } private fun handleLeftGroup(realm: Realm, @@ -91,4 +89,4 @@ internal class GroupSyncHandler @Inject constructor(private val monarchy: Monarc groupEntity.membership = Membership.LEAVE return groupEntity } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/ReadReceiptHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/ReadReceiptHandler.kt index 192a11fa68..4dbcc7168f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/ReadReceiptHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/ReadReceiptHandler.kt @@ -25,7 +25,6 @@ import io.realm.Realm import timber.log.Timber import javax.inject.Inject - // the receipts dictionnaries // key : $EventId // value : dict key $UserId @@ -51,7 +50,6 @@ internal class ReadReceiptHandler @Inject constructor() { ) ) } - } fun handle(realm: Realm, roomId: String, content: ReadReceiptContent?, isInitialSync: Boolean) { @@ -73,7 +71,6 @@ internal class ReadReceiptHandler @Inject constructor() { } } - private fun initialSyncStrategy(realm: Realm, roomId: String, content: ReadReceiptContent) { val readReceiptSummaries = ArrayList() for ((eventId, receiptDict) in content) { @@ -113,6 +110,4 @@ internal class ReadReceiptHandler @Inject constructor() { } } } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomFullyReadHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomFullyReadHandler.kt index c052cf7146..853774460f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomFullyReadHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomFullyReadHandler.kt @@ -53,5 +53,4 @@ internal class RoomFullyReadHandler @Inject constructor() { val timelineEventEntities = TimelineEventEntity.where(realm, roomId = roomId, eventId = content.eventId).findAll() timelineEventEntities.forEach { it.readMarker = readMarkerEntity } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomSyncHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomSyncHandler.kt index 43d6462899..5fb25834c0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomSyncHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomSyncHandler.kt @@ -24,13 +24,8 @@ import im.vector.matrix.android.api.session.events.model.EventType import im.vector.matrix.android.api.session.events.model.toModel import im.vector.matrix.android.api.session.room.model.Membership import im.vector.matrix.android.api.session.room.model.tag.RoomTagContent -import im.vector.matrix.android.internal.session.room.read.FullyReadContent -import im.vector.matrix.android.internal.database.helper.add -import im.vector.matrix.android.internal.database.helper.addOrUpdate -import im.vector.matrix.android.internal.database.helper.addStateEvent -import im.vector.matrix.android.internal.database.helper.lastStateIndex -import im.vector.matrix.android.internal.database.helper.updateSenderDataFor import im.vector.matrix.android.internal.crypto.DefaultCryptoService +import im.vector.matrix.android.internal.database.helper.* import im.vector.matrix.android.internal.database.model.ChunkEntity import im.vector.matrix.android.internal.database.model.EventEntityFields import im.vector.matrix.android.internal.database.model.RoomEntity @@ -42,12 +37,9 @@ import im.vector.matrix.android.internal.session.mapWithProgress import im.vector.matrix.android.internal.session.notification.DefaultPushRuleService import im.vector.matrix.android.internal.session.notification.ProcessEventForPushTask import im.vector.matrix.android.internal.session.room.RoomSummaryUpdater +import im.vector.matrix.android.internal.session.room.read.FullyReadContent import im.vector.matrix.android.internal.session.room.timeline.PaginationDirection -import im.vector.matrix.android.internal.session.sync.model.InvitedRoomSync -import im.vector.matrix.android.internal.session.sync.model.RoomSync -import im.vector.matrix.android.internal.session.sync.model.RoomSyncAccountData -import im.vector.matrix.android.internal.session.sync.model.RoomSyncEphemeral -import im.vector.matrix.android.internal.session.sync.model.RoomsSyncResponse +import im.vector.matrix.android.internal.session.sync.model.* import im.vector.matrix.android.internal.session.user.UserEntityFactory import im.vector.matrix.android.internal.task.TaskExecutor import im.vector.matrix.android.internal.task.configureWith @@ -80,9 +72,8 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch handleRoomSync(realm, HandlingStrategy.INVITED(roomsSyncResponse.invite), isInitialSync, reporter) handleRoomSync(realm, HandlingStrategy.LEFT(roomsSyncResponse.leave), isInitialSync, reporter) } - //handle event for bing rule checks + // handle event for bing rule checks checkPushRules(roomsSyncResponse) - } private fun checkPushRules(roomsSyncResponse: RoomsSyncResponse) { @@ -90,7 +81,7 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch if (tokenStore.getLastToken() == null) { Timber.v("[PushRules] <-- No push rule check on initial sync") return - } //nothing on initial sync + } // nothing on initial sync val rules = pushRuleService.getPushRules(RuleScope.GLOBAL) processForPushTask.configureWith(ProcessEventForPushTask.Params(roomsSyncResponse, rules)) @@ -101,7 +92,6 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch // PRIVATE METHODS ***************************************************************************** private fun handleRoomSync(realm: Realm, handlingStrategy: HandlingStrategy, isInitialSync: Boolean, reporter: DefaultInitialSyncProgressService?) { - val rooms = when (handlingStrategy) { is HandlingStrategy.JOINED -> handlingStrategy.data.mapWithProgress(reporter, R.string.initial_sync_start_importing_account_joined_rooms, 0.6f) { @@ -125,8 +115,6 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch roomId: String, roomSync: RoomSync, isInitialSync: Boolean): RoomEntity { - - Timber.v("Handle join sync for room $roomId") if (roomSync.ephemeral != null && roomSync.ephemeral.events.isNotEmpty()) { @@ -204,7 +192,6 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch eventList: List, prevToken: String? = null, isLimited: Boolean = true): ChunkEntity { - val lastChunk = ChunkEntity.findLastLiveChunkFromRoom(realm, roomEntity.roomId) var stateIndexOffset = 0 val chunkEntity = if (!isLimited && lastChunk != null) { @@ -242,16 +229,15 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch return chunkEntity } - @Suppress("UNCHECKED_CAST") private fun handleEphemeral(realm: Realm, roomId: String, ephemeral: RoomSyncEphemeral, - isInitalSync: Boolean) { + isInitialSync: Boolean) { for (event in ephemeral.events) { if (event.type != EventType.RECEIPT) continue val readReceiptContent = event.content as? ReadReceiptContent ?: continue - readReceiptHandler.handle(realm, roomId, readReceiptContent, isInitalSync) + readReceiptHandler.handle(realm, roomId, readReceiptContent, isInitialSync) } } @@ -267,5 +253,4 @@ internal class RoomSyncHandler @Inject constructor(private val monarchy: Monarch } } } - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomTagHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomTagHandler.kt index 864bbce781..51e0e72ab9 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomTagHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/RoomTagHandler.kt @@ -39,5 +39,4 @@ internal class RoomTagHandler @Inject constructor() { roomSummaryEntity.tags.addAll(tags) realm.insertOrUpdate(roomSummaryEntity) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncAPI.kt index 669f556c9c..237a6fa6fd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncAPI.kt @@ -31,5 +31,4 @@ internal interface SyncAPI { @Headers("CONNECT_TIMEOUT:60000", "READ_TIMEOUT:60000", "WRITE_TIMEOUT:60000") @GET(NetworkConstants.URI_API_PREFIX_PATH_R0 + "sync") fun sync(@QueryMap params: Map): Call - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncModule.kt index 598d5f0717..c9081d1466 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncModule.kt @@ -37,5 +37,4 @@ internal abstract class SyncModule { @Binds abstract fun bindSyncTask(syncTask: DefaultSyncTask): SyncTask - } diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncResponseHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncResponseHandler.kt index 1e2bf359ec..1ae185b073 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncResponseHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncResponseHandler.kt @@ -71,7 +71,6 @@ internal class SyncResponseHandler @Inject constructor(private val roomSyncHandl Timber.v("Finish handling rooms in $it ms") } - measureTimeMillis { reportSubtask(reporter, R.string.initial_sync_start_importing_account_groups, 100, 0.1f) { Timber.v("Handle groups") @@ -97,5 +96,4 @@ internal class SyncResponseHandler @Inject constructor(private val roomSyncHandl } Timber.v("Finish handling sync in $measure ms") } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTask.kt index df4d5f3aa9..8a3bc1c046 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTask.kt @@ -32,7 +32,6 @@ import javax.inject.Inject internal interface SyncTask : Task { data class Params(var timeout: Long = 30_000L) - } internal class DefaultSyncTask @Inject constructor(private val syncAPI: SyncAPI, @@ -45,7 +44,6 @@ internal class DefaultSyncTask @Inject constructor(private val syncAPI: SyncAPI, private val getHomeServerCapabilitiesTask: GetHomeServerCapabilitiesTask ) : SyncTask { - override suspend fun execute(params: SyncTask.Params) { // Maybe refresh the home server capabilities data we know getHomeServerCapabilitiesTask.execute(Unit) @@ -83,4 +81,4 @@ internal class DefaultSyncTask @Inject constructor(private val syncAPI: SyncAPI, initialSyncProgressService.endAll() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTokenStore.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTokenStore.kt index 8823f2e38a..f56ee3352f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTokenStore.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/SyncTokenStore.kt @@ -39,6 +39,4 @@ internal class SyncTokenStore @Inject constructor(@SessionDatabase private val r } realm.close() } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/UserAccountDataSyncHandler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/UserAccountDataSyncHandler.kt index 6446efb348..56b96b428d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/UserAccountDataSyncHandler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/UserAccountDataSyncHandler.kt @@ -114,4 +114,4 @@ internal class UserAccountDataSyncHandler @Inject constructor(private val monarc updateUserAccountDataTask.configureWith(updateUserAccountParams).executeBy(taskExecutor) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncService.kt index b5d83607b2..c630f95b29 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncService.kt @@ -48,11 +48,10 @@ open class SyncService : Service() { private lateinit var networkConnectivityChecker: NetworkConnectivityChecker private lateinit var taskExecutor: TaskExecutor - var timer = Timer() override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { - Timber.i("onStartCommand ${intent}") + Timber.i("onStartCommand $intent") intent?.let { val userId = it.getStringExtra(EXTRA_USER_ID) val sessionComponent = Matrix.getInstance(applicationContext).sessionManager.getSessionComponent(userId) @@ -65,11 +64,11 @@ open class SyncService : Service() { timer = Timer() doSync(true) } else { - //Already syncing ignore + // Already syncing ignore Timber.i("Received a start while was already syncking... ignore") } } - //No intent just start the service, an alarm will should call with intent + // No intent just start the service, an alarm will should call with intent return START_STICKY } @@ -95,7 +94,7 @@ open class SyncService : Service() { fun doSync(once: Boolean = false) { if (!networkConnectivityChecker.hasInternetAccess) { Timber.v("No internet access. Waiting...") - //TODO Retry in ? + // TODO Retry in ? timer.schedule(object : TimerTask() { override fun run() { doSync() @@ -118,7 +117,7 @@ open class SyncService : Service() { } }, NEXT_BATCH_DELAY) } else { - //stop + // stop stopMe() } } @@ -169,5 +168,4 @@ open class SyncService : Service() { const val NEXT_BATCH_DELAY = 60_000L const val NO_NETWORK_DELAY = 5_000L } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncThread.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncThread.kt index f0b33809a1..d8de292d70 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncThread.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncThread.kt @@ -129,7 +129,6 @@ internal class SyncThread @Inject constructor(private val syncTask: SyncTask, this.callbackThread = TaskThread.SYNC this.executionThread = TaskThread.SYNC this.callback = object : MatrixCallback { - override fun onSuccess(data: Unit) { Timber.v("onSuccess") latch.countDown() @@ -184,7 +183,6 @@ internal class SyncThread @Inject constructor(private val syncTask: SyncTask, liveState.postValue(newState) } - override fun onMoveToForeground() { restart() } @@ -192,7 +190,4 @@ internal class SyncThread @Inject constructor(private val syncTask: SyncTask, override fun onMoveToBackground() { pause() } - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncWorker.kt index b5d7118b81..b5177172d0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/job/SyncWorker.kt @@ -30,7 +30,6 @@ import timber.log.Timber import java.util.concurrent.TimeUnit import javax.inject.Inject - private const val DEFAULT_LONG_POOL_TIMEOUT = 0L internal class SyncWorker(context: Context, @@ -88,5 +87,4 @@ internal class SyncWorker(context: Context, WorkManager.getInstance(context).cancelUniqueWork("BG_SYNCP") } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceInfo.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceInfo.kt index 0704c4236b..e91e2d0707 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceInfo.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceInfo.kt @@ -17,7 +17,6 @@ package im.vector.matrix.android.internal.session.sync.model import com.squareup.moshi.JsonClass - /** * This class describes the device information */ diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceListResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceListResponse.kt index a6b2e4ab5d..9a7dd80572 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceListResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceListResponse.kt @@ -27,4 +27,3 @@ internal data class DeviceListResponse( // List of user ids who are no more tracked. val left: List = emptyList() ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceOneTimeKeysCountSyncResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceOneTimeKeysCountSyncResponse.kt index c1d9e0a13b..15df103e37 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceOneTimeKeysCountSyncResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/DeviceOneTimeKeysCountSyncResponse.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) internal data class DeviceOneTimeKeysCountSyncResponse( @Json(name = "signed_curve25519") val signedCurve25519: Int? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupSyncProfile.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupSyncProfile.kt index 82c0b590bb..6d31e84d61 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupSyncProfile.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupSyncProfile.kt @@ -30,4 +30,4 @@ internal data class GroupSyncProfile( * The URL for the group's avatar. May be nil. */ @Json(name = "avatar_url") var avatarUrl: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupsSyncResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupsSyncResponse.kt index c296bd2ae8..c0a10c9667 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupsSyncResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/GroupsSyncResponse.kt @@ -35,4 +35,4 @@ internal data class GroupsSyncResponse( * Left groups. An array of groups ids: the groups that the user has left or been banned from. */ @Json(name = "leave") val leave: Map = emptyMap() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedGroupSync.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedGroupSync.kt index fe61b4e440..128fcfad84 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedGroupSync.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedGroupSync.kt @@ -30,4 +30,4 @@ internal data class InvitedGroupSync( * The group profile. */ @Json(name = "profile") val profile: GroupSyncProfile? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedRoomSync.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedRoomSync.kt index a5124e707e..9e39a323cd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedRoomSync.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/InvitedRoomSync.kt @@ -30,4 +30,4 @@ internal data class InvitedRoomSync( * archived 'state' not the 'invite_state'. */ @Json(name = "invite_state") val inviteState: RoomInviteState? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/PresenceSyncResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/PresenceSyncResponse.kt index 71d997fe03..bbcb7badf0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/PresenceSyncResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/PresenceSyncResponse.kt @@ -27,4 +27,4 @@ internal data class PresenceSyncResponse( * List of presence events (array of Event with type m.presence). */ val events: List? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomInviteState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomInviteState.kt index 4fe6a31a9d..a9447caf06 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomInviteState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomInviteState.kt @@ -15,7 +15,6 @@ */ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event @@ -28,4 +27,4 @@ internal data class RoomInviteState( * List of state events (array of MXEvent). */ @Json(name = "events") val events: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomResponse.kt index aff709893f..453bd29c0b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomResponse.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSync.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSync.kt index ac36708374..2dd974f019 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSync.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSync.kt @@ -51,5 +51,4 @@ internal data class RoomSync( */ @Json(name = "summary") val summary: RoomSyncSummary? = null - -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncAccountData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncAccountData.kt index 6c2e79f1b4..50bebc1713 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncAccountData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncAccountData.kt @@ -26,4 +26,4 @@ internal data class RoomSyncAccountData( * List of account data events (array of Event). */ @Json(name = "events") val events: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncEphemeral.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncEphemeral.kt index 040c21fc6e..2342ce2e7f 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncEphemeral.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncEphemeral.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event @@ -28,4 +27,4 @@ internal data class RoomSyncEphemeral( * List of ephemeral events (array of Event). */ @Json(name = "events") val events: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncState.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncState.kt index a760ef2e79..589cffa0e0 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncState.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncState.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncSummary.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncSummary.kt index 4a60a11c1f..c0f4eade70 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncSummary.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncSummary.kt @@ -19,7 +19,6 @@ package im.vector.matrix.android.internal.session.sync.model import com.squareup.moshi.Json import com.squareup.moshi.JsonClass - @JsonClass(generateAdapter = true) internal data class RoomSyncSummary( @@ -45,4 +44,4 @@ internal data class RoomSyncSummary( * The number of m.room.members in state 'invited' (can be null) */ @Json(name = "m.invited_member_count") val invitedMembersCount: Int? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncTimeline.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncTimeline.kt index 886a30d259..cd22ea75cd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncTimeline.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncTimeline.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event @@ -39,4 +38,4 @@ internal data class RoomSyncTimeline( * If the batch was limited then this is a token that can be supplied to the server to retrieve more events */ @Json(name = "prev_batch") val prevToken: String? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncUnreadNotifications.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncUnreadNotifications.kt index 5ec8f4b604..a29b893e82 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncUnreadNotifications.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomSyncUnreadNotifications.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event @@ -39,4 +38,4 @@ internal data class RoomSyncUnreadNotifications( /** * The number of highlighted unread messages (subset of notifications). */ - @Json(name = "highlight_count") val highlightCount: Int? = null) \ No newline at end of file + @Json(name = "highlight_count") val highlightCount: Int? = null) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomsSyncResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomsSyncResponse.kt index 84ed6dfe50..9bd83ae25a 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomsSyncResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/RoomsSyncResponse.kt @@ -35,4 +35,4 @@ internal data class RoomsSyncResponse( * Left rooms. The rooms that the user has left or been banned from: keys are rooms ids. */ @Json(name = "leave") val leave: Map = emptyMap() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/SyncResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/SyncResponse.kt index dc05a45f80..d084dcdadd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/SyncResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/SyncResponse.kt @@ -58,11 +58,9 @@ internal data class SyncResponse( @Json(name = "device_one_time_keys_count") val deviceOneTimeKeysCount: DeviceOneTimeKeysCountSyncResponse? = null, - /** * List of groups. */ @Json(name = "groups") val groups: GroupsSyncResponse? = null - -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/ToDeviceSyncResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/ToDeviceSyncResponse.kt index 86b685d367..382d2a804b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/ToDeviceSyncResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/ToDeviceSyncResponse.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.session.sync.model - import com.squareup.moshi.JsonClass import im.vector.matrix.android.api.session.events.model.Event @@ -28,4 +27,4 @@ internal data class ToDeviceSyncResponse( * List of direct-to-device events. */ val events: List? = null -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountData.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountData.kt index 1362eb9171..2173d2f4df 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountData.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountData.kt @@ -25,4 +25,4 @@ internal interface UserAccountData { const val TYPE_WIDGETS = "m.widgets" const val TYPE_PUSH_RULES = "m.push_rules" } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataDirectMessages.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataDirectMessages.kt index 2ee1088d84..825a16cb1e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataDirectMessages.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataDirectMessages.kt @@ -23,4 +23,3 @@ import com.squareup.moshi.JsonClass internal data class UserAccountDataDirectMessages( @Json(name = "content") val content: Map> ) : UserAccountData - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataPushRules.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataPushRules.kt index e2bd12f79b..7f357c876b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataPushRules.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataPushRules.kt @@ -24,4 +24,3 @@ import im.vector.matrix.android.api.pushrules.rest.GetPushRulesResponse internal data class UserAccountDataPushRules( @Json(name = "content") val content: GetPushRulesResponse ) : UserAccountData - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataSync.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataSync.kt index 3d6131b3bf..4b9e9d652d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataSync.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/sync/model/UserAccountDataSync.kt @@ -22,4 +22,4 @@ import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) internal data class UserAccountDataSync( @Json(name = "events") val list: List = emptyList() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/DefaultUserService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/DefaultUserService.kt index 982fd03cb0..be330bfc36 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/DefaultUserService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/DefaultUserService.kt @@ -106,7 +106,6 @@ internal class DefaultUserService @Inject constructor(private val monarchy: Mona return monarchy.findAllPagedWithChanges(realmDataSourceFactory, livePagedListBuilder) } - override fun searchUsersDirectory(search: String, limit: Int, excludedUserIds: Set, diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/SearchUserAPI.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/SearchUserAPI.kt index aa4d50df59..e57daed617 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/SearchUserAPI.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/SearchUserAPI.kt @@ -18,7 +18,7 @@ package im.vector.matrix.android.internal.session.user import im.vector.matrix.android.internal.network.NetworkConstants.URI_API_PREFIX_PATH_R0 import im.vector.matrix.android.internal.session.user.model.SearchUsersParams -import im.vector.matrix.android.internal.session.user.model.SearchUsersRequestResponse +import im.vector.matrix.android.internal.session.user.model.SearchUsersResponse import retrofit2.Call import retrofit2.http.Body import retrofit2.http.POST @@ -31,5 +31,5 @@ internal interface SearchUserAPI { * @param searchUsersParams the search params. */ @POST(URI_API_PREFIX_PATH_R0 + "user_directory/search") - fun searchUsers(@Body searchUsersParams: SearchUsersParams): Call -} \ No newline at end of file + fun searchUsers(@Body searchUsersParams: SearchUsersParams): Call +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserEntityFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserEntityFactory.kt index 7873bf2f98..2ded32b7db 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserEntityFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserEntityFactory.kt @@ -39,6 +39,4 @@ internal object UserEntityFactory { roomMember.avatarUrl ?: "" ) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserModule.kt index a31dc137c8..a997c616f3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/UserModule.kt @@ -43,5 +43,4 @@ internal abstract class UserModule { @Binds abstract fun bindSearchUserTask(searchUserTask: DefaultSearchUserTask): SearchUserTask - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/AccountDataModule.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/AccountDataModule.kt index 850312d8be..49fe8caf8e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/AccountDataModule.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/AccountDataModule.kt @@ -32,10 +32,8 @@ internal abstract class AccountDataModule { fun providesAccountDataAPI(retrofit: Retrofit): AccountDataAPI { return retrofit.create(AccountDataAPI::class.java) } - } @Binds abstract fun bindUpdateUserAccountDataTask(updateUserAccountDataTask: DefaultUpdateUserAccountDataTask): UpdateUserAccountDataTask - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/DirectChatsHelper.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/DirectChatsHelper.kt index b4b143878c..cfb8a48038 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/DirectChatsHelper.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/DirectChatsHelper.kt @@ -45,6 +45,4 @@ internal class DirectChatsHelper @Inject constructor(@SessionDatabase directChatsMap } } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/UpdateUserAccountDataTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/UpdateUserAccountDataTask.kt index aaa82efef0..5c0dac1125 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/UpdateUserAccountDataTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/accountdata/UpdateUserAccountDataTask.kt @@ -37,8 +37,6 @@ internal interface UpdateUserAccountDataTask : Task> { internal class DefaultSearchUserTask @Inject constructor(private val searchUserAPI: SearchUserAPI) : SearchUserTask { override suspend fun execute(params: SearchUserTask.Params): List { - val response = executeRequest { + val response = executeRequest { apiCall = searchUserAPI.searchUsers(SearchUsersParams(params.search, params.limit)) } return response.users.map { User(it.userId, it.displayName, it.avatarUrl) } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/model/SearchUsersResponse.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/model/SearchUsersResponse.kt index b0a8f93720..c324fdd8cf 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/model/SearchUsersResponse.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/user/model/SearchUsersResponse.kt @@ -1,3 +1,19 @@ +/* + * Copyright 2019 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package im.vector.matrix.android.internal.session.user.model import com.squareup.moshi.Json @@ -7,8 +23,7 @@ import com.squareup.moshi.JsonClass * Class representing an users search response */ @JsonClass(generateAdapter = true) -internal data class SearchUsersRequestResponse( +internal data class SearchUsersResponse( @Json(name = "limited") val limited: Boolean = false, @Json(name = "results") val users: List = emptyList() ) - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/ConfigurableTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/ConfigurableTask.kt index 6896fe68b0..366f4e3d30 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/ConfigurableTask.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/ConfigurableTask.kt @@ -42,7 +42,6 @@ internal data class ConfigurableTask( ) : Task by task { - class Builder( private val task: Task, private val params: PARAMS, @@ -73,7 +72,4 @@ internal data class ConfigurableTask( override fun toString(): String { return "${task.javaClass.name} with ID: $id" } - } - - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/Task.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/Task.kt index be761fdbdc..de0f3dfbdd 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/Task.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/Task.kt @@ -19,6 +19,4 @@ package im.vector.matrix.android.internal.task internal interface Task { suspend fun execute(params: PARAMS): RESULT - } - diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskConstraints.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskConstraints.kt index 18733d6ebf..d259576a11 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskConstraints.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskConstraints.kt @@ -19,4 +19,4 @@ package im.vector.matrix.android.internal.task data class TaskConstraints( val connectedToNetwork: Boolean = false -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskExecutor.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskExecutor.kt index c3f08b15ac..14e546e0d6 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskExecutor.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskExecutor.kt @@ -16,7 +16,6 @@ package im.vector.matrix.android.internal.task - import im.vector.matrix.android.api.util.Cancelable import im.vector.matrix.android.internal.di.MatrixScope import im.vector.matrix.android.internal.extensions.foldToCallback @@ -35,7 +34,6 @@ internal class TaskExecutor @Inject constructor(private val coroutineDispatchers private val executorScope = CoroutineScope(SupervisorJob()) fun execute(task: ConfigurableTask): Cancelable { - val job = executorScope.launch(task.callbackThread.toDispatcher()) { val resultOrFailure = runCatching { withContext(task.executionThread.toDispatcher()) { @@ -61,14 +59,12 @@ internal class TaskExecutor @Inject constructor(private val coroutineDispatchers fun cancelAll() = executorScope.coroutineContext.cancelChildren() - private suspend fun retry( times: Int = Int.MAX_VALUE, initialDelay: Long = 100, // 0.1 second maxDelay: Long = 10_000, // 10 second factor: Double = 2.0, block: suspend () -> T): T { - var currentDelay = initialDelay repeat(times - 1) { try { @@ -90,6 +86,4 @@ internal class TaskExecutor @Inject constructor(private val coroutineDispatchers TaskThread.CRYPTO -> coroutineDispatchers.crypto TaskThread.SYNC -> coroutineDispatchers.sync } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskThread.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskThread.kt index 659fd3dd9d..16ed93662c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskThread.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/task/TaskThread.kt @@ -23,4 +23,4 @@ internal enum class TaskThread { CALLER, CRYPTO, SYNC -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/BackgroundDetectionObserver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/BackgroundDetectionObserver.kt index 9318b10717..d89b732a0d 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/BackgroundDetectionObserver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/BackgroundDetectionObserver.kt @@ -61,5 +61,4 @@ internal class BackgroundDetectionObserver @Inject constructor() : LifecycleObse fun onMoveToForeground() fun onMoveToBackground() } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableCoroutine.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableCoroutine.kt index 97b8cd0e29..71e2d3fdb2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableCoroutine.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableCoroutine.kt @@ -26,5 +26,4 @@ internal class CancelableCoroutine(private val job: Job) : Cancelable { job.cancel() } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableWork.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableWork.kt index ddaeb1fd9d..bff20a80e7 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableWork.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CancelableWork.kt @@ -27,5 +27,4 @@ internal class CancelableWork(private val context: Context, override fun cancel() { WorkManager.getInstance(context).cancelWorkById(workId) } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CompatUtil.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CompatUtil.kt index d0a5f2f82f..2e71d6b2fc 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CompatUtil.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/CompatUtil.kt @@ -14,6 +14,8 @@ * limitations under the License. */ +@file:Suppress("DEPRECATION") + package im.vector.matrix.android.internal.util import android.content.Context @@ -34,7 +36,7 @@ import java.security.* import java.security.cert.CertificateException import java.security.spec.AlgorithmParameterSpec import java.security.spec.RSAKeyGenParameterSpec -import java.util.Calendar +import java.util.* import java.util.zip.GZIPOutputStream import javax.crypto.* import javax.crypto.spec.GCMParameterSpec @@ -238,15 +240,11 @@ object CompatUtil { KeyStoreException::class, IllegalBlockSizeException::class) fun createCipherOutputStream(out: OutputStream, context: Context): OutputStream? { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) { return out } val keyAndVersion = getAesGcmLocalProtectionKey(context) - if (keyAndVersion == null || keyAndVersion.secretKey == null) { - throw KeyStoreException() - } val cipher = Cipher.getInstance(AES_GCM_CIPHER_TYPE) val iv: ByteArray @@ -261,7 +259,7 @@ object CompatUtil { } if (iv.size != AES_GCM_IV_LENGTH) { - Timber.e(TAG, "Invalid IV length " + iv.size) + Timber.e(TAG, "Invalid IV length ${iv.size}") return null } @@ -307,16 +305,11 @@ object CompatUtil { val cipher = Cipher.getInstance(AES_GCM_CIPHER_TYPE) val keyAndVersion = getAesGcmLocalProtectionKey(context) - if (keyAndVersion == null || keyAndVersion.secretKey == null) { - throw KeyStoreException() - } - val spec: AlgorithmParameterSpec - - if (keyAndVersion.androidVersionWhenTheKeyHasBeenGenerated >= Build.VERSION_CODES.M) { - spec = GCMParameterSpec(AES_GCM_KEY_SIZE_IN_BITS, iv) + val spec: AlgorithmParameterSpec = if (keyAndVersion.androidVersionWhenTheKeyHasBeenGenerated >= Build.VERSION_CODES.M) { + GCMParameterSpec(AES_GCM_KEY_SIZE_IN_BITS, iv) } else { - spec = IvParameterSpec(iv) + IvParameterSpec(iv) } cipher.init(Cipher.DECRYPT_MODE, keyAndVersion.secretKey, spec) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Debouncer.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Debouncer.kt index 8ecd72d90e..6a294d8d6c 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Debouncer.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Debouncer.kt @@ -40,4 +40,4 @@ internal class Debouncer(private val handler: Handler) { runnables[identifier] = chained handler.postDelayed(chained, millis) } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/FileSaver.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/FileSaver.kt index 7744aa4ec7..562a32d7bb 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/FileSaver.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/FileSaver.kt @@ -33,4 +33,4 @@ fun writeToFile(inputStream: InputStream, outputFile: File) { output.writeAll(input) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Handler.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Handler.kt index e723a908cc..5db1c46dd3 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Handler.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/Handler.kt @@ -26,4 +26,4 @@ internal fun createBackgroundHandler(name: String): Handler = Handler( internal fun createUIHandler(): Handler = Handler( Looper.getMainLooper() -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/JsonCanonicalizer.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/JsonCanonicalizer.kt index 1e7135e0de..e35dff5367 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/JsonCanonicalizer.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/JsonCanonicalizer.kt @@ -92,5 +92,4 @@ object JsonCanonicalizer { else -> return any.toString() } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/LiveDataUtils.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/LiveDataUtils.kt index 952f12fde1..75fae162a5 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/LiveDataUtils.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/LiveDataUtils.kt @@ -24,7 +24,6 @@ object LiveDataUtils { fun combine(firstSource: LiveData, secondSource: LiveData, mapper: (FIRST, SECOND) -> OUT): LiveData { - return MediatorLiveData().apply { var firstValue: FIRST? = null var secondValue: SECOND? = null @@ -38,7 +37,6 @@ object LiveDataUtils { } } - addSource(firstSource) { firstValue = it valueDispatcher() @@ -50,5 +48,4 @@ object LiveDataUtils { } } } - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/MatrixCoroutineDispatchers.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/MatrixCoroutineDispatchers.kt index ef0c91a327..23201c084e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/MatrixCoroutineDispatchers.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/MatrixCoroutineDispatchers.kt @@ -24,4 +24,4 @@ internal data class MatrixCoroutineDispatchers( val main: CoroutineDispatcher, val crypto: CoroutineDispatcher, val sync: CoroutineDispatcher -) \ No newline at end of file +) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringProvider.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringProvider.kt index a90538656f..6cba29ceec 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringProvider.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringProvider.kt @@ -53,6 +53,4 @@ internal class StringProvider @Inject constructor(private val resources: Resourc fun getString(@StringRes resId: Int, vararg formatArgs: Any?): String { return resources.getString(resId, *formatArgs) } - - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringUtils.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringUtils.kt index a277498526..4a46a43f03 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringUtils.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/StringUtils.kt @@ -18,6 +18,7 @@ package im.vector.matrix.android.internal.util import im.vector.matrix.android.api.MatrixPatterns import timber.log.Timber +import java.util.* /** * Convert a string to an UTF8 String @@ -25,13 +26,13 @@ import timber.log.Timber * @param s the string to convert * @return the utf-8 string */ -fun convertToUTF8(s: String): String? { +fun convertToUTF8(s: String): String { return try { val bytes = s.toByteArray(Charsets.UTF_8) String(bytes) } catch (e: Exception) { Timber.e(e, "## convertToUTF8() failed") - null + s } } @@ -41,13 +42,13 @@ fun convertToUTF8(s: String): String? { * @param s the string to convert * @return the utf-16 string */ -fun convertFromUTF8(s: String): String? { +fun convertFromUTF8(s: String): String { return try { val bytes = s.toByteArray() String(bytes, Charsets.UTF_8) } catch (e: Exception) { Timber.e(e, "## convertFromUTF8() failed") - null + s } } @@ -55,5 +56,5 @@ fun String?.firstLetterOfDisplayName(): String { if (this.isNullOrEmpty()) return "" val isUserId = MatrixPatterns.isUserId(this) val firstLetterIndex = if (isUserId) 1 else 0 - return this[firstLetterIndex].toString().toUpperCase() -} \ No newline at end of file + return this[firstLetterIndex].toString().toUpperCase(Locale.ROOT) +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/SuspendMatrixCallback.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/SuspendMatrixCallback.kt index 801578ac86..e76137d0c2 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/SuspendMatrixCallback.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/util/SuspendMatrixCallback.kt @@ -32,4 +32,4 @@ suspend inline fun awaitCallback(crossinline callback: (MatrixCallback) - cont.resume(data) } }) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/AlwaysSuccessfulWorker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/AlwaysSuccessfulWorker.kt index c0cae10d8e..136e84d945 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/AlwaysSuccessfulWorker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/AlwaysSuccessfulWorker.kt @@ -25,4 +25,4 @@ internal class AlwaysSuccessfulWorker(context: Context, params: WorkerParameters override fun doWork(): Result { return Result.success() } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/DelegateWorkerFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/DelegateWorkerFactory.kt index fa38504935..2029596b0b 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/DelegateWorkerFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/DelegateWorkerFactory.kt @@ -23,5 +23,4 @@ import androidx.work.WorkerParameters interface DelegateWorkerFactory { fun create(context: Context, params: WorkerParameters): ListenableWorker - -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkManagerUtil.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkManagerUtil.kt index 56516dbda0..27ec28dcac 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkManagerUtil.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkManagerUtil.kt @@ -46,4 +46,4 @@ internal object WorkManagerUtil { it.pruneWork() } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/Worker.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/Worker.kt index 4a4b5e3b29..58abd10e81 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/Worker.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/Worker.kt @@ -22,4 +22,4 @@ import im.vector.matrix.android.internal.session.SessionComponent internal fun ListenableWorker.getSessionComponent(userId: String): SessionComponent? { return Matrix.getInstance(applicationContext).sessionManager.getSessionComponent(userId) -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkerParamsFactory.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkerParamsFactory.kt index 87d17b9cea..03a6d78c98 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkerParamsFactory.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/worker/WorkerParamsFactory.kt @@ -40,4 +40,4 @@ object WorkerParamsFactory { adapter.fromJson(json) } } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushRuleActionsTest.kt b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushRuleActionsTest.kt index 0de80ea436..f98af53333 100644 --- a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushRuleActionsTest.kt +++ b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushRuleActionsTest.kt @@ -21,7 +21,6 @@ import im.vector.matrix.android.internal.di.MoshiProvider import org.junit.Assert import org.junit.Test - class PushRuleActionsTest { @Test @@ -62,7 +61,6 @@ class PushRuleActionsTest { } """.trimIndent() - val pushRule = MoshiProvider.providesMoshi().adapter(PushRule::class.java).fromJson(rawPushRule) Assert.assertNotNull("Should have parsed the rule", pushRule) @@ -71,20 +69,16 @@ class PushRuleActionsTest { val actions = Action.mapFrom(pushRule) Assert.assertEquals(3, actions!!.size) - Assert.assertEquals("First action should be notify", Action.Type.NOTIFY, actions[0].type) - Assert.assertEquals("Second action should be tweak", Action.Type.SET_TWEAK, actions[1].type) Assert.assertEquals("Second action tweak key should be sound", "sound", actions[1].tweak_action) Assert.assertEquals("Second action should have default as stringValue", "default", actions[1].stringValue) Assert.assertNull("Second action boolValue should be null", actions[1].boolValue) - Assert.assertEquals("Third action should be tweak", Action.Type.SET_TWEAK, actions[2].type) Assert.assertEquals("Third action tweak key should be highlight", "highlight", actions[2].tweak_action) Assert.assertEquals("Third action tweak param should be false", false, actions[2].boolValue) Assert.assertNull("Third action stringValue should be null", actions[2].stringValue) - } -} \ No newline at end of file +} diff --git a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt index 47e1571e54..36aded79ad 100644 --- a/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt +++ b/matrix-sdk-android/src/test/java/im/vector/matrix/android/api/pushrules/PushrulesConditionTest.kt @@ -88,7 +88,6 @@ class PushrulesConditionTest { ).apply { assert(EventMatchCondition("content.membership", "invite").isSatisfied(this)) } - } @Test @@ -112,7 +111,6 @@ class PushrulesConditionTest { ).apply { assert(condition.isSatisfied(this)) } - } @Test @@ -128,11 +126,8 @@ class PushrulesConditionTest { assert(condition.isSatisfied(simpleTextEvent)) } - @Test fun test_roommember_condition() { - - val conditionEqual3 = RoomMemberCountCondition("3") val conditionEqual3Bis = RoomMemberCountCondition("==3") val conditionLessThan3 = RoomMemberCountCondition("<3") @@ -162,7 +157,6 @@ class PushrulesConditionTest { } } - @Test fun test_notice_condition() { val conditionEqual = EventMatchCondition("content.msgtype", "m.notice") @@ -177,15 +171,14 @@ class PushrulesConditionTest { } } - class MockRoomService() : RoomService { override fun createRoom(createRoomParams: CreateRoomParams, callback: MatrixCallback): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun joinRoom(roomId: String, viaServers: List, callback: MatrixCallback): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getRoom(roomId: String): Room? { @@ -203,174 +196,171 @@ class PushrulesConditionTest { class MockRoom(override val roomId: String, val _numberOfJoinedMembers: Int) : Room { override fun resendTextMessage(localEcho: TimelineEvent): Cancelable? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun resendMediaMessage(localEcho: TimelineEvent): Cancelable? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun deleteFailedEcho(localEcho: TimelineEvent) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun clearSendingQueue() { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun resendAllFailedMessages() { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun saveDraft(draft: UserDraft) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun deleteDraft() { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getDraftsLive(): LiveData> { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getEventReadReceiptsLive(eventId: String): LiveData> { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getStateEvent(eventType: String): Event? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun editReply(replyToEdit: TimelineEvent, originalTimelineEvent: TimelineEvent, newBodyText: String, compatibilityBodyText: String): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun fetchEditHistory(eventId: String, callback: MatrixCallback>) { } override fun liveTimeLineEvent(eventId: String): LiveData { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } - override fun getNumberOfJoinedMembers(): Int { return _numberOfJoinedMembers } override fun liveRoomSummary(): LiveData { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun roomSummary(): RoomSummary? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun createTimeline(eventId: String?, settings: TimelineSettings): Timeline { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getTimeLineEvent(eventId: String): TimelineEvent? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun sendTextMessage(text: String, msgType: String, autoMarkdown: Boolean): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun sendFormattedTextMessage(text: String, formattedText: String): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun sendMedia(attachment: ContentAttachmentData): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun sendMedias(attachments: List): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun redactEvent(event: Event, reason: String?): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun markAllAsRead(callback: MatrixCallback) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun setReadReceipt(eventId: String, callback: MatrixCallback) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun setReadMarker(fullyReadEventId: String, callback: MatrixCallback) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun isEventRead(eventId: String): Boolean { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun loadRoomMembersIfNeeded(matrixCallback: MatrixCallback): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getRoomMember(userId: String): RoomMember? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getRoomMemberIdsLive(): LiveData> { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun invite(userId: String, callback: MatrixCallback): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun join(viaServers: List, callback: MatrixCallback): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun leave(callback: MatrixCallback): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun updateTopic(topic: String, callback: MatrixCallback) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun sendReaction(reaction: String, targetEventId: String): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun undoReaction(reaction: String, targetEventId: String, myUserId: String) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun editTextMessage(targetEventId: String, msgType: String, newBodyText: String, newBodyAutoMarkdown: Boolean, compatibilityBodyText: String): Cancelable { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun replyToMessage(eventReplied: TimelineEvent, replyText: String, autoMarkdown: Boolean): Cancelable? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun getEventSummaryLive(eventId: String): LiveData { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun isEncrypted(): Boolean { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun encryptionAlgorithm(): String? { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } override fun shouldEncryptForInvitedMembers(): Boolean { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + TODO("not implemented") // To change body of created functions use File | Settings | File Templates. } - } - } diff --git a/vector/build.gradle b/vector/build.gradle index 70be341557..7273cb6123 100644 --- a/vector/build.gradle +++ b/vector/build.gradle @@ -288,9 +288,6 @@ dependencies { implementation 'me.saket:better-link-movement-method:2.2.0' implementation 'com.google.android:flexbox:1.1.1' - // Bus - implementation 'org.greenrobot:eventbus:3.1.1' - // Passphrase strength helper implementation 'com.nulab-inc:zxcvbn:1.2.7' diff --git a/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeDarkActivity.kt b/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeDarkActivity.kt index 83c3266c00..f925c7b2c3 100644 --- a/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeDarkActivity.kt +++ b/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeDarkActivity.kt @@ -16,4 +16,4 @@ package im.vector.riotx.features.debug -class DebugMaterialThemeDarkActivity : DebugMaterialThemeActivity() \ No newline at end of file +class DebugMaterialThemeDarkActivity : DebugMaterialThemeActivity() diff --git a/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeLightActivity.kt b/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeLightActivity.kt index d7e6fd1f79..1602bb0553 100644 --- a/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeLightActivity.kt +++ b/vector/src/debug/java/im/vector/riotx/features/debug/DebugMaterialThemeLightActivity.kt @@ -16,4 +16,4 @@ package im.vector.riotx.features.debug -class DebugMaterialThemeLightActivity : DebugMaterialThemeActivity() \ No newline at end of file +class DebugMaterialThemeLightActivity : DebugMaterialThemeActivity() diff --git a/vector/src/debug/java/im/vector/riotx/features/debug/DebugMenuActivity.kt b/vector/src/debug/java/im/vector/riotx/features/debug/DebugMenuActivity.kt index 30b01aa9a5..bfb9f0654e 100644 --- a/vector/src/debug/java/im/vector/riotx/features/debug/DebugMenuActivity.kt +++ b/vector/src/debug/java/im/vector/riotx/features/debug/DebugMenuActivity.kt @@ -27,7 +27,6 @@ import butterknife.OnClick import im.vector.riotx.R import im.vector.riotx.core.platform.VectorBaseActivity - class DebugMenuActivity : VectorBaseActivity() { override fun getLayoutRes() = R.layout.activity_debug_menu @@ -64,7 +63,6 @@ class DebugMenuActivity : VectorBaseActivity() { (getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager).createNotificationChannel(channel2) } - val builder = NotificationCompat.Builder(this, "CHAN") .setWhen(System.currentTimeMillis()) .setContentTitle("Title") @@ -92,7 +90,6 @@ class DebugMenuActivity : VectorBaseActivity() { .addMessage("Message 2 - 1", System.currentTimeMillis(), Person.Builder().setName("user 1-1").build()) .addMessage("Message 2 - 2", System.currentTimeMillis(), Person.Builder().setName("user 1-2").build()) - notificationManager.notify(10, builder.build()) notificationManager.notify( @@ -137,6 +134,4 @@ class DebugMenuActivity : VectorBaseActivity() { fun testCrash() { throw RuntimeException("Application crashed from user demand") } - } - diff --git a/vector/src/debug/java/im/vector/riotx/features/debug/TestLinkifyActivity.kt b/vector/src/debug/java/im/vector/riotx/features/debug/TestLinkifyActivity.kt index b91f5db728..6af4317094 100644 --- a/vector/src/debug/java/im/vector/riotx/features/debug/TestLinkifyActivity.kt +++ b/vector/src/debug/java/im/vector/riotx/features/debug/TestLinkifyActivity.kt @@ -27,7 +27,6 @@ import butterknife.BindView import butterknife.ButterKnife import im.vector.riotx.R - class TestLinkifyActivity : AppCompatActivity() { @BindView(R.id.test_linkify_content_view) @@ -36,7 +35,6 @@ class TestLinkifyActivity : AppCompatActivity() { @BindView(R.id.test_linkify_coordinator) lateinit var coordinatorLayout: CoordinatorLayout - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_test_linkify) diff --git a/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestAutoStartBoot.kt b/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestAutoStartBoot.kt index fa4b8aa375..3cbd6699fd 100644 --- a/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestAutoStartBoot.kt +++ b/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestAutoStartBoot.kt @@ -44,4 +44,4 @@ class TestAutoStartBoot @Inject constructor(private val vectorPreferences: Vecto status = TestStatus.FAILED } } -} \ No newline at end of file +} diff --git a/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBackgroundRestrictions.kt b/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBackgroundRestrictions.kt index ee6c00993b..67ca2627bc 100644 --- a/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBackgroundRestrictions.kt +++ b/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBackgroundRestrictions.kt @@ -58,9 +58,7 @@ class TestBackgroundRestrictions @Inject constructor(private val context: AppCom status = TestStatus.SUCCESS quickFix = null } - } - } else { // The device is not on a metered network. // Use data as required to perform syncs, downloads, and updates. @@ -70,5 +68,4 @@ class TestBackgroundRestrictions @Inject constructor(private val context: AppCom } } } - -} \ No newline at end of file +} diff --git a/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBatteryOptimization.kt b/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBatteryOptimization.kt index 041f392c46..4d18beac8f 100644 --- a/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBatteryOptimization.kt +++ b/vector/src/fdroid/java/im/vector/riotx/fdroid/features/settings/troubleshoot/TestBatteryOptimization.kt @@ -26,7 +26,6 @@ import im.vector.riotx.features.settings.troubleshoot.TroubleshootTest class TestBatteryOptimization(val fragment: Fragment) : TroubleshootTest(R.string.settings_troubleshoot_test_battery_title) { override fun perform() { - if (fragment.context != null && isIgnoringBatteryOptimizations(fragment.context!!)) { description = fragment.getString(R.string.settings_troubleshoot_test_battery_success) status = TestStatus.SUCCESS @@ -43,5 +42,4 @@ class TestBatteryOptimization(val fragment: Fragment) : TroubleshootTest(R.strin status = TestStatus.FAILED } } - -} \ No newline at end of file +} diff --git a/vector/src/fdroid/java/im/vector/riotx/fdroid/package-info.kt b/vector/src/fdroid/java/im/vector/riotx/fdroid/package-info.kt index 7e0e112312..cd72d705e0 100644 --- a/vector/src/fdroid/java/im/vector/riotx/fdroid/package-info.kt +++ b/vector/src/fdroid/java/im/vector/riotx/fdroid/package-info.kt @@ -17,4 +17,4 @@ /** * Code exclusively used by the FDroid build and not referenced on the main source code */ -package im.vector.riotx.fdroid \ No newline at end of file +package im.vector.riotx.fdroid diff --git a/vector/src/fdroid/java/im/vector/riotx/fdroid/receiver/AlarmSyncBroadcastReceiver.kt b/vector/src/fdroid/java/im/vector/riotx/fdroid/receiver/AlarmSyncBroadcastReceiver.kt index 2c0738c2df..6648d79490 100644 --- a/vector/src/fdroid/java/im/vector/riotx/fdroid/receiver/AlarmSyncBroadcastReceiver.kt +++ b/vector/src/fdroid/java/im/vector/riotx/fdroid/receiver/AlarmSyncBroadcastReceiver.kt @@ -30,10 +30,8 @@ import timber.log.Timber class AlarmSyncBroadcastReceiver : BroadcastReceiver() { - override fun onReceive(context: Context, intent: Intent) { - - //Aquire a lock to give enough time for the sync :/ + // Aquire a lock to give enough time for the sync :/ (context.getSystemService(Context.POWER_SERVICE) as PowerManager).run { newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "riotx:fdroidSynclock").apply { acquire((10_000).toLong()) @@ -52,7 +50,7 @@ class AlarmSyncBroadcastReceiver : BroadcastReceiver() { context.startService(it) } } catch (ex: Throwable) { - //TODO + // TODO Timber.e(ex) } } @@ -66,7 +64,7 @@ class AlarmSyncBroadcastReceiver : BroadcastReceiver() { private const val REQUEST_CODE = 0 fun scheduleAlarm(context: Context, userId: String, delay: Long) { - //Reschedule + // Reschedule val intent = Intent(context, AlarmSyncBroadcastReceiver::class.java).apply { putExtra(SyncService.EXTRA_USER_ID, userId) } diff --git a/vector/src/fdroid/java/im/vector/riotx/fdroid/service/VectorSyncService.kt b/vector/src/fdroid/java/im/vector/riotx/fdroid/service/VectorSyncService.kt index b2a45eff81..fbf9c1a031 100644 --- a/vector/src/fdroid/java/im/vector/riotx/fdroid/service/VectorSyncService.kt +++ b/vector/src/fdroid/java/im/vector/riotx/fdroid/service/VectorSyncService.kt @@ -56,5 +56,4 @@ class VectorSyncService : SyncService() { } return super.onStartCommand(intent, flags, startId) } - -} \ No newline at end of file +} diff --git a/vector/src/fdroid/java/im/vector/riotx/push/fcm/FcmHelper.kt b/vector/src/fdroid/java/im/vector/riotx/push/fcm/FcmHelper.kt index 5775fc8479..bfd8850d00 100755 --- a/vector/src/fdroid/java/im/vector/riotx/push/fcm/FcmHelper.kt +++ b/vector/src/fdroid/java/im/vector/riotx/push/fcm/FcmHelper.kt @@ -14,6 +14,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +@file:Suppress("UNUSED_PARAMETER") + package im.vector.riotx.push.fcm import android.app.Activity @@ -64,7 +66,7 @@ object FcmHelper { } fun onEnterBackground(context: Context, vectorPreferences: VectorPreferences, activeSessionHolder: ActiveSessionHolder) { - //We need to use alarm in this mode + // We need to use alarm in this mode if (vectorPreferences.areNotificationEnabledForDevice() && activeSessionHolder.hasActiveSession()) { val currentSession = activeSessionHolder.getActiveSession() AlarmSyncBroadcastReceiver.scheduleAlarm(context, currentSession.myUserId, 4_000L) diff --git a/vector/src/fdroid/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt b/vector/src/fdroid/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt index e90ef5aa7d..25c06d5b6f 100644 --- a/vector/src/fdroid/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt +++ b/vector/src/fdroid/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt @@ -38,5 +38,4 @@ class NotificationTroubleshootTestManagerFactory @Inject constructor(private val mgr.addTest(testBackgroundRestrictions) return mgr } - -} \ No newline at end of file +} diff --git a/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestFirebaseToken.kt b/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestFirebaseToken.kt index 4d35c90464..3806893d98 100644 --- a/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestFirebaseToken.kt +++ b/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestFirebaseToken.kt @@ -39,7 +39,7 @@ class TestFirebaseToken @Inject constructor(private val context: AppCompatActivi .addOnCompleteListener(context) { task -> if (!task.isSuccessful) { val errorMsg = if (task.exception == null) "Unknown" else task.exception!!.localizedMessage - //Can't find where this constant is (not documented -or deprecated in docs- and all obfuscated) + // Can't find where this constant is (not documented -or deprecated in docs- and all obfuscated) if ("SERVICE_NOT_AVAILABLE".equals(errorMsg)) { description = stringProvider.getString(R.string.settings_troubleshoot_test_fcm_failed_service_not_available, errorMsg) } else if ("TOO_MANY_REGISTRATIONS".equals(errorMsg)) { @@ -56,7 +56,7 @@ class TestFirebaseToken @Inject constructor(private val context: AppCompatActivi } status = TestStatus.FAILED } else { - task.result?.token?.let {token -> + task.result?.token?.let { token -> val tok = token.substring(0, Math.min(8, token.length)) + "********************" description = stringProvider.getString(R.string.settings_troubleshoot_test_fcm_success, tok) Timber.e("Retrieved FCM token success [$tok].") @@ -71,5 +71,4 @@ class TestFirebaseToken @Inject constructor(private val context: AppCompatActivi status = TestStatus.FAILED } } - -} \ No newline at end of file +} diff --git a/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestPlayServices.kt b/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestPlayServices.kt index 2aaa0d2e83..c28a02d350 100644 --- a/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestPlayServices.kt +++ b/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestPlayServices.kt @@ -52,6 +52,4 @@ class TestPlayServices @Inject constructor(private val context: AppCompatActivit status = TestStatus.FAILED } } - } - diff --git a/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestTokenRegistration.kt b/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestTokenRegistration.kt index f53813af84..5468217527 100644 --- a/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestTokenRegistration.kt +++ b/vector/src/gplay/java/im/vector/riotx/gplay/features/settings/troubleshoot/TestTokenRegistration.kt @@ -38,7 +38,7 @@ class TestTokenRegistration @Inject constructor(private val context: AppCompatAc : TroubleshootTest(R.string.settings_troubleshoot_test_token_registration_title) { override fun perform() { - //Check if we have a registered pusher for this token + // Check if we have a registered pusher for this token val fcmToken = FcmHelper.getFcmToken(context) ?: run { status = TestStatus.FAILED return @@ -56,7 +56,7 @@ class TestTokenRegistration @Inject constructor(private val context: AppCompatAc quickFix = object : TroubleshootQuickFix(R.string.settings_troubleshoot_test_token_registration_quick_fix) { override fun doFix() { val workId = pushersManager.registerPusherWithFcmKey(fcmToken) - WorkManager.getInstance().getWorkInfoByIdLiveData(workId).observe(context, Observer { workInfo -> + WorkManager.getInstance(context).getWorkInfoByIdLiveData(workId).observe(context, Observer { workInfo -> if (workInfo != null) { if (workInfo.state == WorkInfo.State.SUCCEEDED) { manager?.retry() @@ -66,16 +66,12 @@ class TestTokenRegistration @Inject constructor(private val context: AppCompatAc } }) } - } status = TestStatus.FAILED - } else { description = stringProvider.getString(R.string.settings_troubleshoot_test_token_registration_success) status = TestStatus.SUCCESS } - } - -} \ No newline at end of file +} diff --git a/vector/src/gplay/java/im/vector/riotx/gplay/package-info.kt b/vector/src/gplay/java/im/vector/riotx/gplay/package-info.kt index 177fb56fd8..02e0382503 100644 --- a/vector/src/gplay/java/im/vector/riotx/gplay/package-info.kt +++ b/vector/src/gplay/java/im/vector/riotx/gplay/package-info.kt @@ -18,4 +18,3 @@ * Code exclusively used by the GPlay build and not referenced on the main source code */ package im.vector.riotx.gplay - diff --git a/vector/src/gplay/java/im/vector/riotx/gplay/push/fcm/VectorFirebaseMessagingService.kt b/vector/src/gplay/java/im/vector/riotx/gplay/push/fcm/VectorFirebaseMessagingService.kt index 4856730489..ac5b5c882d 100755 --- a/vector/src/gplay/java/im/vector/riotx/gplay/push/fcm/VectorFirebaseMessagingService.kt +++ b/vector/src/gplay/java/im/vector/riotx/gplay/push/fcm/VectorFirebaseMessagingService.kt @@ -85,7 +85,7 @@ class VectorFirebaseMessagingService : FirebaseMessagingService() { } mUIHandler.post { if (ProcessLifecycleOwner.get().lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED)) { - //we are in foreground, let the sync do the things? + // we are in foreground, let the sync do the things? Timber.v("PUSH received in a foreground state, ignore") } else { onMessageReceivedInternal(message.data) @@ -153,9 +153,8 @@ class VectorFirebaseMessagingService : FirebaseMessagingService() { session.requireBackgroundSync() } } - } catch (e: Exception) { - Timber.e(e, "## onMessageReceivedInternal() failed : " + e.message) + Timber.e(e, "## onMessageReceivedInternal() failed") } } @@ -170,13 +169,11 @@ class VectorFirebaseMessagingService : FirebaseMessagingService() { } catch (e: Exception) { Timber.e(e, "## isEventAlreadyKnown() : failed to check if the event was already defined") } - } return false } private fun handleNotificationWithoutSyncingMode(data: Map, session: Session?) { - if (session == null) { Timber.e("## handleNotificationWithoutSyncingMode cannot find session") return @@ -186,16 +183,16 @@ class VectorFirebaseMessagingService : FirebaseMessagingService() { // This is required if the notification is about a particular Matrix event. // It may be omitted for notifications that only contain updated badge counts. // This ID can and should be used to detect duplicate notification requests. - val eventId = data["event_id"] ?: return //Just ignore + val eventId = data["event_id"] ?: return // Just ignore val eventType = data["type"] if (eventType == null) { - //Just add a generic unknown event + // Just add a generic unknown event val simpleNotifiableEvent = SimpleNotifiableEvent( session.myUserId, eventId, null, - true, //It's an issue in this case, all event will bing even if expected to be silent. + true, // It's an issue in this case, all event will bing even if expected to be silent. title = getString(R.string.notification_unknown_new_event), description = "", type = null, @@ -211,9 +208,9 @@ class VectorFirebaseMessagingService : FirebaseMessagingService() { val notifiableEvent = notifiableEventResolver.resolveEvent(event, session) if (notifiableEvent == null) { - Timber.e("Unsupported notifiable event ${eventId}") + Timber.e("Unsupported notifiable event $eventId") if (BuildConfig.LOW_PRIVACY_LOG_ENABLE) { - Timber.e("--> ${event}") + Timber.e("--> $event") } } else { if (notifiableEvent is NotifiableMessageEvent) { @@ -234,17 +231,11 @@ class VectorFirebaseMessagingService : FirebaseMessagingService() { } private fun findRoomNameBestEffort(data: Map, session: Session?): String? { - val roomName: String? = data["room_name"] + var roomName: String? = data["room_name"] val roomId = data["room_id"] if (null == roomName && null != roomId) { // Try to get the room name from our store - /* - TODO - if (session?.dataHandler?.store?.isReady == true) { - val room = session.getRoom(roomId) - roomName = room?.getRoomDisplayName(this) - } - */ + roomName = session?.getRoom(roomId)?.roomSummary()?.displayName } return roomName } diff --git a/vector/src/gplay/java/im/vector/riotx/push/fcm/FcmHelper.kt b/vector/src/gplay/java/im/vector/riotx/push/fcm/FcmHelper.kt index 148a83368b..9f8dc6d7fc 100755 --- a/vector/src/gplay/java/im/vector/riotx/push/fcm/FcmHelper.kt +++ b/vector/src/gplay/java/im/vector/riotx/push/fcm/FcmHelper.kt @@ -37,7 +37,6 @@ import timber.log.Timber object FcmHelper { private val PREFS_KEY_FCM_TOKEN = "FCM_TOKEN" - fun isPushSupported(): Boolean = true /** @@ -62,7 +61,6 @@ object FcmHelper { .edit() .putString(PREFS_KEY_FCM_TOKEN, token) .apply() - } /** @@ -72,7 +70,7 @@ object FcmHelper { */ fun ensureFcmTokenIsRetrieved(activity: Activity, pushersManager: PushersManager) { // if (TextUtils.isEmpty(getFcmToken(activity))) { - //'app should always check the device for a compatible Google Play services APK before accessing Google Play services features' + // 'app should always check the device for a compatible Google Play services APK before accessing Google Play services features' if (checkPlayServices(activity)) { try { FirebaseInstanceId.getInstance().instanceId @@ -80,11 +78,10 @@ object FcmHelper { storeFcmToken(activity, instanceIdResult.token) pushersManager.registerPusherWithFcmKey(instanceIdResult.token) } - .addOnFailureListener(activity) { e -> Timber.e(e, "## ensureFcmTokenIsRetrieved() : failed " + e.message) } + .addOnFailureListener(activity) { e -> Timber.e(e, "## ensureFcmTokenIsRetrieved() : failed") } } catch (e: Throwable) { - Timber.e(e, "## ensureFcmTokenIsRetrieved() : failed " + e.message) + Timber.e(e, "## ensureFcmTokenIsRetrieved() : failed") } - } else { Toast.makeText(activity, R.string.no_valid_google_play_services_apk, Toast.LENGTH_SHORT).show() Timber.e("No valid Google Play Services found. Cannot use FCM.") @@ -102,10 +99,12 @@ object FcmHelper { return resultCode == ConnectionResult.SUCCESS } + @Suppress("UNUSED_PARAMETER") fun onEnterForeground(context: Context) { // No op } + @Suppress("UNUSED_PARAMETER") fun onEnterBackground(context: Context, vectorPreferences: VectorPreferences, activeSessionHolder: ActiveSessionHolder) { // TODO FCM fallback } diff --git a/vector/src/gplay/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt b/vector/src/gplay/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt index 3d2e45fed1..6f980197dd 100644 --- a/vector/src/gplay/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt +++ b/vector/src/gplay/java/im/vector/riotx/push/fcm/NotificationTroubleshootTestManagerFactory.kt @@ -45,5 +45,4 @@ class NotificationTroubleshootTestManagerFactory @Inject constructor(private val mgr.addTest(testTokenRegistration) return mgr } - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/EmojiCompatFontProvider.kt b/vector/src/main/java/im/vector/riotx/EmojiCompatFontProvider.kt index 24e7e6d287..0a338ce042 100644 --- a/vector/src/main/java/im/vector/riotx/EmojiCompatFontProvider.kt +++ b/vector/src/main/java/im/vector/riotx/EmojiCompatFontProvider.kt @@ -59,8 +59,7 @@ class EmojiCompatFontProvider @Inject constructor(): FontsContractCompat.FontReq listeners.remove(listener) } - interface FontProviderListener { fun compatibilityFontUpdate(typeface: Typeface?) } -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/EmojiCompatWrapper.kt b/vector/src/main/java/im/vector/riotx/EmojiCompatWrapper.kt index b183284084..945ddaec5a 100644 --- a/vector/src/main/java/im/vector/riotx/EmojiCompatWrapper.kt +++ b/vector/src/main/java/im/vector/riotx/EmojiCompatWrapper.kt @@ -16,7 +16,6 @@ package im.vector.riotx import android.content.Context -import androidx.appcompat.app.AppCompatActivity import androidx.core.provider.FontRequest import androidx.emoji.text.EmojiCompat import androidx.emoji.text.FontRequestEmojiCompatConfig @@ -30,12 +29,11 @@ class EmojiCompatWrapper @Inject constructor(private val context: Context) { private var initialized = false fun init(fontRequest: FontRequest) { - - //Use emoji compat for the benefit of emoji spans + // Use emoji compat for the benefit of emoji spans val config = FontRequestEmojiCompatConfig(context, fontRequest) // we want to replace all emojis with selected font .setReplaceAll(true) - //Debug options + // Debug options // .setEmojiSpanIndicatorEnabled(true) // .setEmojiSpanIndicatorColor(Color.GREEN) EmojiCompat.init(config) @@ -56,7 +54,7 @@ class EmojiCompatWrapper @Inject constructor(private val context: Context) { try { return EmojiCompat.get().process(sequence) } catch (throwable: Throwable) { - //Defensive coding against error (should not happend as it is initialized) + // Defensive coding against error (should not happend as it is initialized) Timber.e(throwable, "Failed to init EmojiCompat") return sequence } @@ -64,4 +62,4 @@ class EmojiCompatWrapper @Inject constructor(private val context: Context) { return sequence } } -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/VectorApplication.kt b/vector/src/main/java/im/vector/riotx/VectorApplication.kt index 4884354ef3..081d1c69aa 100644 --- a/vector/src/main/java/im/vector/riotx/VectorApplication.kt +++ b/vector/src/main/java/im/vector/riotx/VectorApplication.kt @@ -49,6 +49,7 @@ import im.vector.riotx.features.notifications.NotificationDrawerManager import im.vector.riotx.features.notifications.NotificationUtils import im.vector.riotx.features.notifications.PushRuleTriggerListener import im.vector.riotx.features.rageshake.VectorUncaughtExceptionHandler +import im.vector.riotx.features.session.SessionListener import im.vector.riotx.features.settings.VectorPreferences import im.vector.riotx.features.version.VersionProvider import im.vector.riotx.push.fcm.FcmHelper @@ -59,15 +60,15 @@ import javax.inject.Inject class VectorApplication : Application(), HasVectorInjector, MatrixConfiguration.Provider, androidx.work.Configuration.Provider { - lateinit var appContext: Context - //font thread handler + // font thread handler @Inject lateinit var authenticator: Authenticator @Inject lateinit var vectorConfiguration: VectorConfiguration @Inject lateinit var emojiCompatFontProvider: EmojiCompatFontProvider @Inject lateinit var emojiCompatWrapper: EmojiCompatWrapper @Inject lateinit var vectorUncaughtExceptionHandler: VectorUncaughtExceptionHandler @Inject lateinit var activeSessionHolder: ActiveSessionHolder + @Inject lateinit var sessionListener: SessionListener @Inject lateinit var notificationDrawerManager: NotificationDrawerManager @Inject lateinit var pushRuleTriggerListener: PushRuleTriggerListener @Inject lateinit var vectorPreferences: VectorPreferences @@ -76,10 +77,8 @@ class VectorApplication : Application(), HasVectorInjector, MatrixConfiguration. lateinit var vectorComponent: VectorComponent private var fontThreadHandler: Handler? = null - // var slowMode = false - override fun onCreate() { super.onCreate() appContext = this @@ -117,10 +116,9 @@ class VectorApplication : Application(), HasVectorInjector, MatrixConfiguration. if (authenticator.hasAuthenticatedSessions() && !activeSessionHolder.hasActiveSession()) { val lastAuthenticatedSession = authenticator.getLastAuthenticatedSession()!! activeSessionHolder.setActiveSession(lastAuthenticatedSession) - lastAuthenticatedSession.configureAndStart(pushRuleTriggerListener) + lastAuthenticatedSession.configureAndStart(pushRuleTriggerListener, sessionListener) } ProcessLifecycleOwner.get().lifecycle.addObserver(object : LifecycleObserver { - @OnLifecycleEvent(Lifecycle.Event.ON_RESUME) fun entersForeground() { FcmHelper.onEnterForeground(appContext) @@ -136,7 +134,7 @@ class VectorApplication : Application(), HasVectorInjector, MatrixConfiguration. FcmHelper.onEnterBackground(appContext, vectorPreferences, activeSessionHolder) } }) - //This should be done as early as possible + // This should be done as early as possible initKnownEmojiHashSet(appContext) } @@ -169,7 +167,7 @@ class VectorApplication : Application(), HasVectorInjector, MatrixConfiguration. override fun onConfigurationChanged(newConfig: Configuration?) { super.onConfigurationChanged(newConfig) - vectorConfiguration.onConfigurationChanged(newConfig) + vectorConfiguration.onConfigurationChanged() } private fun getFontThreadHandler(): Handler { @@ -183,5 +181,4 @@ class VectorApplication : Application(), HasVectorInjector, MatrixConfiguration. handlerThread.start() return Handler(handlerThread.looper) } - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/animations/SimpleAnimatorListener.kt b/vector/src/main/java/im/vector/riotx/core/animations/SimpleAnimatorListener.kt index 5968ee19c4..1819e003f9 100644 --- a/vector/src/main/java/im/vector/riotx/core/animations/SimpleAnimatorListener.kt +++ b/vector/src/main/java/im/vector/riotx/core/animations/SimpleAnimatorListener.kt @@ -34,4 +34,4 @@ open class SimpleAnimatorListener : Animator.AnimatorListener { override fun onAnimationStart(animation: Animator?) { // No op } -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/animations/SimpleTransitionListener.kt b/vector/src/main/java/im/vector/riotx/core/animations/SimpleTransitionListener.kt index a83b0cffe5..728127b374 100644 --- a/vector/src/main/java/im/vector/riotx/core/animations/SimpleTransitionListener.kt +++ b/vector/src/main/java/im/vector/riotx/core/animations/SimpleTransitionListener.kt @@ -38,4 +38,4 @@ open class SimpleTransitionListener : Transition.TransitionListener { override fun onTransitionStart(transition: Transition) { // No op } -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/animations/VectorFullTransitionSet.kt b/vector/src/main/java/im/vector/riotx/core/animations/VectorFullTransitionSet.kt index d2d9a224c4..83bc6f0d01 100644 --- a/vector/src/main/java/im/vector/riotx/core/animations/VectorFullTransitionSet.kt +++ b/vector/src/main/java/im/vector/riotx/core/animations/VectorFullTransitionSet.kt @@ -40,5 +40,4 @@ class VectorFullTransitionSet : TransitionSet { .addTransition(ChangeTransform()) .addTransition(Fade(Fade.IN)) } - } diff --git a/vector/src/main/java/im/vector/riotx/core/date/VectorDateFormatter.kt b/vector/src/main/java/im/vector/riotx/core/date/VectorDateFormatter.kt index f8e8d61220..367615d765 100644 --- a/vector/src/main/java/im/vector/riotx/core/date/VectorDateFormatter.kt +++ b/vector/src/main/java/im/vector/riotx/core/date/VectorDateFormatter.kt @@ -23,7 +23,6 @@ import org.threeten.bp.LocalDateTime import org.threeten.bp.format.DateTimeFormatter import javax.inject.Inject - class VectorDateFormatter @Inject constructor(private val context: Context, private val localeProvider: LocaleProvider) { @@ -53,5 +52,4 @@ class VectorDateFormatter @Inject constructor(private val context: Context, DateUtils.FORMAT_SHOW_WEEKDAY ).toString() } - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/ActiveSessionHolder.kt b/vector/src/main/java/im/vector/riotx/core/di/ActiveSessionHolder.kt index 5f29a76f10..60255dbbdd 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/ActiveSessionHolder.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/ActiveSessionHolder.kt @@ -57,10 +57,9 @@ class ActiveSessionHolder @Inject constructor(private val authenticator: Authent ?: throw IllegalStateException("You should authenticate before using this") } - //TODO: Stop sync ? + // TODO: Stop sync ? // fun switchToSession(sessionParams: SessionParams) { // val newActiveSession = authenticator.getSession(sessionParams) // activeSession.set(newActiveSession) // } - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/AssistedInjectModule.kt b/vector/src/main/java/im/vector/riotx/core/di/AssistedInjectModule.kt index 915780dba2..17e0bd71e5 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/AssistedInjectModule.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/AssistedInjectModule.kt @@ -21,4 +21,4 @@ import dagger.Module @AssistedModule @Module(includes = [AssistedInject_AssistedInjectModule::class]) -interface AssistedInjectModule \ No newline at end of file +interface AssistedInjectModule diff --git a/vector/src/main/java/im/vector/riotx/core/di/HasScreenInjector.kt b/vector/src/main/java/im/vector/riotx/core/di/HasScreenInjector.kt index 44594971a0..62e359c0ae 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/HasScreenInjector.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/HasScreenInjector.kt @@ -19,5 +19,4 @@ package im.vector.riotx.core.di interface HasScreenInjector { fun injector(): ScreenComponent - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/HasVectorInjector.kt b/vector/src/main/java/im/vector/riotx/core/di/HasVectorInjector.kt index 2058133b68..c141f0e9e1 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/HasVectorInjector.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/HasVectorInjector.kt @@ -19,5 +19,4 @@ package im.vector.riotx.core.di interface HasVectorInjector { fun injector(): VectorComponent - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/ScreenModule.kt b/vector/src/main/java/im/vector/riotx/core/di/ScreenModule.kt index 64c0f34ce8..1073a59f7c 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/ScreenModule.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/ScreenModule.kt @@ -27,5 +27,4 @@ object ScreenModule { @Provides @JvmStatic fun providesGlideRequests(context: AppCompatActivity) = GlideApp.with(context) - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/VectorComponent.kt b/vector/src/main/java/im/vector/riotx/core/di/VectorComponent.kt index 4aab312e2f..a59620aacb 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/VectorComponent.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/VectorComponent.kt @@ -40,6 +40,7 @@ import im.vector.riotx.features.notifications.* import im.vector.riotx.features.rageshake.BugReporter import im.vector.riotx.features.rageshake.VectorFileLogger import im.vector.riotx.features.rageshake.VectorUncaughtExceptionHandler +import im.vector.riotx.features.session.SessionListener import im.vector.riotx.features.settings.VectorPreferences import im.vector.riotx.features.ui.UiStateRepository import javax.inject.Singleton @@ -54,6 +55,8 @@ interface VectorComponent { fun matrix(): Matrix + fun sessionListener(): SessionListener + fun currentSession(): Session fun notificationUtils(): NotificationUtils @@ -110,5 +113,4 @@ interface VectorComponent { interface Factory { fun create(@BindsInstance context: Context): VectorComponent } - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/VectorModule.kt b/vector/src/main/java/im/vector/riotx/core/di/VectorModule.kt index e4532bada0..e3df0eb635 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/VectorModule.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/VectorModule.kt @@ -58,7 +58,7 @@ abstract class VectorModule { @Provides @JvmStatic fun providesCurrentSession(activeSessionHolder: ActiveSessionHolder): Session { - //TODO: handle session injection better + // TODO: handle session injection better return activeSessionHolder.getActiveSession() } @@ -74,5 +74,4 @@ abstract class VectorModule { @Binds abstract fun bindUiStateRepository(uiStateRepository: SharedPreferencesUiStateRepository): UiStateRepository - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/di/ViewModelKey.kt b/vector/src/main/java/im/vector/riotx/core/di/ViewModelKey.kt index 09be563398..09c8aadb51 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/ViewModelKey.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/ViewModelKey.kt @@ -23,4 +23,4 @@ import kotlin.reflect.KClass @Target(AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER) @Retention(AnnotationRetention.RUNTIME) @MapKey -annotation class ViewModelKey(val value: KClass) \ No newline at end of file +annotation class ViewModelKey(val value: KClass) diff --git a/vector/src/main/java/im/vector/riotx/core/di/ViewModelModule.kt b/vector/src/main/java/im/vector/riotx/core/di/ViewModelModule.kt index 954b067d20..98c89c421a 100644 --- a/vector/src/main/java/im/vector/riotx/core/di/ViewModelModule.kt +++ b/vector/src/main/java/im/vector/riotx/core/di/ViewModelModule.kt @@ -100,5 +100,4 @@ interface ViewModelModule { @IntoMap @ViewModelKey(CreateDirectRoomNavigationViewModel::class) fun bindCreateDirectRoomNavigationViewModel(viewModel: CreateDirectRoomNavigationViewModel): ViewModel - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogAdapter.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogAdapter.kt deleted file mode 100644 index 49d865e8cf..0000000000 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogAdapter.kt +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright 2019 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package im.vector.riotx.core.dialogs - -import android.content.Context -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.ArrayAdapter -import im.vector.riotx.R - -internal abstract class DialogAdapter(context: Context) : ArrayAdapter(context, R.layout.item_dialog) { - - override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View { - val view: View - if (convertView == null) { - view = LayoutInflater.from(context).inflate(R.layout.item_dialog, parent, false) - view.tag = DialogListItemHolder(view) - } else { - view = convertView - } - with(view.tag as DialogListItemHolder) { - icon.setImageResource(getItem(position).iconRes) - text.setText(getItem(position).titleRes) - } - return view - } - -} diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogCallAdapter.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogCallAdapter.kt deleted file mode 100644 index 0b0499a637..0000000000 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogCallAdapter.kt +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright 2019 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package im.vector.riotx.core.dialogs - -import android.content.Context - -internal class DialogCallAdapter(context: Context) : DialogAdapter(context) { - - init { - add(DialogListItem.StartVoiceCall) - add(DialogListItem.StartVideoCall) - } -} diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogListItem.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogListItem.kt deleted file mode 100644 index 1486e870f3..0000000000 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogListItem.kt +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright 2019 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package im.vector.riotx.core.dialogs - -import androidx.annotation.DrawableRes -import androidx.annotation.StringRes -import im.vector.riotx.R - -internal sealed class DialogListItem(@DrawableRes val iconRes: Int, - @StringRes val titleRes: Int) { - - object StartVoiceCall : DialogListItem(R.drawable.voice_call_green, R.string.action_voice_call) - object StartVideoCall : DialogListItem(R.drawable.video_call_green, R.string.action_video_call) - - object SendFile : DialogListItem(R.drawable.ic_material_file, R.string.option_send_files) - object SendVoice : DialogListItem(R.drawable.vector_micro_green, R.string.option_send_voice) - object SendSticker : DialogListItem(R.drawable.ic_send_sticker, R.string.option_send_sticker) - object TakePhoto : DialogListItem(R.drawable.ic_material_camera, R.string.option_take_photo) - object TakeVideo : DialogListItem(R.drawable.ic_material_videocam, R.string.option_take_video) - object TakePhotoVideo : DialogListItem(R.drawable.ic_material_camera, R.string.option_take_photo_video) - -} diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogListItemHolder.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogListItemHolder.kt deleted file mode 100644 index af8456ba1b..0000000000 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogListItemHolder.kt +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2019 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package im.vector.riotx.core.dialogs - -import android.view.View -import android.widget.ImageView -import android.widget.TextView -import butterknife.BindView -import butterknife.ButterKnife -import im.vector.riotx.R - -class DialogListItemHolder(view: View) { - - @BindView(R.id.adapter_item_dialog_icon) - lateinit var icon: ImageView - - @BindView(R.id.adapter_item_dialog_text) - lateinit var text: TextView - - init { - ButterKnife.bind(this, view) - } -} \ No newline at end of file diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogLocker.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogLocker.kt index 60397fb6b6..a6c1558948 100644 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogLocker.kt +++ b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogLocker.kt @@ -62,5 +62,4 @@ class DialogLocker(savedInstanceState: Bundle?) : Restorable { override fun onRestoreInstanceState(savedInstanceState: Bundle?) { isDialogDisplayed = savedInstanceState?.getBoolean(KEY_DIALOG_IS_DISPLAYED, false) == true } - -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogSendItemAdapter.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/DialogSendItemAdapter.kt deleted file mode 100644 index 8689168e77..0000000000 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/DialogSendItemAdapter.kt +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright 2019 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package im.vector.riotx.core.dialogs - -import android.content.Context - -internal class DialogSendItemAdapter(context: Context, items: MutableList) : DialogAdapter(context) { - - init { - addAll(items) - } -} diff --git a/vector/src/main/java/im/vector/riotx/core/dialogs/ExportKeysDialog.kt b/vector/src/main/java/im/vector/riotx/core/dialogs/ExportKeysDialog.kt index 25b2bb1004..dc88dec406 100644 --- a/vector/src/main/java/im/vector/riotx/core/dialogs/ExportKeysDialog.kt +++ b/vector/src/main/java/im/vector/riotx/core/dialogs/ExportKeysDialog.kt @@ -81,8 +81,7 @@ class ExportKeysDialog { } } - interface ExportKeyDialogListener { fun onPassphrase(passphrase: String) } -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/epoxy/EmptyItem.kt b/vector/src/main/java/im/vector/riotx/core/epoxy/EmptyItem.kt index 32d7183c1d..c0eb007952 100644 --- a/vector/src/main/java/im/vector/riotx/core/epoxy/EmptyItem.kt +++ b/vector/src/main/java/im/vector/riotx/core/epoxy/EmptyItem.kt @@ -22,4 +22,4 @@ import im.vector.riotx.R @EpoxyModelClass(layout = R.layout.item_empty) abstract class EmptyItem : VectorEpoxyModel() { class Holder : VectorEpoxyHolder() -} \ No newline at end of file +} diff --git a/vector/src/main/java/im/vector/riotx/core/epoxy/ErrorWithRetryItem.kt b/vector/src/main/java/im/vector/riotx/core/epoxy/ErrorWithRetryItem.kt index 857de071e2..e6336e5753 100644 --- a/vector/src/main/java/im/vector/riotx/core/epoxy/ErrorWithRetryItem.kt +++ b/vector/src/main/java/im/vector/riotx/core/epoxy/ErrorWithRetryItem.kt @@ -36,9 +36,8 @@ abstract class ErrorWithRetryItem : VectorEpoxyModel( holder.buttonView.setOnClickListener { listener?.invoke() } } - class Holder : VectorEpoxyHolder() { val textView by bind(R.id.itemErrorRetryText) val buttonView by bind