de.terrestris.shoguncore.web.ModuleController Maven / Gradle / Ivy
package de.terrestris.shoguncore.web;
import de.terrestris.shoguncore.dao.ModuleDao;
import de.terrestris.shoguncore.model.module.Module;
import de.terrestris.shoguncore.service.ModuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @author Nils Bühner
*/
@Controller
@RequestMapping("/module")
public class ModuleController, S extends ModuleService>
extends AbstractWebController {
/**
* Default constructor, which calls the type-constructor
*/
@SuppressWarnings("unchecked")
public ModuleController() {
this((Class) Module.class);
}
/**
* Constructor that sets the concrete entity class for the controller.
* Subclasses MUST call this constructor.
*/
protected ModuleController(Class entityClass) {
super(entityClass);
}
/**
* We have to use {@link Qualifier} to define the correct service here.
* Otherwise, spring can not decide which service has to be autowired here
* as there are multiple candidates.
*/
@Override
@Autowired
@Qualifier("moduleService")
public void setService(S service) {
this.service = service;
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy