-
Notifications
You must be signed in to change notification settings - Fork 617
Expand file tree
/
Copy pathAddDriverToCarController.java
More file actions
40 lines (36 loc) · 1.52 KB
/
AddDriverToCarController.java
File metadata and controls
40 lines (36 loc) · 1.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package mate.controller.driver;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import mate.lib.Injector;
import mate.model.Car;
import mate.model.Driver;
import mate.service.CarService;
import mate.service.DriverService;
@WebServlet(urlPatterns = "/drivers/add")
public class AddDriverToCarController extends HttpServlet {
private static final Injector injector =
Injector.getInstance("mate");
private final CarService carService =
(CarService) injector.getInstance(CarService.class);
private final DriverService driverService =
(DriverService) injector.getInstance(DriverService.class);
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
req.getRequestDispatcher("/WEB-INF/views/drivers/add.jsp").forward(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
Long driverId = Long.valueOf(req.getParameter("driver_id"));
Long carId = Long.valueOf(req.getParameter("car_id"));
Driver driver = driverService.get(driverId);
Car car = carService.get(carId);
carService.addDriverToCar(driver, car);
resp.sendRedirect(req.getContextPath() + "/drivers");
}
}