パラメータにシンボルを使用した非常にエレガントなスプレールーティングを使用しています。ただし、いくつかのレガシー コードを扱っており、Java 列挙型を使用する必要があります。scalaシンボルをJava enumに変換するエレガントな方法はありますか?
したがって、目的のコードは次のようになります。
post {
parameters(('adId.as[String], 'propertyType.as[TypNe])).as(Import) { imp:Import =>
complete {
adImporterService ! imp
StatusCodes.Accepted
}
}
ここで、TypNem は Java 列挙型で、Import は scala ケース クラスです。それ以外の
post {
parameters(('adId.as[String], 'propertyType.as[String])) { (aId,pType) =>
complete {
adImporterService ! Import(aId,TypNe.valueOf(pType.toUpperCase()))
StatusCodes.Accepted
}
}
}