Class AbstractPersistedObjectEditFormController<I extends Number,T extends PersistedObject<I>,F extends org.openforis.commons.web.PersistedObjectForm<I,T>,M extends ItemManager<T,I>>

java.lang.Object
org.openforis.collect.web.controller.BasicController
org.openforis.collect.web.controller.AbstractPersistedObjectEditFormController<I,T,F,M>
Direct Known Subclasses:
AbstractSurveyObjectEditFormController, ImageryController, UserController, UserGroupController

public abstract class AbstractPersistedObjectEditFormController<I extends Number,T extends PersistedObject<I>,F extends org.openforis.commons.web.PersistedObjectForm<I,T>,M extends ItemManager<T,I>> extends BasicController
Author:
S. Ricci
  • Field Details

  • Constructor Details

    • AbstractPersistedObjectEditFormController

      public AbstractPersistedObjectEditFormController()
  • Method Details

    • createItemInstance

      protected abstract T createItemInstance()
    • createFormInstance

      protected abstract F createFormInstance(T item)
    • loadAll

      @RequestMapping(method=GET) @ResponseBody public List<F> loadAll()
    • load

      @RequestMapping(value="/{id}", method=GET) @ResponseBody public F load(@PathVariable I id)
    • insert

      @RequestMapping(method=POST) @ResponseBody public org.openforis.commons.web.Response insert(@Validated F form, org.springframework.validation.BindingResult result)
    • update

      @RequestMapping(method=PATCH) @ResponseBody public org.openforis.commons.web.Response update(@Validated F form, org.springframework.validation.BindingResult result)
    • save

      protected org.openforis.commons.web.Response save(@Validated F form, org.springframework.validation.BindingResult result)
    • duplicate

      @RequestMapping(value="/{id}/duplicate", method=POST) @ResponseBody public org.openforis.commons.web.Response duplicate(@RequestParam I itemId, org.springframework.validation.BindingResult result)
    • validate

      @RequestMapping(value="validate", method=POST) @ResponseBody public org.openforis.commons.web.Response validate(@Validated F form, org.springframework.validation.BindingResult result)
    • delete

      @RequestMapping(value="/{id}", method=DELETE) @ResponseBody public org.openforis.commons.web.Response delete(@PathVariable I id)
    • loadOrCreateItem

      protected T loadOrCreateItem(F form)
    • loadItem

      protected T loadItem(I id)
    • loadAllItems

      protected List<T> loadAllItems()
    • createFormInstances

      protected List<F> createFormInstances(List<T> items)
    • copyFormIntoItem

      protected void copyFormIntoItem(F form, T item)
    • createErrorResponse

      protected org.openforis.commons.web.Response createErrorResponse(Exception e)
    • getLoggedUser

      protected User getLoggedUser()
    • setItemManager

      @Autowired public void setItemManager(M itemManager)