In wicket 1.4 PageParameters has methods like getAsEnum(String key, Class<T> eClass
, getAsInteger(String key, int defaultValue)
In official migration guide theres this hint
org.apache.wicket.PageParameters.getInt(String) - org.apache.wicket.request.mapper.parameter.PageParameters.get(String).toInt()
That explains how to get Int, Long etc if we were giving only String parameter but how do I refactor something like this?
params.getAsEnum("mode", PageMode.DISPLAY);
EDIT: I forget that you can call .toEnum() on StringValue. Sorry for mess.
I know of several ways how to do that:
// two interchangeable calls, first is more generic
getPageParameters().get("mode").to(PageMode.class);
getPageParameters().get("mode").toEnum(PageMode.class);
// if you would like to have a PageMode.DISPLAY as default
getPageParameters().get("mode").toEnum(PageMode.DISPLAY);