Możliwe jest dodanie kodowania BSON dla Enumeration. Tak więc konwersja odbywa się w przejrzysty sposób.
Oto kod
RegisterConversionHelpers()
custom()
def custom() {
val transformer = new Transformer {
def transform(o: AnyRef): AnyRef = o match {
case e: Enumeration$Val => e.toString
case _ => o
}
}
BSON.addEncodingHook(classOf[Enumeration$Val], transformer)
}
}