├── src
├── conf
│ └── MANIFEST.MF
└── java
│ ├── DriverRideManagementModule
│ ├── Car.java
│ ├── WeeklyRide.java
│ ├── SingleRide.java
│ └── Ride.java
│ ├── CarpoolDatabase
│ ├── DbCredentialsSingleton.java
│ └── DbRepo.java
│ ├── EmailInterface
│ ├── EmailConfiguration.java
│ └── EmailSender.java
│ ├── PassengerRideManagementModule
│ ├── Location.java
│ └── Request.java
│ ├── UserManagementModule
│ ├── User.java
│ ├── Account.java
│ ├── Platform.java
│ └── Admin.java
│ └── Controller
│ ├── ViewDriverInfoController.java
│ ├── ViewDriverAndRideInfoController.java
│ ├── LogoutController.java
│ ├── CancelRideController.java
│ ├── ViewDriverApplicationDetailsController.java
│ ├── ViewPassengerInfoController.java
│ ├── ViewPassengerRequestsController.java
│ ├── ViewOfferedRidesController.java
│ ├── ViewDriverRequestsController.java
│ ├── ViewPassengerConfirmedRidesController.java
│ ├── RequestSelectedRideController.java
│ ├── AcceptRejectDriverApplicationController.java
│ ├── PassengerActionController.java
│ ├── RegisterController.java
│ ├── RegisterDriverController.java
│ ├── SearchRidesController.java
│ ├── ConfirmRemovePassengerController.java
│ ├── LoginController.java
│ └── OfferARideController.java
├── .gitattributes
├── web
├── META-INF
│ └── context.xml
├── DriverAcceptedOrRejected.jsp
├── RideRequestConfirmation.jsp
├── WEB-INF
│ └── web.xml
├── CancelRideForm.jsp
├── PassengerRemovedOrNotConfirmed.jsp
├── db_credential_loader.jsp
├── RemoveRegisteredPassenger.jsp
├── navbaradmin.html
├── ConfirmOrRemovePendingPassenger.jsp
├── ViewDriverInfo.jsp
├── navbarPassenger.html
├── ViewDriverApplications.jsp
├── navbar.html
├── viewPassengerInfo.jsp
├── test_jsp.jsp
├── ViewDriverDetails.jsp
├── ViewDriverAndRideInfo.jsp
├── NewUserRegistration.jsp
├── RegisterAsDriver.jsp
├── index.jsp
├── MakeRideRequest.jsp
├── viewPassengerRequests.jsp
├── findRide.jsp
├── OfferARide.jsp
├── ViewOfferedRides.jsp
└── ViewPassengerConfirmedRides.jsp
├── .gitignore
├── nbproject
├── genfiles.properties
├── project.xml
└── project.properties
├── README.md
└── test
├── DriverRideManagementModule
└── RideTest.java
└── UserManagementModule
├── AdminTest.java
├── PlatformTest.java
└── AccountTest.java
/src/conf/MANIFEST.MF:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 |
3 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/web/META-INF/context.xml:
--------------------------------------------------------------------------------
1 |
2 |
| First Name | 28 |${selected_driver.firstName} | 29 |
|---|---|
| Last Name | 32 |${selected_driver.lastName} | 33 |
| Gender | 36 |${selected_driver.gender} | 37 |
| Car Model | 40 |${selected_driver.myCar.carModel} | 41 |
| Email 24 | | View Details 25 | |
|---|---|
| ${driver.emailID} | 31 |32 | 36 | | 37 |
| Passenger ID | 33 |${passenger.emailID} | 34 |
|---|---|
| First Name | 37 |${passenger.firstName} | 38 |
| Last Name | 41 |${passenger.lastName} | 42 |
| Gender | 45 |${passenger.gender} | 46 |
| Mobile Number | 49 |${passenger.mobileNumber} | 50 |
GET and POST
28 | * methods.
29 | *
30 | * @param request servlet request
31 | * @param response servlet response
32 | * @throws ServletException if a servlet-specific error occurs
33 | * @throws IOException if an I/O error occurs
34 | */
35 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
36 | throws ServletException, IOException {
37 | Driver selectedDriver = Ride.retrieveDriverInfo(request.getParameter("driver_id"));
38 | RequestDispatcher rd = request.getRequestDispatcher("ViewDriverInfo.jsp");
39 | request.setAttribute("selected_driver", selectedDriver);
40 | rd.forward(request, response);
41 | }
42 |
43 | // GET method.
46 | *
47 | * @param request servlet request
48 | * @param response servlet response
49 | * @throws ServletException if a servlet-specific error occurs
50 | * @throws IOException if an I/O error occurs
51 | */
52 | @Override
53 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
54 | throws ServletException, IOException {
55 | processRequest(request, response);
56 | }
57 |
58 | /**
59 | * Handles the HTTP POST method.
60 | *
61 | * @param request servlet request
62 | * @param response servlet response
63 | * @throws ServletException if a servlet-specific error occurs
64 | * @throws IOException if an I/O error occurs
65 | */
66 | @Override
67 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
68 | throws ServletException, IOException {
69 | processRequest(request, response);
70 | }
71 |
72 | /**
73 | * Returns a short description of the servlet.
74 | *
75 | * @return a String containing servlet description
76 | */
77 | @Override
78 | public String getServletInfo() {
79 | return "Short description";
80 | }// GET and POST
28 | * methods.
29 | *
30 | * @param request servlet request
31 | * @param response servlet response
32 | * @throws ServletException if a servlet-specific error occurs
33 | * @throws IOException if an I/O error occurs
34 | */
35 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
36 | throws ServletException, IOException {
37 | Driver selectedDriver = Ride.retrieveDriverInfo(request.getParameter("driver_id"));
38 | RequestDispatcher rd = request.getRequestDispatcher("ViewDriverAndRideInfo.jsp");
39 | request.setAttribute("selected_driver", selectedDriver);
40 | rd.forward(request, response);
41 | }
42 |
43 | // GET method.
46 | *
47 | * @param request servlet request
48 | * @param response servlet response
49 | * @throws ServletException if a servlet-specific error occurs
50 | * @throws IOException if an I/O error occurs
51 | */
52 | @Override
53 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
54 | throws ServletException, IOException {
55 | processRequest(request, response);
56 | }
57 |
58 | /**
59 | * Handles the HTTP POST method.
60 | *
61 | * @param request servlet request
62 | * @param response servlet response
63 | * @throws ServletException if a servlet-specific error occurs
64 | * @throws IOException if an I/O error occurs
65 | */
66 | @Override
67 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
68 | throws ServletException, IOException {
69 | processRequest(request, response);
70 | }
71 |
72 | /**
73 | * Returns a short description of the servlet.
74 | *
75 | * @return a String containing servlet description
76 | */
77 | @Override
78 | public String getServletInfo() {
79 | return "Short description";
80 | }// GET and POST
27 | * methods.
28 | *
29 | * @param request servlet request
30 | * @param response servlet response
31 | * @throws ServletException if a servlet-specific error occurs
32 | * @throws IOException if an I/O error occurs
33 | */
34 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
35 | throws ServletException, IOException {
36 | HttpSession session = request.getSession(false); //Fetch session object
37 | if (session != null) //If session is not null
38 | {
39 | session.invalidate(); //removes all session attributes bound to the session
40 | RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
41 | request.setAttribute("errmsg", "Logout Successful");
42 | rd.forward(request, response);
43 | }
44 |
45 | }
46 |
47 | // GET method.
50 | *
51 | * @param request servlet request
52 | * @param response servlet response
53 | * @throws ServletException if a servlet-specific error occurs
54 | * @throws IOException if an I/O error occurs
55 | */
56 | @Override
57 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
58 | throws ServletException, IOException {
59 | processRequest(request, response);
60 | }
61 |
62 | /**
63 | * Handles the HTTP POST method.
64 | *
65 | * @param request servlet request
66 | * @param response servlet response
67 | * @throws ServletException if a servlet-specific error occurs
68 | * @throws IOException if an I/O error occurs
69 | */
70 | @Override
71 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
72 | throws ServletException, IOException {
73 | processRequest(request, response);
74 | }
75 |
76 | /**
77 | * Returns a short description of the servlet.
78 | *
79 | * @return a String containing servlet description
80 | */
81 | @Override
82 | public String getServletInfo() {
83 | return "Short description";
84 | }// GET and POST
25 | * methods.
26 | *
27 | * @param request servlet request
28 | * @param response servlet response
29 | * @throws ServletException if a servlet-specific error occurs
30 | * @throws IOException if an I/O error occurs
31 | */
32 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
33 | throws ServletException, IOException {
34 | String Ride_ID = request.getParameter("rideid");
35 | HttpSession session = request.getSession();
36 | Driver d = (Driver) session.getAttribute("driver"); //Get the Driver logged in Right now
37 | if (d != null) {
38 | d.CancelRide(Ride_ID);
39 | String Message = "Your Ride was Successfully Canceled!";
40 | RequestDispatcher rd = request.getRequestDispatcher("CancelRideForm.jsp");
41 | request.setAttribute("Message", Message);
42 | rd.forward(request, response);
43 | }
44 | }
45 |
46 | // GET method.
49 | *
50 | * @param request servlet request
51 | * @param response servlet response
52 | * @throws ServletException if a servlet-specific error occurs
53 | * @throws IOException if an I/O error occurs
54 | */
55 | @Override
56 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
57 | throws ServletException, IOException {
58 | processRequest(request, response);
59 | }
60 |
61 | /**
62 | * Handles the HTTP POST method.
63 | *
64 | * @param request servlet request
65 | * @param response servlet response
66 | * @throws ServletException if a servlet-specific error occurs
67 | * @throws IOException if an I/O error occurs
68 | */
69 | @Override
70 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
71 | throws ServletException, IOException {
72 | processRequest(request, response);
73 | }
74 |
75 | /**
76 | * Returns a short description of the servlet.
77 | *
78 | * @return a String containing servlet description
79 | */
80 | @Override
81 | public String getServletInfo() {
82 | return "Short description";
83 | }// GET and POST
31 | * methods.
32 | *
33 | * @param request servlet request
34 | * @param response servlet response
35 | * @throws ServletException if a servlet-specific error occurs
36 | * @throws IOException if an I/O error occurs
37 | */
38 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
39 | throws ServletException, IOException {
40 |
41 | try {
42 | Driver selectedDriver = Driver.getDriverInfo(request.getParameter("driverID"));
43 | RequestDispatcher rd = request.getRequestDispatcher("ViewDriverDetails.jsp");
44 | request.setAttribute("selected_driver", selectedDriver);
45 | rd.forward(request, response);
46 | } catch (SQLException ex) {
47 | Logger.getLogger(ViewDriverApplicationDetailsController.class.getName()).log(Level.SEVERE, null, ex);
48 | }
49 | }
50 |
51 | // GET method.
54 | *
55 | * @param request servlet request
56 | * @param response servlet response
57 | * @throws ServletException if a servlet-specific error occurs
58 | * @throws IOException if an I/O error occurs
59 | */
60 | @Override
61 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
62 | throws ServletException, IOException {
63 | processRequest(request, response);
64 | }
65 |
66 | /**
67 | * Handles the HTTP POST method.
68 | *
69 | * @param request servlet request
70 | * @param response servlet response
71 | * @throws ServletException if a servlet-specific error occurs
72 | * @throws IOException if an I/O error occurs
73 | */
74 | @Override
75 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
76 | throws ServletException, IOException {
77 | processRequest(request, response);
78 | }
79 |
80 | /**
81 | * Returns a short description of the servlet.
82 | *
83 | * @return a String containing servlet description
84 | */
85 | @Override
86 | public String getServletInfo() {
87 | return "Short description";
88 | }// GET and POST
31 | * methods.
32 | *
33 | * @param request servlet request
34 | * @param response servlet response
35 | * @throws ServletException if a servlet-specific error occurs
36 | * @throws IOException if an I/O error occurs
37 | */
38 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
39 | throws ServletException, IOException {
40 | String Passenger_ID = request.getParameter("passengerid");
41 | HttpSession session = request.getSession();
42 | Driver d = (Driver) session.getAttribute("driver"); //Get the Driver logged in Right now
43 | if (d != null) {
44 | ArrayListGET method.
54 | *
55 | * @param request servlet request
56 | * @param response servlet response
57 | * @throws ServletException if a servlet-specific error occurs
58 | * @throws IOException if an I/O error occurs
59 | */
60 | @Override
61 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
62 | throws ServletException, IOException {
63 | processRequest(request, response);
64 | }
65 |
66 | /**
67 | * Handles the HTTP POST method.
68 | *
69 | * @param request servlet request
70 | * @param response servlet response
71 | * @throws ServletException if a servlet-specific error occurs
72 | * @throws IOException if an I/O error occurs
73 | */
74 | @Override
75 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
76 | throws ServletException, IOException {
77 | processRequest(request, response);
78 | }
79 |
80 | /**
81 | * Returns a short description of the servlet.
82 | *
83 | * @return a String containing servlet description
84 | */
85 | @Override
86 | public String getServletInfo() {
87 | return "Short description";
88 | }// GET and POST
31 | * methods.
32 | *
33 | * @param request servlet request
34 | * @param response servlet response
35 | * @throws ServletException if a servlet-specific error occurs
36 | * @throws IOException if an I/O error occurs
37 | */
38 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
39 | throws ServletException, IOException {
40 | String Ride_ID = request.getParameter("rideid");
41 | HttpSession session = request.getSession();
42 | Driver d = (Driver) session.getAttribute("driver"); //Get the Driver logged in Right now
43 | if (d != null) {
44 | ArrayListGET method.
54 | *
55 | * @param request servlet request
56 | * @param response servlet response
57 | * @throws ServletException if a servlet-specific error occurs
58 | * @throws IOException if an I/O error occurs
59 | */
60 | @Override
61 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
62 | throws ServletException, IOException {
63 | processRequest(request, response);
64 | }
65 |
66 | /**
67 | * Handles the HTTP POST method.
68 | *
69 | * @param request servlet request
70 | * @param response servlet response
71 | * @throws ServletException if a servlet-specific error occurs
72 | * @throws IOException if an I/O error occurs
73 | */
74 | @Override
75 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
76 | throws ServletException, IOException {
77 | processRequest(request, response);
78 | }
79 |
80 | /**
81 | * Returns a short description of the servlet.
82 | *
83 | * @return a String containing servlet description
84 | */
85 | @Override
86 | public String getServletInfo() {
87 | return "Short description";
88 | }// GET and POST
31 | * methods.
32 | *
33 | * @param request servlet request
34 | * @param response servlet response
35 | * @throws ServletException if a servlet-specific error occurs
36 | * @throws IOException if an I/O error occurs
37 | */
38 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
39 | throws ServletException, IOException {
40 | HttpSession session = request.getSession();
41 | Driver d = (Driver) session.getAttribute("driver"); //Get the Driver logged in Right now
42 | if (d != null) {
43 | ArrayListGET method.
56 | *
57 | * @param request servlet request
58 | * @param response servlet response
59 | * @throws ServletException if a servlet-specific error occurs
60 | * @throws IOException if an I/O error occurs
61 | */
62 | @Override
63 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
64 | throws ServletException, IOException {
65 | processRequest(request, response);
66 | }
67 |
68 | /**
69 | * Handles the HTTP POST method.
70 | *
71 | * @param request servlet request
72 | * @param response servlet response
73 | * @throws ServletException if a servlet-specific error occurs
74 | * @throws IOException if an I/O error occurs
75 | */
76 | @Override
77 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
78 | throws ServletException, IOException {
79 | processRequest(request, response);
80 | }
81 |
82 | /**
83 | * Returns a short description of the servlet.
84 | *
85 | * @return a String containing servlet description
86 | */
87 | @Override
88 | public String getServletInfo() {
89 | return "Short description";
90 | }// GET and POST
34 | * methods.
35 | *
36 | * @param request servlet request
37 | * @param response servlet response
38 | * @throws ServletException if a servlet-specific error occurs
39 | * @throws IOException if an I/O error occurs
40 | * @throws java.sql.SQLException
41 | */
42 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
43 | throws ServletException, IOException {
44 |
45 | try {
46 | HttpSession session = request.getSession();
47 | ArrayListGET method.
60 | *
61 | * @param request servlet request
62 | * @param response servlet response
63 | * @throws ServletException if a servlet-specific error occurs
64 | * @throws IOException if an I/O error occurs
65 | */
66 | @Override
67 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
68 | throws ServletException, IOException {
69 | processRequest(request, response);
70 | }
71 |
72 | /**
73 | * Handles the HTTP POST method.
74 | *
75 | * @param request servlet request
76 | * @param response servlet response
77 | * @throws ServletException if a servlet-specific error occurs
78 | * @throws IOException if an I/O error occurs
79 | */
80 | @Override
81 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
82 | throws ServletException, IOException {
83 | processRequest(request, response);
84 | }
85 |
86 | /**
87 | * Returns a short description of the servlet.
88 | *
89 | * @return a String containing servlet description
90 | */
91 | @Override
92 | public String getServletInfo() {
93 | return "Short description";
94 | }// | Email Address | 26 |${selected_driver.emailID} | 27 |
|---|---|
| Car Model | 30 |${selected_driver.myCar.carModel} | 31 |
| Car Capacity | 34 |${selected_driver.myCar.carCapacity} | 35 |
| License Image | 38 |39 | |
| Car Registration Image | 42 |43 | |
| Emirates ID Image | 46 |47 | |
| 50 | 55 | | 56 |57 | 62 | | 63 |
GET and POST
36 | * methods.
37 | *
38 | * @param request servlet request
39 | * @param response servlet response
40 | * @throws ServletException if a servlet-specific error occurs
41 | * @throws IOException if an I/O error occurs
42 | */
43 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
44 | throws ServletException, IOException {
45 | ArrayListGET method.
69 | *
70 | * @param request servlet request
71 | * @param response servlet response
72 | * @throws ServletException if a servlet-specific error occurs
73 | * @throws IOException if an I/O error occurs
74 | */
75 | @Override
76 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
77 | throws ServletException, IOException {
78 | processRequest(request, response);
79 | }
80 |
81 | /**
82 | * Handles the HTTP POST method.
83 | *
84 | * @param request servlet request
85 | * @param response servlet response
86 | * @throws ServletException if a servlet-specific error occurs
87 | * @throws IOException if an I/O error occurs
88 | */
89 | @Override
90 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
91 | throws ServletException, IOException {
92 | processRequest(request, response);
93 | }
94 |
95 | /**
96 | * Returns a short description of the servlet.
97 | *
98 | * @return a String containing servlet description
99 | */
100 | @Override
101 | public String getServletInfo() {
102 | return "Short description";
103 | }// GET and POST
30 | * methods.
31 | *
32 | * @param request servlet request
33 | * @param response servlet response
34 | * @throws ServletException if a servlet-specific error occurs
35 | * @throws IOException if an I/O error occurs
36 | */
37 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
38 | throws ServletException, IOException {
39 | response.setContentType("text/html;charset=UTF-8");
40 | String outcomeMessage = null;
41 | HttpSession session = request.getSession();
42 | Passenger p = (Passenger) session.getAttribute("passenger");
43 |
44 | if (p.getEmailID().equals(request.getParameter("driver_id"))){
45 | outcomeMessage = "Error! Can't request own ride";
46 | }
47 | else{
48 | boolean addSuccess = Ride.createRequest(Integer.parseInt(request.getParameter("selected_ride")), p.getEmailID(), request.getParameter("pickup_location"), request.getParameter("dropoff_location"));
49 | if (addSuccess) {
50 | outcomeMessage = "Successfully requested ride!";
51 | } else {
52 | outcomeMessage = "Error! Unable to request ride";
53 | }
54 | }
55 |
56 | RequestDispatcher rd = request.getRequestDispatcher("RideRequestConfirmation.jsp");
57 | request.setAttribute("outcome_message", outcomeMessage);
58 | rd.forward(request, response);
59 | }
60 |
61 | // GET method.
64 | *
65 | * @param request servlet request
66 | * @param response servlet response
67 | * @throws ServletException if a servlet-specific error occurs
68 | * @throws IOException if an I/O error occurs
69 | */
70 | @Override
71 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
72 | throws ServletException, IOException {
73 | processRequest(request, response);
74 | }
75 |
76 | /**
77 | * Handles the HTTP POST method.
78 | *
79 | * @param request servlet request
80 | * @param response servlet response
81 | * @throws ServletException if a servlet-specific error occurs
82 | * @throws IOException if an I/O error occurs
83 | */
84 | @Override
85 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
86 | throws ServletException, IOException {
87 | processRequest(request, response);
88 | }
89 |
90 | /**
91 | * Returns a short description of the servlet.
92 | *
93 | * @return a String containing servlet description
94 | */
95 | @Override
96 | public String getServletInfo() {
97 | return "Short description";
98 | }// | First Name | 28 |${selected_driver.firstName} | 29 |
|---|---|
| Last Name | 32 |${selected_driver.lastName} | 33 |
| Gender | 36 |${selected_driver.gender} | 37 |
| Car Model | 40 |${selected_driver.myCar.carModel} | 41 |
| Mobile Number | 44 |${selected_driver.mobileNumber} | 45 |
| Seat Availability | 63 |${param.seat_availability} | 64 |
|---|---|
| Starting Location | 67 |${param.starting_location} | 68 |
| Ending Location | 71 |${param.ending_location} | 72 |
| Arrival/Departure Time | 75 |${param.arrival_dep_time} | 76 |
GET and POST
31 | * methods.
32 | *
33 | * @param request servlet request
34 | * @param response servlet response
35 | * @throws ServletException if a servlet-specific error occurs
36 | * @throws IOException if an I/O error occurs
37 | */
38 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
39 | throws ServletException, IOException {
40 | String Driver_ID = request.getParameter("driverID");
41 | String Action = request.getParameter("action");
42 |
43 | HttpSession session = request.getSession();
44 |
45 | if ("accept".equals(Action))
46 | {
47 | Admin.acceptDriverRequest(Driver_ID);
48 | String Message = "Driver Application Request Accepted Successfully!";
49 | RequestDispatcher rd = request.getRequestDispatcher("DriverAcceptedOrRejected.jsp");
50 | request.setAttribute("Message", Message);
51 | rd.forward(request, response);
52 |
53 |
54 | }
55 | else if("cancel".equals(Action))
56 | {
57 | Admin.rejectDriverRequest(Driver_ID);
58 | String Message = "Driver Application Request Rejected Successfully!";
59 | RequestDispatcher rd = request.getRequestDispatcher("DriverAcceptedOrRejected.jsp");
60 | request.setAttribute("Message", Message);
61 | rd.forward(request, response);
62 | }
63 |
64 |
65 |
66 |
67 | }
68 |
69 | // GET method.
72 | *
73 | * @param request servlet request
74 | * @param response servlet response
75 | * @throws ServletException if a servlet-specific error occurs
76 | * @throws IOException if an I/O error occurs
77 | */
78 | @Override
79 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
80 | throws ServletException, IOException {
81 | processRequest(request, response);
82 | }
83 |
84 | /**
85 | * Handles the HTTP POST method.
86 | *
87 | * @param request servlet request
88 | * @param response servlet response
89 | * @throws ServletException if a servlet-specific error occurs
90 | * @throws IOException if an I/O error occurs
91 | */
92 | @Override
93 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
94 | throws ServletException, IOException {
95 | processRequest(request, response);
96 | }
97 |
98 | /**
99 | * Returns a short description of the servlet.
100 | *
101 | * @return a String containing servlet description
102 | */
103 | @Override
104 | public String getServletInfo() {
105 | return "Short description";
106 | }// GET and POST
30 | * methods.
31 | *
32 | * @param request servlet request
33 | * @param response servlet response
34 | * @throws ServletException if a servlet-specific error occurs
35 | * @throws IOException if an I/O error occurs
36 | */
37 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
38 | throws ServletException, IOException {
39 | String Passenger_ID = request.getParameter("passengerid");
40 | String Ride_ID = request.getParameter("rideid");
41 | String Passenger_Status = request.getParameter("passengerstatus");
42 | HttpSession session = request.getSession();
43 | Driver d = (Driver) session.getAttribute("driver"); //Get the Driver logged in Right now
44 | if (d != null) {
45 | if ("Confirm/Remove".equals(Passenger_Status))
46 | {
47 | String Message = "Confirm or Remove Pending Passenger:";
48 | RequestDispatcher rd = request.getRequestDispatcher("ConfirmOrRemovePendingPassenger.jsp");
49 | request.setAttribute("Message", Message);
50 | request.setAttribute("Passenger_ID", Passenger_ID);
51 | request.setAttribute("Ride_ID", Ride_ID);
52 | rd.forward(request, response);
53 | }
54 | else
55 | {
56 |
57 | String Message = "Remove Registered Passenger:";
58 | RequestDispatcher rd = request.getRequestDispatcher("RemoveRegisteredPassenger.jsp");
59 | request.setAttribute("Message", Message);
60 | request.setAttribute("Passenger_ID", Passenger_ID);
61 | request.setAttribute("Ride_ID", Ride_ID);
62 | rd.forward(request, response);
63 | }
64 |
65 |
66 | }
67 | }
68 |
69 | // GET method.
72 | *
73 | * @param request servlet request
74 | * @param response servlet response
75 | * @throws ServletException if a servlet-specific error occurs
76 | * @throws IOException if an I/O error occurs
77 | */
78 | @Override
79 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
80 | throws ServletException, IOException {
81 | processRequest(request, response);
82 | }
83 |
84 | /**
85 | * Handles the HTTP POST method.
86 | *
87 | * @param request servlet request
88 | * @param response servlet response
89 | * @throws ServletException if a servlet-specific error occurs
90 | * @throws IOException if an I/O error occurs
91 | */
92 | @Override
93 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
94 | throws ServletException, IOException {
95 | processRequest(request, response);
96 | }
97 |
98 | /**
99 | * Returns a short description of the servlet.
100 | *
101 | * @return a String containing servlet description
102 | */
103 | @Override
104 | public String getServletInfo() {
105 | return "Short description";
106 | }// GET and POST
32 | * methods.
33 | *
34 | * @param request servlet request
35 | * @param response servlet response
36 | * @throws ServletException if a servlet-specific error occurs
37 | * @throws IOException if an I/O error occurs
38 | */
39 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
40 | throws ServletException, IOException {
41 |
42 | String email = request.getParameter("email");
43 | String password = request.getParameter("pwd");
44 | String fname = request.getParameter("fname");
45 | String lname = request.getParameter("lname");
46 | String gender = request.getParameter("gender");
47 | String mobilenumber = request.getParameter("mobilenumber");
48 |
49 | boolean isAdded;
50 | try {
51 | isAdded = (new Platform()).submitRegistrationFormDetails(email, password, fname, lname, gender, mobilenumber);
52 | if (isAdded) {
53 | RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
54 | request.setAttribute("errmsg", "You can now log-in with your registered ID");
55 | rd.forward(request, response);
56 | } else {
57 | RequestDispatcher rd = request.getRequestDispatcher("NewUserRegistration.jsp");
58 | request.setAttribute("errmsg", "User Already Exist");
59 | rd.forward(request, response);
60 | }
61 | } catch (SQLException ex) {
62 | RequestDispatcher rd = request.getRequestDispatcher("NewUserRegistration.jsp");
63 | request.setAttribute("errmsg", "Connection Issues. Try again later. Please note you can only submit the form once.");
64 | rd.forward(request, response);
65 | Logger.getLogger(RegisterController.class.getName()).log(Level.SEVERE, null, ex);
66 | } catch (NoSuchAlgorithmException ex) {
67 | Logger.getLogger(RegisterController.class.getName()).log(Level.SEVERE, null, ex);
68 | } catch (UnsupportedEncodingException ex) {
69 | Logger.getLogger(RegisterController.class.getName()).log(Level.SEVERE, null, ex);
70 | }
71 |
72 | }
73 |
74 | // GET method.
77 | *
78 | * @param request servlet request
79 | * @param response servlet response
80 | * @throws ServletException if a servlet-specific error occurs
81 | * @throws IOException if an I/O error occurs
82 | */
83 | @Override
84 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
85 | throws ServletException, IOException {
86 | processRequest(request, response);
87 | }
88 |
89 | /**
90 | * Handles the HTTP POST method.
91 | *
92 | * @param request servlet request
93 | * @param response servlet response
94 | * @throws ServletException if a servlet-specific error occurs
95 | * @throws IOException if an I/O error occurs
96 | */
97 | @Override
98 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
99 | throws ServletException, IOException {
100 | processRequest(request, response);
101 | }
102 |
103 | /**
104 | * Returns a short description of the servlet.
105 | *
106 | * @return a String containing servlet description
107 | */
108 | @Override
109 | public String getServletInfo() {
110 | return "Short description";
111 | }// GET and POST
37 | * methods.
38 | *
39 | * @param request servlet request
40 | * @param response servlet response
41 | * @throws ServletException if a servlet-specific error occurs
42 | * @throws IOException if an I/O error occurs
43 | */
44 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
45 | throws ServletException, IOException {
46 |
47 | String carModel = request.getParameter("carModel");
48 | String capacity = request.getParameter("capacity");
49 |
50 | // obtains the upload file part in this multipart request
51 | Part filePartEID = request.getPart("EID");
52 | Part filePartLicense = request.getPart("license");
53 | Part filePartCarReg = request.getPart("carReg");
54 | System.out.println(filePartCarReg);
55 | HttpSession session = request.getSession();
56 | Passenger p = (Passenger) session.getAttribute("passenger");
57 | Integer carCapacity = Integer.parseInt(capacity);
58 |
59 | boolean checkDetails = p.checkDriverRegistrationDetails(carModel, carCapacity, filePartEID, filePartLicense, filePartCarReg);
60 | if(checkDetails){
61 | try {
62 | System.out.println("Inside");
63 | Driver d = new Driver();
64 | boolean success = d.updateDriverProfile(p.getEmailID(), carModel, carCapacity, filePartEID, filePartLicense, filePartCarReg);
65 | if(success){
66 | request.setAttribute("errmsg", "Submitted your application. Please wait for admin to review.");
67 | }else{
68 | System.out.println("Driver did not add");
69 | request.setAttribute("errmsg", "Something went wrong. Try again Later");
70 | }
71 | } catch (SQLException ex) {
72 | Logger.getLogger(RegisterDriverController.class.getName()).log(Level.SEVERE, null, ex);
73 | request.setAttribute("errmsg", "Something went wrong. If you already submitted a request earlier, please have patience.");
74 | }
75 | }else{
76 | System.out.println("Passenger said false");
77 | request.setAttribute("errmsg", "Something went wrong. Please enter details correctly.");
78 | }
79 | RequestDispatcher rd = request.getRequestDispatcher("RegisterAsDriver.jsp");
80 | rd.forward(request, response);
81 | }
82 |
83 | // GET method.
86 | *
87 | * @param request servlet request
88 | * @param response servlet response
89 | * @throws ServletException if a servlet-specific error occurs
90 | * @throws IOException if an I/O error occurs
91 | */
92 | @Override
93 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
94 | throws ServletException, IOException {
95 | processRequest(request, response);
96 | }
97 |
98 | /**
99 | * Handles the HTTP POST method.
100 | *
101 | * @param request servlet request
102 | * @param response servlet response
103 | * @throws ServletException if a servlet-specific error occurs
104 | * @throws IOException if an I/O error occurs
105 | */
106 | @Override
107 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
108 | throws ServletException, IOException {
109 | processRequest(request, response);
110 | }
111 |
112 | /**
113 | * Returns a short description of the servlet.
114 | *
115 | * @return a String containing servlet description
116 | */
117 | @Override
118 | public String getServletInfo() {
119 | return "Short description";
120 | }// GET and POST
31 | * methods.
32 | *
33 | * @param request servlet request
34 | * @param response servlet response
35 | * @throws ServletException if a servlet-specific error occurs
36 | * @throws IOException if an I/O error occurs
37 | */
38 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
39 | throws ServletException, IOException {
40 | //Collect and parse all form inputs
41 | boolean isSingle = request.getParameter("single_or_weekly").equals("single");
42 | String isToUni = (request.getParameter("to_from_uni").equals("to") ? "1" : "0");
43 | LocalDate date = null;
44 | ArrayListGET method.
84 | *
85 | * @param request servlet request
86 | * @param response servlet response
87 | * @throws ServletException if a servlet-specific error occurs
88 | * @throws IOException if an I/O error occurs
89 | */
90 | @Override
91 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
92 | throws ServletException, IOException {
93 | processRequest(request, response);
94 | }
95 |
96 | /**
97 | * Handles the HTTP POST method.
98 | *
99 | * @param request servlet request
100 | * @param response servlet response
101 | * @throws ServletException if a servlet-specific error occurs
102 | * @throws IOException if an I/O error occurs
103 | */
104 | @Override
105 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
106 | throws ServletException, IOException {
107 | processRequest(request, response);
108 | }
109 |
110 | /**
111 | * Returns a short description of the servlet.
112 | *
113 | * @return a String containing servlet description
114 | */
115 | @Override
116 | public String getServletInfo() {
117 | return "Short description";
118 | }// GET and POST
30 | * methods.
31 | *
32 | * @param request servlet request
33 | * @param response servlet response
34 | * @throws ServletException if a servlet-specific error occurs
35 | * @throws IOException if an I/O error occurs
36 | */
37 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
38 | throws ServletException, IOException {
39 | String Passenger_ID = request.getParameter("passenger_id");
40 | String Ride_ID = request.getParameter("rideid");
41 | String Choice = request.getParameter("choice");
42 |
43 | HttpSession session = request.getSession();
44 | Driver d = (Driver) session.getAttribute("driver"); //Get the Driver logged in Right now
45 | if (d != null) {
46 |
47 | if ("Confirm".equals(Choice))
48 | {
49 | String Confirmation = d.ConfirmPassengerRequest(Ride_ID, Passenger_ID);
50 | if("Confirmed".equals(Confirmation))
51 | {
52 | String Message = "Passenger Confirmed Successfully!";
53 | RequestDispatcher rd = request.getRequestDispatcher("RemoveRegisteredPassenger.jsp");
54 | request.setAttribute("Message", Message);
55 | request.setAttribute("Ride_ID", Ride_ID);
56 | request.setAttribute("Passenger_ID", Passenger_ID);
57 | rd.forward(request, response);
58 | }
59 | else if ("No Seats".equals(Confirmation))
60 | {
61 | String Message = "No Seats Available in Requested Ride!";
62 | RequestDispatcher rd = request.getRequestDispatcher("PassengerRemovedOrNotConfirmed.jsp");
63 | request.setAttribute("Message", Message);
64 | request.setAttribute("Ride_ID", Ride_ID);
65 | rd.forward(request, response);
66 | }
67 | }
68 | else if("RemoveNew".equals(Choice))
69 | {
70 | d.RemovePassenger(Ride_ID, Passenger_ID);
71 | String Message = "Passenger Request Rejected Successfully!";
72 | RequestDispatcher rd = request.getRequestDispatcher("PassengerRemovedOrNotConfirmed.jsp");
73 | request.setAttribute("Message", Message);
74 | request.setAttribute("Ride_ID", Ride_ID);
75 | rd.forward(request, response);
76 | }
77 | else if("RemoveRegistered".equals(Choice))
78 | {
79 | d.RemovePassenger(Ride_ID, Passenger_ID);
80 | String Message = "Passenger Removed Successfully!";
81 | RequestDispatcher rd = request.getRequestDispatcher("PassengerRemovedOrNotConfirmed.jsp");
82 | request.setAttribute("Message", Message);
83 | request.setAttribute("Ride_ID", Ride_ID);
84 | rd.forward(request, response);
85 | }
86 |
87 |
88 |
89 | }
90 | }
91 |
92 | // GET method.
95 | *
96 | * @param request servlet request
97 | * @param response servlet response
98 | * @throws ServletException if a servlet-specific error occurs
99 | * @throws IOException if an I/O error occurs
100 | */
101 | @Override
102 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
103 | throws ServletException, IOException {
104 | processRequest(request, response);
105 | }
106 |
107 | /**
108 | * Handles the HTTP POST method.
109 | *
110 | * @param request servlet request
111 | * @param response servlet response
112 | * @throws ServletException if a servlet-specific error occurs
113 | * @throws IOException if an I/O error occurs
114 | */
115 | @Override
116 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
117 | throws ServletException, IOException {
118 | processRequest(request, response);
119 | }
120 |
121 | /**
122 | * Returns a short description of the servlet.
123 | *
124 | * @return a String containing servlet description
125 | */
126 | @Override
127 | public String getServletInfo() {
128 | return "Short description";
129 | }// | Ride ID | 34 |To Uni? | 35 |Arrival/Departure Time | 36 |Start Location | 37 |End Location | 38 |Current Seat Availability | 39 |Date | 42 |Day | 45 |Request Ride | 48 |View Driver Info | 49 | 50 |
| 79 | |
GET and POST
36 | * methods.
37 | *
38 | * @param request servlet request
39 | * @param response servlet response
40 | * @throws ServletException if a servlet-specific error occurs
41 | * @throws IOException if an I/O error occurs
42 | */
43 | protected void processRequest(HttpServletRequest request, HttpServletResponse response)
44 | throws ServletException, IOException {
45 |
46 | try {
47 | String userName = request.getParameter("email");
48 | String password = request.getParameter("pwd");
49 | boolean isValid= false;
50 | try {
51 | isValid = (new Account(userName, password)).login();
52 | } catch (NoSuchAlgorithmException ex) {
53 | Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
54 | } catch (UnsupportedEncodingException ex) {
55 | Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
56 | }
57 | if (isValid) {//Successful login
58 | HttpSession session = request.getSession();
59 | if (session != null) //If session is not null
60 | {
61 | //removes all session attributes bound to the session
62 | while (session.getAttributeNames().hasMoreElements()) {
63 | session.removeAttribute(session.getAttributeNames().nextElement());
64 | }
65 | }
66 | session.setAttribute("username", userName);
67 | //If admin, go to the view driver applications page
68 | if (Admin.isAdmin(userName)) {
69 |
70 |
71 | RequestDispatcher rd = request.getRequestDispatcher("ViewDriverRequestsController");
72 |
73 |
74 | rd.forward(request, response);
75 | }
76 | //else passenger and/or driver login
77 | Passenger p = Passenger.getPassenger(userName);
78 | session.setAttribute("passenger", p);
79 | if (p.isDriver()) {
80 | Driver d = new Driver();
81 | d.setEmailID(userName);
82 | session.setAttribute("driver", d);
83 | System.out.println("setting as driver" + userName);
84 | }
85 | RequestDispatcher rd = request.getRequestDispatcher("findRide.jsp");
86 | rd.forward(request, response);
87 | } else { // GO back to login page
88 | request.setAttribute("errmsg", "Username or Password is Invalid");
89 | RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
90 | rd.forward(request, response);
91 | }
92 | } catch (SQLException ex) {
93 | Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
94 | request.setAttribute("errmsg", "Connection Error");
95 | RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
96 | rd.forward(request, response);
97 | }
98 |
99 | }
100 |
101 | // GET method.
104 | *
105 | * @param request servlet request
106 | * @param response servlet response
107 | * @throws ServletException if a servlet-specific error occurs
108 | * @throws IOException if an I/O error occurs
109 | */
110 | @Override
111 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
112 | throws ServletException, IOException {
113 | processRequest(request, response);
114 | }
115 |
116 | /**
117 | * Handles the HTTP POST method.
118 | *
119 | * @param request servlet request
120 | * @param response servlet response
121 | * @throws ServletException if a servlet-specific error occurs
122 | * @throws IOException if an I/O error occurs
123 | */
124 | @Override
125 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
126 | throws ServletException, IOException {
127 | processRequest(request, response);
128 | }
129 |
130 | /**
131 | * Returns a short description of the servlet.
132 | *
133 | * @return a String containing servlet description
134 | */
135 | @Override
136 | public String getServletInfo() {
137 | return "Short description";
138 | }// | Passenger No. 81 | | Ride_ID 82 | | Passenger_ID 83 | | Pickup Location 84 | | Dropoff Location 85 | | View Passenger Information 86 | | Action 87 | 88 | |
|---|---|---|---|---|---|---|
| <%out.println(i);%> | 96 |${request.requested_ride_id} | 97 |${request.passengerid} | 98 |${request.pickupLocation} | 99 |${request.dropoffLocation} | 100 |101 | | 102 | 103 | <% i++;%> 104 | |
GET method.
105 | *
106 | * @param request servlet request
107 | * @param response servlet response
108 | * @throws ServletException if a servlet-specific error occurs
109 | * @throws IOException if an I/O error occurs
110 | */
111 | @Override
112 | protected void doGet(HttpServletRequest request, HttpServletResponse response)
113 | throws ServletException, IOException {
114 | processRequest(request, response);
115 | }
116 |
117 | /**
118 | * Handles the HTTP POST method.
119 | *
120 | * @param request servlet request
121 | * @param response servlet response
122 | * @throws ServletException if a servlet-specific error occurs
123 | * @throws IOException if an I/O error occurs
124 | */
125 | @Override
126 | protected void doPost(HttpServletRequest request, HttpServletResponse response)
127 | throws ServletException, IOException {
128 | processRequest(request, response);
129 | }
130 |
131 | /**
132 | * Returns a short description of the servlet.
133 | *
134 | * @return a String containing servlet description
135 | */
136 | @Override
137 | public String getServletInfo() {
138 | return "Short description";
139 | }// | Ride ID | 35 |To Uni? | 36 |Arrival/Departure Time | 37 |Start Location | 38 |End Location | 39 |Current Seat Availability | 40 |Date | 41 |View Passenger Requests | 42 |Cancel Ride | 43 | 44 |
| ${ride.rideId} | 52 |${ride.isToUni} | 53 |${ride.arrivalDepartureTime} | 54 |${ride.startingLocation} | 55 |${ride.endingLocation} | 56 |${ride.seatAvailability} | 57 |${ride.date} | 58 |59 | | 60 | |
| Ride ID | 78 |To Uni? | 79 |Arrival/Departure Time | 80 |Start Location | 81 |End Location | 82 |Current Seat Availability | 83 |Day | 84 |View Passenger Requests | 85 |Cancel Ride | 86 | 87 |
| ${ride.rideId} | 96 |${ride.isToUni} | 97 |${ride.arrivalDepartureTime} | 98 |${ride.startingLocation} | 99 |${ride.endingLocation} | 100 |${ride.seatAvailability} | 101 |${ride.day} | 102 |103 | | 104 | |
| Ride ID | 35 |To Uni? | 36 |Arrival/Departure Time | 37 |Start Location | 38 |End Location | 39 |Current Seat Availability | 40 |Date | 41 |More Info | 42 |
| ${ride.rideId} | 50 |${ride.isToUni} | 51 |${ride.arrivalDepartureTime} | 52 |${ride.startingLocation} | 53 |${ride.endingLocation} | 54 |${ride.seatAvailability} | 55 |${ride.date} | 56 |57 | 65 | | 66 |
| Ride ID | 84 |To Uni? | 85 |Arrival/Departure Time | 86 |Start Location | 87 |End Location | 88 |Current Seat Availability | 89 |Day | 90 |More Info | 91 | 92 |
| ${ride.rideId} | 101 |${ride.isToUni} | 102 |${ride.arrivalDepartureTime} | 103 |${ride.startingLocation} | 104 |${ride.endingLocation} | 105 |${ride.seatAvailability} | 106 |${ride.day} | 107 |108 | 116 | | 117 |