long[] sourceFragmentIds = f.getSourceFragmentIds();
if (sourceFragmentIds != null){ // at least one mapping
long[] selectedFragmentIds = f.getSelectedFragmentIds();
for (int i = 0; i < sourceFragmentIds.length; i++){
long sourceFragmentId = sourceFragmentIds[i];
Fragment sourceFragment = smsDbManager.getFragment(sourceFragmentId);
if (sourceFragment == null){
throw new InputException(getResources(req).getMessage(locale, "smssvc.SourceFragmentNotAvailableAnymore"),"fragment #" + sourceFragmentId + " not found",null,null);
}
checkAccessRights(req,sourceFragment.getGroup());
long selectedFragmentId = selectedFragmentIds[i];
if (selectedFragmentId <= 0){
throw new InputException(getResources(req).getMessage(locale, "smssvc.FragmentMappingSelectionMissing"),"sourceFragmentId = " + sourceFragmentId,null,null);
}
Fragment selectedFragment = smsDbManager.getFragment(selectedFragmentId);
if (selectedFragment == null){
throw new InputException(getResources(req).getMessage(locale, "smssvc.SelectedFragmentNotAvaliableAnymore"),"fragment #" + selectedFragmentId + " not found",null,null);
}
checkAccessRights(req,selectedFragment.getGroup());
mappingSet.add(new Entry(sourceFragment), new Entry(selectedFragment));
}
}
req.getSession().setAttribute("mappingSet", mappingSet);