Enumeration#ValueをキーにしたMapを格納する

Map[String, T]を格納するMongoMapFieldとか、Enumeration#Valueを文字列として格納するEnumNameFieldはあるのに、Map[Enumeration#Value, T]を格納するものがなかったので作ってみた。
といってもMongoMapFieldをコピペして少し変えただけ。

利用しているnet.liftweb.mongodb.Metaがprivate[mongodb]で外から参照できないので、Liftのパッケージの中に入れてあります。

setFromAnyの中のMapの型指定は型消去されるから意味ないよって警告されるけど、どうしたものか分からないのでとりあえず無視。

利用例



出力

class com.example.model.RoboParts={name=test, partsType=BD, joints=Map(HD -> 1, AM -> 2, LG -> 1, BS -> 1), _id=4d8afed910c8ac8d2508b90f}
2

MongoDBへのアクセスにはRogueを使ってます。