kotlin-extensions / io.realm.kotlin / io.realm.RealmModel / isLoaded

isLoaded

fun RealmModel.isLoaded(): Boolean

この RealmObject を検索するために使用されるクエリが完了しているかどうかを確認します。

非同期メソッド(io.realm.RealmQuery.findFirstAsyncなど) RealmQuery の将来の結果を表す RealmObject を返します。 この点はjava.uty.concurrent.FU機能に似ていると見なされます。

isLoaded()trueを返すと、クエリでクエリ パラメータに一致するオブジェクトが見つからなかった場合でも、 オブジェクトはクエリ結果を表します。 この場合、RealmObject はnullオブジェクトになります。

「Null」オブジェクトはnullを表します。 いずれかのアクセスサーが呼び出されると例外がスローされるため、メソッドを呼び出す前には isValid も確認することが重要です。 一般的なパターンは次のとおりです。

val person = realm.where<Person>().findFirstAsync()
person.isLoaded() // == false
person.addChangeListener { p ->
    p.isLoaded() // always true here
    if(p.isValid()) {
        // It is safe to access this person.
    }
}

同期 RealmObject は定義上、このメソッドはそれらに対して常にtrueを返します。 このメソッドは、管理対象ではないオブジェクト(Realm 外で作成)で呼び出されるとtrueを返します。

Return
true クエリが完了した場合は 、クエリが進行中の場合はfalseになります。

その他の参照

isValid