2016-05-19 15 views
1

copyFromRealmのrealm-javaを使用して、が添付されたの複雑さを必要としないので、データの分離コピーを作成しています。`.findAllAsync()。asObservable()`と `copyFromRealm`をどのように組み合わせるのですか?

私はRxJavaと組み合わせようとしています。findAllAsync().asObservable()を使用して、RealmResultsのObservableを生成しても問題ありません。しかし、これは依然としてオブジェクトを扱っています。すべての結果が自動的にレルムからコピーされるようにもRealmResultsリストを反復することと、手動で取り外すことなく、レルムのrealm.copyFromRealm(attachedRealmObject);メソッドを利用すること

public Observable<RealmResults<MyClass>> find(String id) { 
    return realm.where(MyClass.class) 
      .equalTo("id", id) 
      .findAllAsync() 
      .asObservable() 
      .filter(RealmResults::isLoaded); 
} 

:私はこれを変換するにはどうすればよい

答えて

4

copyFromRealmは、コレクションでも動作しますので、以下は動作するはずですか?

public Observable<RealmResults<MyClass>> find(String id) { 
     return realm.where(MyClass.class) 
       .equalTo("id", id) 
       .findAllAsync() 
       .asObservable() 
       .filter(RealmResults::isLoaded) 
       .map(results -> realm.copyFromRealm(results)) 
    } 
+0

ええ、これは素晴らしい作品です。私のカスタム領域の抽象化によって、コレクションでは機能しないと思うようになりました。ユーザーエラー。ありがとう。 –

関連する問題