class AbstractContentGroupController extends AbstractPublicContentSectionController<M, F> {

    @PostMapping(value = "/{competitionId}/edit", params = "uploadFile")
    public String saveAndUpload(Model model,
                                @PathVariable(COMPETITION_ID_KEY) long competitionId,
                                @ModelAttribute(FORM_ATTR_NAME) F form,
                                BindingResult bindingResult,
                                ValidationHandler validationHandler) {
        return saveAndFileAction(competitionId, model, form, validationHandler,
                () -> publicContentService.uploadFile(competitionId, getType(), form.getContentGroups()));
    }

}