我使用的是一个喷射路由,它非常优雅,使用参数符号。不过,我正在处理一些遗留代码,并需要使用java枚举。有没有一些优雅的方式如何将Scala符号转换为Java枚举?Java的斯卡拉符号枚举
因此,所需的代码将如下所示:
post {
parameters(('adId.as[String], 'propertyType.as[TypNe])).as(Import) { imp:Import =>
complete {
adImporterService ! imp
StatusCodes.Accepted
}
}
其中TypNem是java的枚举和导入是Scala的case类。取而代之的
post {
parameters(('adId.as[String], 'propertyType.as[String])) { (aId,pType) =>
complete {
adImporterService ! Import(aId,TypNe.valueOf(pType.toUpperCase()))
StatusCodes.Accepted
}
}
}
您的问题是什么?你的两个片段真的不清楚 – Dici
是否有可能将scala符号直接转换为java enum而不是通过String? – jaksky