}
@Override
protected void convertInput()
{
final ProjektDO project = getConverter(getType()).convertToObject(getInput(), getLocale());
setConvertedInput(project);
if (project != null && (currentProject == null || project.getId() != currentProject.getId())) {
getRecentProjects().append(projektFormatter.format(project, false));
}
currentProject = project;
}
/**
* @see org.apache.wicket.Component#getConverter(java.lang.Class)
*/
@SuppressWarnings({ "unchecked", "rawtypes"})
@Override
public <C> IConverter<C> getConverter(final Class<C> type)
{
return new IConverter() {
@Override
public Object convertToObject(final String value, final Locale locale)
{
if (StringUtils.isEmpty(value) == true) {
getModel().setObject(null);
return null;
}
final ProjektDO project = getProjekt(value);
if (project == null) {
error(getString("panel.error.projectNotFound"));
}
getModel().setObject(project);
return project;
}
@Override
public String convertToString(final Object value, final Locale locale)
{
if (value == null) {
return "";
}
final ProjektDO project = (ProjektDO) value;
return formatLabel(project);
}
};
}