上津原です。
今回は、Couchbase Liteの機能のひとつである、LiveQuery機能を見ていきたいと思います。
LiveQueryとは、指定したクエリ結果に影響するデータ変更があった場合、自動で通知を出してくれる機能です。 例えば、すべてのドキュメントを呼び出していた時ならば、何かしらデータベースに変更(ドキュメントの追加、削除、更新)が行われた場合に通知が上がってくる、というものです。
これを利用することによって、
- 変更があった時にすぐに表示に反映する
- 変更があったらすぐに同期を行う などの対応などが可能になります。
コードはとってもシンプルです。 以下のようになります。
以上です。 KeyPathが「row」じゃなくて「rows」なのでそこに注意が必要です。
通知が取れれば、ここでpushするなり、表示を更新するなりやればリアルタイム反映が可能になります。
これで、データが編集されればそれに対して即時対応や、UIの更新などを行うことが出来、非常に便利です。
欲しい機能が予めこうやって用意されているのはうれしいですね。