I personally prefer case object over scala Enumeration. I've used it once and disliked so much that I don't consider it anymore. Scala enumeration are not sealed (i.e. you get "match is not exhaustive" compiler warning). You cannot add custom fields (not really the case here). Usage is less intuitive since you must use the nested Value type and instead of the the enumeration type itself.

I don't mind to modify this code to scala Enumeration if this the preferred way.