ちょっとハマりました。
kotlinでfirestoreにデータ登録するときは、kotlinのオブジェクトをそのまま登録できて便利です。
しかし次のようにisから始まるプロパティ名でBooleanのプロパティが定義されていると、Firestoreに登録されるデータのフィールド名は valid となってしまいます。
class Hoge{
var isValid:Boolean? = null
}
どうやらFirestoreのSDK内で変換される際に、このようになってしまう模様。
@GengroHirano さんにアドバイスいただき、PropertyNameアノテーションを使う方法で解決できることがわかっています。
import com.google.firebase.firestore.PropertyName
class Hoge{
@set:PropertyName("isValid")
@get:PropertyName("isValid")
var isValid:Boolean? = null
}
ちなみに先頭がgetのものも怪しそう、試してないですが。。
FirestoreのSDKのソースコードって公開されてないのかな?