├── .gitignore ├── BusTicketReservationSystem ├── .settings │ ├── org.eclipse.core.resources.prefs │ └── org.eclipse.jdt.core.prefs ├── Assets │ ├── logo.png │ ├── Adminlogin.png │ ├── bookTicket.png │ ├── Customerlogin.png │ ├── BackFunctionality.png │ └── Exceptional Handling.png ├── bin │ └── com │ │ └── bus │ │ ├── bean │ │ ├── Bus.class │ │ ├── Ticket.class │ │ ├── Customer.class │ │ └── CustomerDTO.class │ │ ├── main │ │ └── Main.class │ │ ├── dao │ │ ├── AdminDao.class │ │ ├── AdminDaoImpl.class │ │ ├── CustomerDao.class │ │ └── CustomerDaoImpl.class │ │ ├── utility │ │ └── DButil.class │ │ ├── custom │ │ └── ConsoleColors.class │ │ ├── exceptions │ │ ├── BusException.class │ │ └── CustomerException.class │ │ └── usecases │ │ ├── AddBus1usecase.class │ │ ├── AddBus2usecase.class │ │ ├── CusLoginusecase.class │ │ ├── AdminLoginusecase.class │ │ ├── CusSignUp1usecase.class │ │ ├── CusSignUp2usecase.class │ │ ├── ViewTicketusecase.class │ │ ├── UpdateStatususecase.class │ │ ├── BookTicketbNameusecase.class │ │ ├── ViewAllTicketsusecase.class │ │ └── CancelTicketbNameusecase.class ├── ProjectDetails │ ├── ER diagram │ │ └── ERdiagram.png │ ├── Methods.txt │ ├── SQLqueries.txt │ └── TableRelationship.txt ├── src │ └── com │ │ └── bus │ │ ├── exceptions │ │ ├── BusException.java │ │ └── CustomerException.java │ │ ├── usecases │ │ ├── ViewAllTicketsusecase.java │ │ ├── ViewTicketusecase.java │ │ ├── UpdateStatususecase.java │ │ ├── AdminLoginusecase.java │ │ ├── CancelTicketbNameusecase.java │ │ ├── CusLoginusecase.java │ │ ├── BookTicketbNameusecase.java │ │ ├── CusSignUp1usecase.java │ │ ├── CusSignUp2usecase.java │ │ ├── AddBus1usecase.java │ │ └── AddBus2usecase.java │ │ ├── dao │ │ ├── AdminDao.java │ │ ├── CustomerDao.java │ │ ├── AdminDaoImpl.java │ │ └── CustomerDaoImpl.java │ │ ├── utility │ │ └── DButil.java │ │ ├── bean │ │ ├── Ticket.java │ │ ├── Customer.java │ │ ├── Bus.java │ │ └── CustomerDTO.java │ │ ├── main │ │ └── Main.java │ │ └── custom │ │ └── ConsoleColors.java ├── .classpath └── .project └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | /.metadata/ 2 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding/=UTF-8 3 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/Assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/Assets/logo.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/Assets/Adminlogin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/Assets/Adminlogin.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/Assets/bookTicket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/Assets/bookTicket.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/Assets/Customerlogin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/Assets/Customerlogin.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/bean/Bus.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/bean/Bus.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/main/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/main/Main.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/Assets/BackFunctionality.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/Assets/BackFunctionality.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/bean/Ticket.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/bean/Ticket.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/dao/AdminDao.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/dao/AdminDao.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/Assets/Exceptional Handling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/Assets/Exceptional Handling.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/bean/Customer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/bean/Customer.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/utility/DButil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/utility/DButil.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/bean/CustomerDTO.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/bean/CustomerDTO.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/dao/AdminDaoImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/dao/AdminDaoImpl.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/dao/CustomerDao.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/dao/CustomerDao.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/dao/CustomerDaoImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/dao/CustomerDaoImpl.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/ProjectDetails/ER diagram/ERdiagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/ProjectDetails/ER diagram/ERdiagram.png -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/custom/ConsoleColors.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/custom/ConsoleColors.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/exceptions/BusException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/exceptions/BusException.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/AddBus1usecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/AddBus1usecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/AddBus2usecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/AddBus2usecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/CusLoginusecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/CusLoginusecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/AdminLoginusecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/AdminLoginusecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/CusSignUp1usecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/CusSignUp1usecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/CusSignUp2usecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/CusSignUp2usecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/ViewTicketusecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/ViewTicketusecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/exceptions/CustomerException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/exceptions/CustomerException.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/UpdateStatususecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/UpdateStatususecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/BookTicketbNameusecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/BookTicketbNameusecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/ViewAllTicketsusecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/ViewAllTicketsusecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/bin/com/bus/usecases/CancelTicketbNameusecase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mayurisamanta/Bus-Ticket-Reservation-System/HEAD/BusTicketReservationSystem/bin/com/bus/usecases/CancelTicketbNameusecase.class -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/exceptions/BusException.java: -------------------------------------------------------------------------------- 1 | package com.bus.exceptions; 2 | 3 | public class BusException extends Exception{ 4 | 5 | public BusException() { 6 | 7 | } 8 | 9 | public BusException(String str) { 10 | super (str); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/exceptions/CustomerException.java: -------------------------------------------------------------------------------- 1 | package com.bus.exceptions; 2 | 3 | public class CustomerException extends Exception{ 4 | 5 | public CustomerException(){ 6 | 7 | } 8 | 9 | public CustomerException(String str){ 10 | super(str); 11 | } 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/ViewAllTicketsusecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import com.bus.dao.AdminDao; 4 | import com.bus.dao.AdminDaoImpl; 5 | 6 | public class ViewAllTicketsusecase { 7 | 8 | public static void viewAllTicket() { 9 | 10 | AdminDao dao = new AdminDaoImpl(); 11 | dao.viewAllTickets(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/ViewTicketusecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import com.bus.bean.Customer; 4 | import com.bus.dao.CustomerDao; 5 | import com.bus.dao.CustomerDaoImpl; 6 | 7 | public class ViewTicketusecase { 8 | 9 | public static void viewTicket(Customer customer) { 10 | 11 | CustomerDao dao = new CustomerDaoImpl(); 12 | 13 | dao.viewTicket(customer.getCusId()); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/ProjectDetails/Methods.txt: -------------------------------------------------------------------------------- 1 | Methods : 2 | ========= 3 | 4 | Customer : 5 | ---------- 6 | 7 | -- cusSignUp (string) --> add in customer table 8 | -- cusLogin (customer) 9 | -- bookTicket (boolean) --> add in Booking table 10 | -- cancelTicket (string) --> remove from Booking table 11 | -- allTickets () 12 | 13 | Administrator : 14 | --------------- 15 | 16 | -- adminLogin (string) 17 | -- addBus (string) --> add in bus table 18 | -- confirmationOfSeats (customerDTO) --> update in Booking table 19 | -- allBookingDetails () 20 | 21 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/dao/AdminDao.java: -------------------------------------------------------------------------------- 1 | package com.bus.dao; 2 | 3 | import com.bus.bean.Bus; 4 | 5 | public interface AdminDao { 6 | 7 | public final String username = "Admin"; 8 | 9 | public final String password = "1234"; 10 | 11 | public String adminLogin(String username, String password); 12 | 13 | public String addBus(int busNo, String bName, String routeFrom, String routeTo, String bType, String arrival, String departure, 14 | int totalSeats, int availSeats, int fare); 15 | 16 | public String addBus(Bus bus); 17 | 18 | public String updateStatus(int cusId); 19 | 20 | public void viewAllTickets(); 21 | } 22 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/utility/DButil.java: -------------------------------------------------------------------------------- 1 | package com.bus.utility; 2 | 3 | import java.sql.Connection; 4 | import java.sql.DriverManager; 5 | import java.sql.SQLException; 6 | 7 | public class DButil { 8 | 9 | public static Connection provideConnection() { 10 | Connection conn = null; 11 | 12 | try { 13 | Class.forName("com.mysql.cj.jdbc.Driver"); 14 | } catch (ClassNotFoundException e) { 15 | e.printStackTrace(); 16 | } 17 | 18 | String url = "jdbc:mysql://localhost:3306/busreservation"; 19 | 20 | try { 21 | conn = DriverManager.getConnection(url, "root", "root"); 22 | } catch (SQLException e) { 23 | e.printStackTrace(); 24 | } 25 | 26 | 27 | return conn; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/dao/CustomerDao.java: -------------------------------------------------------------------------------- 1 | package com.bus.dao; 2 | 3 | import com.bus.bean.Customer; 4 | import com.bus.exceptions.BusException; 5 | import com.bus.exceptions.CustomerException; 6 | 7 | public interface CustomerDao { 8 | 9 | public String cusSignUp (String username, String password, String firstName, String lastName, String address, String mobile) ; 10 | 11 | public String cusSignUp (Customer customer); 12 | 13 | public Customer cusLogin (String username, String password) throws CustomerException; 14 | 15 | public String bookTicket (String bName, int cusId, int no) throws BusException; 16 | 17 | public String cancelTicket(String bName, int cusId) throws BusException; 18 | 19 | public void viewTicket(int cusId); 20 | } 21 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | BusTicketReservationSystem 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | 19 | 1665023656027 20 | 21 | 30 22 | 23 | org.eclipse.core.resources.regexFilterMatcher 24 | node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/UpdateStatususecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.Scanner; 4 | 5 | import com.bus.custom.ConsoleColors; 6 | import com.bus.dao.AdminDao; 7 | import com.bus.dao.AdminDaoImpl; 8 | 9 | public class UpdateStatususecase { 10 | 11 | public static void updateStatus() { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | System.out.println(ConsoleColors.ORANGE + "Enter customer Id" + ConsoleColors.RESET); 15 | int cusId = sc.nextInt(); 16 | 17 | AdminDao dao = new AdminDaoImpl(); 18 | 19 | String result = dao.updateStatus(cusId); 20 | boolean flag = true; 21 | 22 | for (int i = 0; i < result.length(); i++) { 23 | if (result.charAt(i) == 'n') flag = false; 24 | } 25 | 26 | if (flag) System.out.println(ConsoleColors.GREEN_BACKGROUND + result + ConsoleColors.RESET); 27 | else System.out.println(ConsoleColors.RED_BACKGROUND + result + ConsoleColors.RESET); 28 | 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/AdminLoginusecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.Scanner; 4 | 5 | import com.bus.custom.ConsoleColors; 6 | import com.bus.dao.AdminDao; 7 | import com.bus.dao.AdminDaoImpl; 8 | 9 | public class AdminLoginusecase { 10 | 11 | public static boolean AdminLogin() { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | System.out.println(ConsoleColors.ORANGE + "Enter username" + ConsoleColors.RESET); 16 | String username = sc.next(); 17 | 18 | System.out.println(ConsoleColors.ORANGE + "Enter password" + ConsoleColors.RESET); 19 | String password = sc.next(); 20 | 21 | AdminDao dao = new AdminDaoImpl(); 22 | String result = dao.adminLogin(username, password); 23 | 24 | if (result.equals("Login Successfull")){ 25 | System.out.println(ConsoleColors.GREEN_BACKGROUND + result + ConsoleColors.RESET); 26 | return true; 27 | } 28 | else { 29 | System.out.println(ConsoleColors.RED_BACKGROUND + result + ConsoleColors.RESET); 30 | return false; 31 | } 32 | 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/ProjectDetails/SQLqueries.txt: -------------------------------------------------------------------------------- 1 | cusSignUp1 / cusSignUp2 : 2 | -------------------------- 3 | insert into customer(username, password, firstName, lastName, address, mobile) values (?,?,?,?,?,?); 4 | 5 | 6 | cusLogin : 7 | ---------- 8 | select * from customer where username = ? and password = ?; 9 | 10 | 11 | addBus : 12 | -------- 13 | insert into bus values (?,?,?,?,?,?,?,?,?,?); 14 | 15 | 16 | bookTicket by Bus Name : 17 | ------------------------ 18 | select * from bus where bName = ?; 19 | select datediff(?, current_date()); 20 | insert into booking(cusId, busNo, seatFrom, seatTo) values (?, ?, ?, ?); 21 | update bus set availseats = ? where busNo = ?; 22 | 23 | cancelTicket by Bus Name : 24 | -------------------------- 25 | select * from bus where bName = ?; 26 | select * from booking where busNo = ? and cusId = ?; 27 | delete from booking where busNo = ? and cusId = ?; 28 | update bus set availseats = ? where busNo = ?; 29 | 30 | viewTicket : 31 | ------------ 32 | select * from booking where cusId = ?; 33 | 34 | 35 | updateStatus : 36 | -------------- 37 | update booking set status = true where cusId = ?; 38 | 39 | 40 | viewAllTickets : 41 | ---------------- 42 | select * from booking; -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/CancelTicketbNameusecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.Scanner; 4 | 5 | import com.bus.bean.Customer; 6 | import com.bus.custom.ConsoleColors; 7 | import com.bus.dao.CustomerDao; 8 | import com.bus.dao.CustomerDaoImpl; 9 | import com.bus.exceptions.BusException; 10 | 11 | public class CancelTicketbNameusecase { 12 | 13 | public static void cancelTicket(Customer customer) { 14 | 15 | Scanner sc = new Scanner(System.in); 16 | 17 | System.out.println(ConsoleColors.ORANGE + "Enter Bus Name" + ConsoleColors.RESET); 18 | String bName = sc.nextLine(); 19 | 20 | CustomerDao dao = new CustomerDaoImpl(); 21 | try { 22 | 23 | int cusId = customer.getCusId(); 24 | String message = dao.cancelTicket(bName, cusId); 25 | 26 | if (message.equals("Ticket cancelled Successfully")) { 27 | System.out.println(ConsoleColors.GREEN_BACKGROUND + message + ConsoleColors.RESET); 28 | } 29 | else { 30 | System.out.println(ConsoleColors.RED_BACKGROUND + message + ConsoleColors.RESET); 31 | } 32 | 33 | } catch (BusException e) { 34 | System.out.println(ConsoleColors.RED_BACKGROUND + e.getMessage() + ConsoleColors.RESET); 35 | } 36 | 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/ProjectDetails/TableRelationship.txt: -------------------------------------------------------------------------------- 1 | Table Bus : 2 | ==================== 3 | create table bus( 4 | busNo int primary key, 5 | bName varchar(20) not null unique, 6 | routeFrom varchar(20) not null, 7 | routeTo varchar(20) not null, 8 | bType varchar(5) not null check (bType = 'AC' OR bType = 'NonAC'), 9 | departure Datetime not null, 10 | arrival Datetime not null, 11 | totalSeats int not null, 12 | availSeats int not null, 13 | fare int not null 14 | ); 15 | 16 | Table Customer : 17 | ===================== 18 | create table customer ( 19 | cusId int primary key auto_increment, 20 | username varchar(20) not null unique, 21 | password varchar(20) not null, 22 | firstName varchar(20) not null, 23 | lastName varchar(20) not null, 24 | address varchar(20) not null, 25 | mobile varchar(12) not null 26 | ); 27 | 28 | Table Booking : 29 | ================== 30 | create table booking ( 31 | bId int primary key auto_increment, 32 | cusId int not null, 33 | busNo int not null, 34 | seatFrom int not null, 35 | seatTo int not null, 36 | status boolean default false, 37 | foreign key (cusId) references Customer(cusId), 38 | foreign key (busNo) references Bus(busNo) 39 | ); 40 | 41 | -- Customer and Bus has many to many relationship. 42 | -- Using Booking table as linking between Customer and Bus. 43 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/CusLoginusecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.bean.Customer; 7 | import com.bus.custom.ConsoleColors; 8 | import com.bus.dao.CustomerDao; 9 | import com.bus.dao.CustomerDaoImpl; 10 | import com.bus.exceptions.CustomerException; 11 | 12 | public class CusLoginusecase { 13 | 14 | public static Customer CusLogin() { 15 | 16 | Customer customer = null; 17 | 18 | try { 19 | 20 | Scanner sc = new Scanner (System.in); 21 | 22 | System.out.println(ConsoleColors.ORANGE + "Enter Username" + ConsoleColors.RESET); 23 | String username = sc.next(); 24 | 25 | System.out.println(ConsoleColors.ORANGE + "Enter Password" + ConsoleColors.RESET); 26 | String password = sc.next(); 27 | 28 | CustomerDao dao = new CustomerDaoImpl(); 29 | 30 | try { 31 | customer = dao.cusLogin(username, password); 32 | 33 | System.out.println(ConsoleColors.ROSY_PINK + "Welcome " + customer.getFirstName() + " " + customer.getLastName() + ConsoleColors.RESET); 34 | } catch (CustomerException e) { 35 | 36 | System.out.println(ConsoleColors.RED_BACKGROUND + e.getMessage() + ConsoleColors.RESET); 37 | } 38 | } 39 | catch (InputMismatchException e) { 40 | System.out.println(ConsoleColors.RED_BACKGROUND + e.getMessage() + ConsoleColors.RESET); 41 | } 42 | 43 | return customer; 44 | 45 | } 46 | 47 | } 48 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/BookTicketbNameusecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.bean.Customer; 7 | import com.bus.custom.ConsoleColors; 8 | import com.bus.dao.CustomerDao; 9 | import com.bus.dao.CustomerDaoImpl; 10 | import com.bus.exceptions.BusException; 11 | 12 | public class BookTicketbNameusecase { 13 | 14 | public static void BookTicketbName(Customer customer) { 15 | 16 | Scanner sc = new Scanner(System.in); 17 | 18 | System.out.println(ConsoleColors.ORANGE + "Enter Bus Name" + ConsoleColors.RESET); 19 | String bName = sc.next(); 20 | 21 | CustomerDao dao = new CustomerDaoImpl(); 22 | try { 23 | System.out.println(ConsoleColors.ORANGE + "Enter no. of Tickets to Book" + ConsoleColors.RESET); 24 | int no = sc.nextInt(); 25 | 26 | int cusId = customer.getCusId(); 27 | String message = dao.bookTicket(bName, cusId, no); 28 | 29 | if (message.equals("Ticket Booked Successfully")) { 30 | System.out.println(ConsoleColors.GREEN_BACKGROUND + message + ConsoleColors.RESET); 31 | } 32 | else { 33 | System.out.println(ConsoleColors.RED_BACKGROUND + message + ConsoleColors.RESET); 34 | } 35 | 36 | } catch (BusException e) { 37 | System.out.println(ConsoleColors.RED_BACKGROUND + e.getMessage() + ConsoleColors.RESET); 38 | } 39 | catch (InputMismatchException e) { 40 | System.out.println(ConsoleColors.RED_BACKGROUND + "Invalid input" + ConsoleColors.RESET); 41 | } 42 | 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/bean/Ticket.java: -------------------------------------------------------------------------------- 1 | package com.bus.bean; 2 | 3 | public class Ticket { 4 | 5 | private int bId; 6 | 7 | private int cusId; 8 | 9 | private int busNo; 10 | 11 | private int seatFrom; 12 | 13 | private int seatTo; 14 | 15 | private boolean status; 16 | 17 | public Ticket(int bId, int cusId, int busNo, int seatFrom, int seatTo, boolean status) { 18 | super(); 19 | this.bId = bId; 20 | this.cusId = cusId; 21 | this.busNo = busNo; 22 | this.seatFrom = seatFrom; 23 | this.seatTo = seatTo; 24 | this.status = status; 25 | } 26 | 27 | public Ticket() { 28 | super(); 29 | } 30 | 31 | public int getbId() { 32 | return bId; 33 | } 34 | 35 | public void setbId(int bId) { 36 | this.bId = bId; 37 | } 38 | 39 | public int getCusId() { 40 | return cusId; 41 | } 42 | 43 | public void setCusId(int cusId) { 44 | this.cusId = cusId; 45 | } 46 | 47 | public int getBusNo() { 48 | return busNo; 49 | } 50 | 51 | public void setBusNo(int busNo) { 52 | this.busNo = busNo; 53 | } 54 | 55 | public int getSeatFrom() { 56 | return seatFrom; 57 | } 58 | 59 | public void setSeatFrom(int seatFrom) { 60 | this.seatFrom = seatFrom; 61 | } 62 | 63 | public int getSeatTo() { 64 | return seatTo; 65 | } 66 | 67 | public void setSeatTo(int seatTo) { 68 | this.seatTo = seatTo; 69 | } 70 | 71 | public boolean isStatus() { 72 | return status; 73 | } 74 | 75 | public void setStatus(boolean status) { 76 | this.status = status; 77 | } 78 | 79 | @Override 80 | public String toString() { 81 | return "Ticket [bId=" + bId + ", cusId=" + cusId + ", busNo=" + busNo + ", seatFrom=" + seatFrom + ", seatTo=" 82 | + seatTo + ", status=" + status + "]"; 83 | } 84 | 85 | 86 | } 87 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/CusSignUp1usecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.bean.Customer; 7 | import com.bus.custom.ConsoleColors; 8 | import com.bus.dao.CustomerDao; 9 | import com.bus.dao.CustomerDaoImpl; 10 | 11 | public class CusSignUp1usecase { 12 | 13 | public static boolean cusSignUp() { 14 | 15 | boolean flag = false; 16 | 17 | try { 18 | Scanner sc = new Scanner(System.in); 19 | 20 | System.out.println(ConsoleColors.ORANGE + "Enter Username" + ConsoleColors.RESET); 21 | String username = sc.next(); 22 | 23 | System.out.println(ConsoleColors.ORANGE + "Enter Password" + ConsoleColors.RESET); 24 | String password = sc.next(); 25 | 26 | System.out.println(ConsoleColors.ORANGE + "Enter First Name" + ConsoleColors.RESET); 27 | String firstName = sc.next(); 28 | 29 | System.out.println(ConsoleColors.ORANGE + "Enter Last Name" + ConsoleColors.RESET); 30 | String lastName = sc.next(); 31 | 32 | sc.nextLine(); 33 | System.out.println(ConsoleColors.ORANGE + "Enter Address" + ConsoleColors.RESET); 34 | String address = sc.nextLine(); 35 | 36 | System.out.println(ConsoleColors.ORANGE + "Enter Mobile" + ConsoleColors.RESET); 37 | String mobile = sc.next(); 38 | 39 | CustomerDao dao = new CustomerDaoImpl(); 40 | 41 | String result = dao.cusSignUp(username, password, firstName, lastName, address, mobile); 42 | 43 | 44 | if (result == "Sign up Successfull") { 45 | System.out.println(ConsoleColors.GREEN_BACKGROUND + result + ConsoleColors.RESET); 46 | flag = true; 47 | } 48 | else { 49 | System.out.println(ConsoleColors.RED_BACKGROUND + result + ConsoleColors.RESET); 50 | } 51 | 52 | } 53 | catch (InputMismatchException e) { 54 | System.out.println(ConsoleColors.RED_BACKGROUND + "Invalid Input" + ConsoleColors.RESET); 55 | } 56 | 57 | return flag; 58 | } 59 | 60 | } 61 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/CusSignUp2usecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.bean.Customer; 7 | import com.bus.custom.ConsoleColors; 8 | import com.bus.dao.CustomerDao; 9 | import com.bus.dao.CustomerDaoImpl; 10 | 11 | public class CusSignUp2usecase { 12 | 13 | public static boolean cusSignUp() { 14 | 15 | boolean flag = false; 16 | 17 | try { 18 | Scanner sc = new Scanner(System.in); 19 | 20 | System.out.println(ConsoleColors.ORANGE + "Enter Username" + ConsoleColors.RESET); 21 | String username = sc.next(); 22 | 23 | System.out.println(ConsoleColors.ORANGE + "Enter Password" + ConsoleColors.RESET); 24 | String password = sc.next(); 25 | 26 | System.out.println(ConsoleColors.ORANGE + "Enter First Name" + ConsoleColors.RESET); 27 | String firstName = sc.next(); 28 | 29 | System.out.println(ConsoleColors.ORANGE + "Enter Last Name" + ConsoleColors.RESET); 30 | String lastName = sc.next(); 31 | 32 | sc.nextLine(); 33 | System.out.println(ConsoleColors.ORANGE + "Enter Address" + ConsoleColors.RESET); 34 | String address = sc.nextLine(); 35 | 36 | System.out.println(ConsoleColors.ORANGE + "Enter Mobile" + ConsoleColors.RESET); 37 | String mobile = sc.next(); 38 | 39 | CustomerDao dao = new CustomerDaoImpl(); 40 | Customer customer = new Customer(username, password, firstName, lastName, address, mobile); 41 | 42 | String result = dao.cusSignUp(customer); 43 | 44 | 45 | if (result == "Sign up Successfull") { 46 | flag = true; 47 | System.out.println(ConsoleColors.GREEN_BACKGROUND + result + ConsoleColors.RESET); 48 | } 49 | else { 50 | System.out.println(ConsoleColors.RED_BACKGROUND + result + ConsoleColors.RESET); 51 | } 52 | 53 | } 54 | catch (InputMismatchException e) { 55 | System.out.println(ConsoleColors.RED_BACKGROUND + "Invalid Input" + ConsoleColors.RESET); 56 | } 57 | 58 | return flag; 59 | } 60 | 61 | } 62 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/AddBus1usecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.custom.ConsoleColors; 7 | import com.bus.dao.AdminDao; 8 | import com.bus.dao.AdminDaoImpl; 9 | 10 | public class AddBus1usecase { 11 | 12 | public static void AddBus() { 13 | 14 | Scanner sc = new Scanner(System.in); 15 | 16 | try { 17 | 18 | System.out.println(ConsoleColors.ORANGE + "Enter Bus number" + ConsoleColors.RESET); 19 | int busNo = sc.nextInt(); 20 | 21 | System.out.println(ConsoleColors.ORANGE + "Enter bus name" + ConsoleColors.RESET); 22 | String bName = sc.next(); 23 | 24 | System.out.println(ConsoleColors.ORANGE + "Enter Route from" + ConsoleColors.RESET); 25 | String routeFrom = sc.next(); 26 | 27 | System.out.println(ConsoleColors.ORANGE + "Enter Routo To" + ConsoleColors.RESET); 28 | String routeTo = sc.next(); 29 | 30 | System.out.println(ConsoleColors.ORANGE + "Enter Bus Type - AC / NonAC" + ConsoleColors.RESET); 31 | String bType = sc.next(); 32 | 33 | sc.nextLine(); 34 | System.out.println(ConsoleColors.ORANGE + "Enter Departure date and time in format (YYYY-MM-DD HH:MI:SS)" + ConsoleColors.RESET); 35 | String departure = sc.nextLine(); 36 | 37 | System.out.println(ConsoleColors.ORANGE + "Enter Arrival date and time in format (YYYY-MM-DD HH:MI:SS)" + ConsoleColors.RESET); 38 | String arrival = sc.nextLine(); 39 | 40 | System.out.println(ConsoleColors.ORANGE + "Enter Total Seats" + ConsoleColors.RESET); 41 | int totalSeats = sc.nextInt(); 42 | 43 | System.out.println(ConsoleColors.ORANGE + "Enter Available Seats" + ConsoleColors.RESET); 44 | int availSeats = sc.nextInt(); 45 | 46 | System.out.println(ConsoleColors.ORANGE + "Enter fare" + ConsoleColors.RESET); 47 | int fare = sc.nextInt(); 48 | 49 | AdminDao dao = new AdminDaoImpl(); 50 | 51 | String result = dao.addBus(busNo, bName, routeFrom, routeTo, bType, departure, arrival, totalSeats, availSeats, fare); 52 | 53 | if (result.equals("Bus added Successfully")) { 54 | System.out.println(ConsoleColors.GREEN_BACKGROUND + result + ConsoleColors.RESET); 55 | } 56 | else { 57 | System.out.println(ConsoleColors.RED_BACKGROUND + result + ConsoleColors.RESET); 58 | } 59 | } 60 | catch (InputMismatchException e) { 61 | System.out.println(ConsoleColors.RED_BACKGROUND + "Invalid input" + ConsoleColors.RESET); 62 | } 63 | 64 | } 65 | 66 | } 67 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/usecases/AddBus2usecase.java: -------------------------------------------------------------------------------- 1 | package com.bus.usecases; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.bean.Bus; 7 | import com.bus.custom.ConsoleColors; 8 | import com.bus.dao.AdminDao; 9 | import com.bus.dao.AdminDaoImpl; 10 | 11 | public class AddBus2usecase { 12 | 13 | public static void AddBus() { 14 | 15 | Scanner sc = new Scanner(System.in); 16 | 17 | try { 18 | 19 | System.out.println(ConsoleColors.ORANGE + "Enter Bus number" + ConsoleColors.RESET); 20 | int busNo = sc.nextInt(); 21 | 22 | System.out.println(ConsoleColors.ORANGE + "Enter bus name" + ConsoleColors.RESET); 23 | String bName = sc.next(); 24 | 25 | System.out.println(ConsoleColors.ORANGE + "Enter Route from" + ConsoleColors.RESET); 26 | String routeFrom = sc.next(); 27 | 28 | System.out.println(ConsoleColors.ORANGE + "Enter Routo To" + ConsoleColors.RESET); 29 | String routeTo = sc.next(); 30 | 31 | System.out.println(ConsoleColors.ORANGE + "Enter Bus Type - AC / NonAC" + ConsoleColors.RESET); 32 | String bType = sc.next(); 33 | 34 | sc.nextLine(); 35 | System.out.println(ConsoleColors.ORANGE + "Enter Departure date and time in format (YYYY-MM-DD HH:MI:SS)" + ConsoleColors.RESET); 36 | String departure = sc.nextLine(); 37 | 38 | System.out.println(ConsoleColors.ORANGE + "Enter Arrival date and time in format (YYYY-MM-DD HH:MI:SS)" + ConsoleColors.RESET); 39 | String arrival = sc.nextLine(); 40 | 41 | System.out.println(ConsoleColors.ORANGE + "Enter Total Seats" + ConsoleColors.RESET); 42 | int totalSeats = sc.nextInt(); 43 | 44 | System.out.println(ConsoleColors.ORANGE + "Enter Available Seats" + ConsoleColors.RESET); 45 | int availSeats = sc.nextInt(); 46 | 47 | System.out.println(ConsoleColors.ORANGE + "Enter fare" + ConsoleColors.RESET); 48 | int fare = sc.nextInt(); 49 | 50 | Bus bus = new Bus(busNo, bName, routeFrom, routeTo, bType, departure, arrival, totalSeats, availSeats, fare); 51 | 52 | AdminDao dao = new AdminDaoImpl(); 53 | 54 | String result = dao.addBus(bus); 55 | 56 | if (result.equals("Bus added Successfully")) { 57 | System.out.println(ConsoleColors.GREEN_BACKGROUND + result + ConsoleColors.RESET); 58 | } 59 | else { 60 | System.out.println(ConsoleColors.RED_BACKGROUND + result + ConsoleColors.RESET); 61 | } 62 | } 63 | catch (InputMismatchException e) { 64 | System.out.println(ConsoleColors.RED_BACKGROUND + "Invalid input" + ConsoleColors.RESET); 65 | } 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/bean/Customer.java: -------------------------------------------------------------------------------- 1 | package com.bus.bean; 2 | 3 | public class Customer { 4 | 5 | private int cusId; 6 | 7 | private String username; 8 | 9 | private String password; 10 | 11 | private String firstName; 12 | 13 | private String lastName; 14 | 15 | private String address; 16 | 17 | private String mobile; 18 | 19 | public Customer() { 20 | super(); 21 | } 22 | 23 | public Customer(String username, String password, String firstName, String lastName, String address, 24 | String mobile) { 25 | super(); 26 | this.username = username; 27 | this.password = password; 28 | this.firstName = firstName; 29 | this.lastName = lastName; 30 | this.address = address; 31 | this.mobile = mobile; 32 | } 33 | 34 | public Customer(int cusId, String username, String password, String firstName, String lastName, String address, 35 | String mobile) { 36 | super(); 37 | this.cusId = cusId; 38 | this.username = username; 39 | this.password = password; 40 | this.firstName = firstName; 41 | this.lastName = lastName; 42 | this.address = address; 43 | this.mobile = mobile; 44 | } 45 | 46 | public int getCusId() { 47 | return cusId; 48 | } 49 | 50 | public void setCusId(int cusId) { 51 | this.cusId = cusId; 52 | } 53 | 54 | public String getUsername() { 55 | return username; 56 | } 57 | 58 | public void setUsername(String username) { 59 | this.username = username; 60 | } 61 | 62 | public String getPassword() { 63 | return password; 64 | } 65 | 66 | public void setPassword(String password) { 67 | this.password = password; 68 | } 69 | 70 | public String getFirstName() { 71 | return firstName; 72 | } 73 | 74 | public void setFirstName(String firstName) { 75 | this.firstName = firstName; 76 | } 77 | 78 | public String getLastName() { 79 | return lastName; 80 | } 81 | 82 | public void setLastName(String lastName) { 83 | this.lastName = lastName; 84 | } 85 | 86 | public String getAddress() { 87 | return address; 88 | } 89 | 90 | public void setAddress(String address) { 91 | this.address = address; 92 | } 93 | 94 | public String getMobile() { 95 | return mobile; 96 | } 97 | 98 | public void setMobile(String mobile) { 99 | this.mobile = mobile; 100 | } 101 | 102 | @Override 103 | public String toString() { 104 | return "Customer [cusId=" + cusId + ", username=" + username + ", password=" + password + ", firstName=" 105 | + firstName + ", lastName=" + lastName + ", address=" + address + ", mobile=" + mobile + "]"; 106 | } 107 | 108 | 109 | } 110 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/bean/Bus.java: -------------------------------------------------------------------------------- 1 | package com.bus.bean; 2 | 3 | public class Bus { 4 | 5 | private int busNo; 6 | 7 | private String bName; 8 | 9 | private String routeFrom; 10 | 11 | private String routeTo; 12 | 13 | private String bType; 14 | 15 | private String arrival; 16 | 17 | private String departure; 18 | 19 | private int totalSeats; 20 | 21 | private int availSeats; 22 | 23 | private int fare; 24 | 25 | public Bus(int busNo, String bName, String routeFrom, String routeTo, String bType, String arrival, 26 | String departure, int totalSeats, int availSeats, int fare) { 27 | super(); 28 | this.busNo = busNo; 29 | this.bName = bName; 30 | this.routeFrom = routeFrom; 31 | this.routeTo = routeTo; 32 | this.bType = bType; 33 | this.arrival = arrival; 34 | this.departure = departure; 35 | this.totalSeats = totalSeats; 36 | this.availSeats = availSeats; 37 | this.fare = fare; 38 | } 39 | 40 | public Bus() { 41 | super(); 42 | } 43 | 44 | public int getBusNo() { 45 | return busNo; 46 | } 47 | 48 | public void setBusNo(int busNo) { 49 | this.busNo = busNo; 50 | } 51 | 52 | public String getbName() { 53 | return bName; 54 | } 55 | 56 | public void setbName(String bName) { 57 | this.bName = bName; 58 | } 59 | 60 | public String getRouteFrom() { 61 | return routeFrom; 62 | } 63 | 64 | public void setRouteFrom(String routeFrom) { 65 | this.routeFrom = routeFrom; 66 | } 67 | 68 | public String getRouteTo() { 69 | return routeTo; 70 | } 71 | 72 | public void setRouteTo(String routeTo) { 73 | this.routeTo = routeTo; 74 | } 75 | 76 | public String getbType() { 77 | return bType; 78 | } 79 | 80 | public void setbType(String bType) { 81 | this.bType = bType; 82 | } 83 | 84 | public String getArrival() { 85 | return arrival; 86 | } 87 | 88 | public void setArrival(String arrival) { 89 | this.arrival = arrival; 90 | } 91 | 92 | public String getDeparture() { 93 | return departure; 94 | } 95 | 96 | public void setDeparture(String departure) { 97 | this.departure = departure; 98 | } 99 | 100 | public int getTotalSeats() { 101 | return totalSeats; 102 | } 103 | 104 | public void setTotalSeats(int totalSeats) { 105 | this.totalSeats = totalSeats; 106 | } 107 | 108 | public int getAvailSeats() { 109 | return availSeats; 110 | } 111 | 112 | public void setAvailSeats(int availSeats) { 113 | this.availSeats = availSeats; 114 | } 115 | 116 | public int getFare() { 117 | return fare; 118 | } 119 | 120 | public void setFare(int fare) { 121 | this.fare = fare; 122 | } 123 | 124 | @Override 125 | public String toString() { 126 | return "Bus [busNo=" + busNo + ", bName=" + bName + ", routeFrom=" + routeFrom + ", routeTo=" + routeTo 127 | + ", bType=" + bType + ", arrival=" + arrival + ", departure=" + departure + ", totalSeats=" 128 | + totalSeats + ", availSeats=" + availSeats + ", fare=" + fare + "]"; 129 | } 130 | 131 | 132 | 133 | } 134 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Logo](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/Assets/logo.png?raw=true) 2 | 3 | # Bus Ticket Reservation System 4 | 5 | > A bus ticket reservation system is an java application designed to provide customers with a personalized easy-to-utilize user experience for booking and purchasing tickets online. It stores customers' personal data records, scheduled routes, frequent trips, drop points, and other information. 6 | 7 | > Bus ticket reservation system is a console based application. 8 | 9 | > Build Bus ticket reservation system application during the construct week at [Masai School](https://masaischool.com/). Completed the project within five days. 10 | 11 | > Secure 1st position among all individual projects [Click here](https://drive.google.com/file/d/1_P7966B7k6BcIrKtC8Rat-WfJogMw0Z7/view?usp=sharing) 12 | 13 | # 👉 [Click here](https://drive.google.com/file/d/1jlyVHpzDhLKQOJf6ulayLUYJ4bejyv5B/view?usp=sharing) to go through detail explanation of this application 14 | 15 | # Features 16 | 17 | - Administrator can login his username and password 18 | - Administrator can provide details like Bus Name, Bus Route, Bus Type –AC/non-AC, seats, departure time and arrival time 19 | - Administrator can provide the confirmation of the seat to the Customer 20 | - Customer can register by giving all the details 21 | - Customer can login his username and password 22 | - Customer can book ticket by selecting Source and destination 23 | - Customer can cancel ticket 24 | 25 | # Technology used 26 | 27 | - Java 28 | - MySQL 29 | - JDBC 30 | - spring tool suite eclipse 31 | - Git & GitHub 32 | 33 | # Lessons Learned 34 | 35 | - Gain excessive knowledge on application of Java, JDBC and MySQL. 36 | - Enjoyed the process of learning and creating the application. 37 | 38 | # Overview of my work 39 | 40 | ## **ER Diagram** 41 | *Customer and Bus has many to many relationship* 42 |
43 | *Booking table as linking between Customer and Bus* 44 |
45 | ![Er diagram](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/ProjectDetails/ER%20diagram/ERdiagram.png?raw=true) 46 | 47 | ## **Administrator Login** 48 | *Admin can login by using username (Admin) and password (1234)* 49 |
50 | ![Admin login](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/Assets/Adminlogin.png?raw=true) 51 | 52 | 53 | ## **Customer Login** 54 | *Customer can signup first if not registered earlier* 55 |
56 | *Customer can login with earlier provided username and password* 57 |
58 | ![Customer login](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/Assets/Customerlogin.png?raw=true) 59 | 60 | ## **Back Functionality** 61 | *User can go back to the previous option* 62 |
63 | ![Back functionality](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/Assets/BackFunctionality.png?raw=true) 64 | 65 | ## **Exception Handling** 66 | *If user provides wrong input, the appropriate error message will appear* 67 |
68 | ![Exception Handling](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/Assets/Exceptional%20Handling.png?raw=true) 69 | 70 | ## **Book Ticket Functionality** 71 | *Customer can't book same day or previous day ticket* 72 |
73 | ![Book Ticket Functionality](https://github.com/mayurisamanta/zealous-price-4318/blob/main/BusTicketReservationSystem/Assets/bookTicket.png?raw=true) 74 | 75 | # Feedback 76 | > Valuable feedback will be appreciated. 77 | > You can reach out to me via below medium. 78 | 79 | - [Email](mayurisamanta@gmail.com) 80 | - [Linkedin](https://www.linkedin.com/in/mayuri-samanta/) 81 | # Contributor 82 | #### Mayuri Samanta 83 | >[GitHub](https://github.com/mayurisamanta) 84 | 85 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/bean/CustomerDTO.java: -------------------------------------------------------------------------------- 1 | package com.bus.bean; 2 | 3 | public class CustomerDTO { 4 | 5 | private int BId; 6 | 7 | private String firstName; 8 | 9 | private String lastName; 10 | 11 | private String mobile; 12 | 13 | private int busNo; 14 | 15 | private String bName; 16 | 17 | private String routeFrom; 18 | 19 | private String routeTo; 20 | 21 | private String arrival; 22 | 23 | private String departure; 24 | 25 | private int fare; 26 | 27 | private int seatFrom; 28 | 29 | private int seatTo; 30 | 31 | private boolean status; 32 | 33 | public CustomerDTO(int bId, String firstName, String lastName, String mobile, int busNo, String bName, 34 | String routeFrom, String routeTo, String arrival, String departure, int fare, int seatFrom, int seatTo, 35 | boolean status) { 36 | super(); 37 | BId = bId; 38 | this.firstName = firstName; 39 | this.lastName = lastName; 40 | this.mobile = mobile; 41 | this.busNo = busNo; 42 | this.bName = bName; 43 | this.routeFrom = routeFrom; 44 | this.routeTo = routeTo; 45 | this.arrival = arrival; 46 | this.departure = departure; 47 | this.fare = fare; 48 | this.seatFrom = seatFrom; 49 | this.seatTo = seatTo; 50 | this.status = status; 51 | } 52 | 53 | public CustomerDTO() { 54 | super(); 55 | } 56 | 57 | public int getBId() { 58 | return BId; 59 | } 60 | 61 | public void setBId(int bId) { 62 | BId = bId; 63 | } 64 | 65 | public String getFirstName() { 66 | return firstName; 67 | } 68 | 69 | public void setFirstName(String firstName) { 70 | this.firstName = firstName; 71 | } 72 | 73 | public String getLastName() { 74 | return lastName; 75 | } 76 | 77 | public void setLastName(String lastName) { 78 | this.lastName = lastName; 79 | } 80 | 81 | public String getMobile() { 82 | return mobile; 83 | } 84 | 85 | public void setMobile(String mobile) { 86 | this.mobile = mobile; 87 | } 88 | 89 | public int getBusNo() { 90 | return busNo; 91 | } 92 | 93 | public void setBusNo(int busNo) { 94 | this.busNo = busNo; 95 | } 96 | 97 | public String getbName() { 98 | return bName; 99 | } 100 | 101 | public void setbName(String bName) { 102 | this.bName = bName; 103 | } 104 | 105 | public String getRouteFrom() { 106 | return routeFrom; 107 | } 108 | 109 | public void setRouteFrom(String routeFrom) { 110 | this.routeFrom = routeFrom; 111 | } 112 | 113 | public String getRouteTo() { 114 | return routeTo; 115 | } 116 | 117 | public void setRouteTo(String routeTo) { 118 | this.routeTo = routeTo; 119 | } 120 | 121 | public String getArrival() { 122 | return arrival; 123 | } 124 | 125 | public void setArrival(String arrival) { 126 | this.arrival = arrival; 127 | } 128 | 129 | public String getDeparture() { 130 | return departure; 131 | } 132 | 133 | public void setDeparture(String departure) { 134 | this.departure = departure; 135 | } 136 | 137 | public int getFare() { 138 | return fare; 139 | } 140 | 141 | public void setFare(int fare) { 142 | this.fare = fare; 143 | } 144 | 145 | public int getSeatFrom() { 146 | return seatFrom; 147 | } 148 | 149 | public void setSeatFrom(int seatFrom) { 150 | this.seatFrom = seatFrom; 151 | } 152 | 153 | public int getSeatTo() { 154 | return seatTo; 155 | } 156 | 157 | public void setSeatTo(int seatTo) { 158 | this.seatTo = seatTo; 159 | } 160 | 161 | public boolean isStatus() { 162 | return status; 163 | } 164 | 165 | public void setStatus(boolean status) { 166 | this.status = status; 167 | } 168 | 169 | @Override 170 | public String toString() { 171 | return "CustomerDTO [BId=" + BId + ", firstName=" + firstName + ", lastName=" + lastName + ", mobile=" + mobile 172 | + ", busNo=" + busNo + ", bName=" + bName + ", routeFrom=" + routeFrom + ", routeTo=" + routeTo 173 | + ", arrival=" + arrival + ", departure=" + departure + ", fare=" + fare + ", seatFrom=" + seatFrom 174 | + ", seatTo=" + seatTo + ", status=" + status + "]"; 175 | } 176 | 177 | 178 | 179 | 180 | } 181 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/dao/AdminDaoImpl.java: -------------------------------------------------------------------------------- 1 | package com.bus.dao; 2 | 3 | import java.sql.Connection; 4 | import java.sql.PreparedStatement; 5 | import java.sql.ResultSet; 6 | import java.sql.SQLException; 7 | 8 | import com.bus.bean.Bus; 9 | import com.bus.custom.ConsoleColors; 10 | import com.bus.utility.DButil; 11 | 12 | public class AdminDaoImpl implements AdminDao{ 13 | 14 | @Override 15 | public String adminLogin(String username, String password) { 16 | 17 | String message = "Invalid username or password"; 18 | 19 | if (username.equals(AdminDao.username) && password.equals(AdminDao.password)) { 20 | message = "Login Successfull"; 21 | } 22 | 23 | return message; 24 | } 25 | 26 | @Override 27 | public String addBus(int busNo, String bName, String routeFrom, String routeTo, String bType, String arrival, 28 | String departure, int totalSeats, int availSeats, int fare) { 29 | 30 | String message = "Bus not Added"; 31 | 32 | try (Connection conn = DButil.provideConnection()){ 33 | PreparedStatement ps = conn.prepareStatement("insert into bus values (?,?,?,?,?,?,?,?,?,?)"); 34 | 35 | ps.setInt(1, busNo); 36 | ps.setString(2, bName); 37 | ps.setString(3, routeFrom); 38 | ps.setString(4, routeTo); 39 | ps.setString(5, bType); 40 | ps.setString(6, arrival); 41 | ps.setString(7, departure); 42 | ps.setInt(8,totalSeats); 43 | ps.setInt(9, availSeats); 44 | ps.setInt(10, fare); 45 | 46 | int x = ps.executeUpdate(); 47 | 48 | if (x > 0) message = "Bus added Successfully"; 49 | 50 | } 51 | catch (SQLException e) { 52 | message = e.getMessage(); 53 | } 54 | 55 | return message; 56 | } 57 | 58 | @Override 59 | public String addBus(Bus bus) { 60 | String message = "Bus not Added"; 61 | 62 | try (Connection conn = DButil.provideConnection()){ 63 | PreparedStatement ps = conn.prepareStatement("insert into bus values (?,?,?,?,?,?,?,?,?,?)"); 64 | 65 | ps.setInt(1, bus.getBusNo()); 66 | ps.setString(2, bus.getbName()); 67 | ps.setString(3, bus.getRouteFrom()); 68 | ps.setString(4, bus.getRouteTo()); 69 | ps.setString(5, bus.getbType()); 70 | ps.setString(6, bus.getArrival()); 71 | ps.setString(7, bus.getDeparture()); 72 | ps.setInt(8,bus.getTotalSeats()); 73 | ps.setInt(9, bus.getAvailSeats()); 74 | ps.setInt(10, bus.getFare()); 75 | 76 | int x = ps.executeUpdate(); 77 | 78 | if (x > 0) message = "Bus added Successfully"; 79 | 80 | } 81 | catch (SQLException e) { 82 | message = e.getMessage(); 83 | } 84 | 85 | return message; 86 | } 87 | 88 | @Override 89 | public String updateStatus(int cusId) { 90 | String message = "Status not update for customer Id : " + cusId; 91 | 92 | try(Connection conn = DButil.provideConnection()){ 93 | PreparedStatement ps = conn.prepareStatement("update booking set status = true where cusId = ?"); 94 | ps.setInt(1, cusId); 95 | 96 | int x = ps.executeUpdate(); 97 | if (x > 0) message = "Status successfully updated for customer Id : " + cusId; 98 | 99 | } 100 | catch (SQLException e) { 101 | message = e.getMessage(); 102 | } 103 | 104 | return message; 105 | } 106 | 107 | @Override 108 | public void viewAllTickets() { 109 | boolean flag = false; 110 | 111 | try(Connection conn = DButil.provideConnection()){ 112 | PreparedStatement ps1 = conn.prepareStatement("select * from booking"); 113 | 114 | ResultSet rs1 = ps1.executeQuery(); 115 | 116 | while (rs1.next()) { 117 | flag = true; 118 | 119 | System.out.println(ConsoleColors.ROSY_PINK + "----------------------------------------------------" + ConsoleColors.RESET); 120 | System.out.println(ConsoleColors.ROSY_PINK + "Bus Id : " + rs1.getInt("bId") + ConsoleColors.RESET); 121 | System.out.println(ConsoleColors.ROSY_PINK + "Bus No : " + rs1.getInt("busNo") + ConsoleColors.RESET); 122 | System.out.println(ConsoleColors.ROSY_PINK + "Total tickets : " + (rs1.getInt("seatTo") - rs1.getInt("seatFrom") + 1) + ConsoleColors.RESET); 123 | if (rs1.getInt("status") == 1) System.out.println(ConsoleColors.ROSY_PINK + "Status : Booked" + ConsoleColors.RESET); 124 | else System.out.println(ConsoleColors.ROSY_PINK + "Status : Pending" + ConsoleColors.RESET); 125 | 126 | System.out.println(ConsoleColors.ROSY_PINK + "----------------------------------------------------" + ConsoleColors.RESET); 127 | } 128 | 129 | if (flag == false) System.out.println(ConsoleColors.RED_BACKGROUND + "No tickets found" + ConsoleColors.RESET); 130 | } 131 | catch (SQLException s){ 132 | System.out.println(ConsoleColors.RED_BACKGROUND + s.getMessage() + ConsoleColors.RESET); 133 | } 134 | 135 | } 136 | 137 | 138 | 139 | } 140 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/main/Main.java: -------------------------------------------------------------------------------- 1 | package com.bus.main; 2 | 3 | import java.util.InputMismatchException; 4 | import java.util.Scanner; 5 | 6 | import com.bus.bean.Customer; 7 | import com.bus.custom.ConsoleColors; 8 | import com.bus.usecases.AddBus2usecase; 9 | import com.bus.usecases.AdminLoginusecase; 10 | import com.bus.usecases.BookTicketbNameusecase; 11 | import com.bus.usecases.CancelTicketbNameusecase; 12 | import com.bus.usecases.CusLoginusecase; 13 | import com.bus.usecases.CusSignUp2usecase; 14 | import com.bus.usecases.UpdateStatususecase; 15 | import com.bus.usecases.ViewAllTicketsusecase; 16 | import com.bus.usecases.ViewTicketusecase; 17 | 18 | public class Main { 19 | static void AdminOrCustomer() { 20 | System.out.println(ConsoleColors.PURPLE + "+---------------------------+" + "\n" 21 | + "| 1. Login As Administrator |" + "\n" 22 | + "| 2. Login As Customer |" + "\n" 23 | + "| 3. Exit |" + "\n" 24 | + "+---------------------------+" + ConsoleColors.RESET); 25 | choice(); 26 | } 27 | 28 | static void choice() { 29 | Scanner sc = new Scanner(System.in); 30 | 31 | int choice = 0; 32 | try { 33 | choice = sc.nextInt(); 34 | } 35 | catch (InputMismatchException e) { 36 | System.out.println(ConsoleColors.RED_BACKGROUND + "Input type should be number" + ConsoleColors.RESET); 37 | AdminOrCustomer(); 38 | } 39 | 40 | if (choice == 1) { 41 | System.out.println(ConsoleColors.ROSY_PINK + "Welcome Admin ! Please Login to your account" + ConsoleColors.RESET); 42 | AdminLogin(); 43 | } 44 | else if (choice == 2) { 45 | System.out.println(ConsoleColors.ROSY_PINK + "Welcome Customer !" + ConsoleColors.RESET); 46 | customerLoginOrSignup(); 47 | } 48 | else if (choice == 3) { 49 | System.out.println(ConsoleColors.ROSY_PINK + "Thank you ! Visit again" + ConsoleColors.RESET); 50 | System.exit(0); 51 | } 52 | else { 53 | System.out.println(ConsoleColors.RED_BACKGROUND + "Please choose a number from below options" + ConsoleColors.RESET); 54 | AdminOrCustomer(); 55 | } 56 | } 57 | 58 | static void AdminLogin() { 59 | 60 | Boolean result = AdminLoginusecase.AdminLogin(); 61 | 62 | if (result) adminMethods(); 63 | else { 64 | AdminLogin(); 65 | } 66 | } 67 | 68 | static void adminMethods() { 69 | System.out.println(ConsoleColors.PURPLE + "+--------------------------------+" + "\n" 70 | + "| Welcome Admin |" + "\n" 71 | + "| 1. Add Bus |" + "\n" 72 | + "| 2. Confirm Tickets of Customer |" + "\n" 73 | + "| 3. View All Bookings |" + "\n" 74 | + "| 4. Back |" + "\n" 75 | + "| 5. Exit |" + "\n" 76 | + "+--------------------------------+" + ConsoleColors.RESET); 77 | 78 | Scanner sc = new Scanner(System.in); 79 | 80 | int choice = 0; 81 | try { 82 | choice = sc.nextInt(); 83 | if (choice != 1 && choice != 2 && choice != 3 && choice != 4 && choice != 5) { 84 | System.out.println(ConsoleColors.RED_BACKGROUND + "Please choose a number from below options" + ConsoleColors.RESET); 85 | adminMethods(); 86 | } 87 | else adminChoice(choice); 88 | } 89 | catch (InputMismatchException e) { 90 | 91 | System.out.println(ConsoleColors.RED_BACKGROUND + "Input type should be number" + ConsoleColors.RESET); 92 | adminMethods(); 93 | } 94 | } 95 | 96 | static void adminChoice(int choice) { 97 | 98 | switch(choice) { 99 | case 1 : { 100 | AddBus2usecase.AddBus(); 101 | adminMethods(); 102 | } 103 | break; 104 | case 2 : { 105 | UpdateStatususecase.updateStatus(); 106 | adminMethods(); 107 | } 108 | break; 109 | case 3 : { 110 | ViewAllTicketsusecase.viewAllTicket(); 111 | adminMethods(); 112 | } 113 | break; 114 | case 4 : AdminOrCustomer(); 115 | break; 116 | case 5 : { 117 | System.out.println(ConsoleColors.ROSY_PINK + "Thank you ! Visit again" + ConsoleColors.RESET); 118 | System.exit(0); 119 | } 120 | } 121 | } 122 | 123 | static void customerLoginOrSignup() { 124 | System.out.println(ConsoleColors.PURPLE + "+--------------------------------+" + "\n" 125 | + "| 1. Login to your Account |" + "\n" 126 | + "| 2. Don't have Account? Sign Up |" + "\n" 127 | + "| 3. Back |" + "\n" 128 | + "| 4. Exit |" + "\n" 129 | + "+--------------------------------+" + ConsoleColors.RESET); 130 | try { 131 | Scanner sc = new Scanner(System.in); 132 | int choice = sc.nextInt(); 133 | 134 | if (choice == 1) { 135 | customerLogin(); 136 | } 137 | else if (choice == 2) { 138 | customerSignup(); 139 | } 140 | else if (choice == 3) { 141 | AdminOrCustomer(); 142 | } 143 | else if (choice == 4) { 144 | System.out.println(ConsoleColors.ROSY_PINK + "Thank you ! Visit again" + ConsoleColors.RESET); 145 | System.exit(0); 146 | } 147 | else { 148 | System.out.println(ConsoleColors.RED_BACKGROUND + "Please choose a number from below options" + ConsoleColors.RESET); 149 | customerLoginOrSignup(); 150 | } 151 | } 152 | catch (InputMismatchException e) { 153 | System.out.println(ConsoleColors.RED_BACKGROUND + "Input type should be number" + ConsoleColors.RESET); 154 | customerLoginOrSignup(); 155 | } 156 | 157 | } 158 | 159 | static void customerLogin() { 160 | Customer customer = CusLoginusecase.CusLogin(); 161 | 162 | if (customer == null) { 163 | customerLogin(); 164 | } 165 | else { 166 | System.out.println(ConsoleColors.GREEN_BACKGROUND + "Login Successfull" + ConsoleColors.RESET); 167 | customerMethods(customer); 168 | } 169 | 170 | } 171 | 172 | static void customerSignup() { 173 | boolean flag = CusSignUp2usecase.cusSignUp(); 174 | 175 | if (flag) { 176 | System.out.println(ConsoleColors.ROSY_PINK + "Login to your Account" + ConsoleColors.RESET); 177 | customerLogin(); 178 | } 179 | else { 180 | customerSignup(); 181 | } 182 | } 183 | 184 | static void customerMethods(Customer customer) { 185 | System.out.println(ConsoleColors.PURPLE + "+--------------------------------+" + "\n" 186 | + "| 1. Book Bus Ticket |" + "\n" 187 | + "| 2. Cancel Bus Ticket |" + "\n" 188 | + "| 3. View Status of your Tickets |" + "\n" 189 | + "| 4. Back |" + "\n" 190 | + "| 5. Exit |" + "\n" 191 | + "+--------------------------------+" + ConsoleColors.RESET); 192 | 193 | Scanner sc = new Scanner(System.in); 194 | 195 | int choice = 0; 196 | try { 197 | choice = sc.nextInt(); 198 | if (choice != 1 && choice != 2 && choice != 3 && choice != 4 && choice != 5) { 199 | System.out.println(ConsoleColors.RED_BACKGROUND + "Please choose a number from below options" + ConsoleColors.RESET); 200 | customerMethods(customer); 201 | } 202 | else customerChoice(choice, customer); 203 | } 204 | catch (InputMismatchException e) { 205 | 206 | System.out.println(ConsoleColors.RED_BACKGROUND + "Input type should be number" + ConsoleColors.RESET); 207 | customerMethods(customer); 208 | } 209 | } 210 | 211 | static void customerChoice(int choice, Customer customer) { 212 | switch(choice) { 213 | case 1 : { 214 | BookTicketbNameusecase.BookTicketbName(customer); 215 | customerMethods(customer); 216 | } 217 | break; 218 | case 2 : { 219 | CancelTicketbNameusecase.cancelTicket(customer); 220 | customerMethods(customer); 221 | } 222 | break; 223 | case 3 : { 224 | ViewTicketusecase.viewTicket(customer); 225 | customerMethods(customer); 226 | } 227 | break; 228 | case 4 : { 229 | customerLoginOrSignup(); 230 | } 231 | case 5 : { 232 | System.out.println(ConsoleColors.ROSY_PINK + "Thank you ! Visit again" + ConsoleColors.RESET); 233 | System.exit(0); 234 | } 235 | } 236 | } 237 | 238 | 239 | public static void main(String[] args) { 240 | 241 | AdminOrCustomer(); 242 | 243 | } 244 | 245 | } 246 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/custom/ConsoleColors.java: -------------------------------------------------------------------------------- 1 | package com.bus.custom; 2 | 3 | public class ConsoleColors { 4 | public static final String RESET = "\033[0m"; // Text Reset 5 | 6 | public static final String ERASE = "\033[H\033[2J"; 7 | 8 | public static final String HIDDEN = "\033[8;30m"; 9 | 10 | // Creates a black box around the word 11 | public static final String BOXING = "\033[0;51m"; // BLAK 12 | 13 | // This will create a black background and make the text previous color 14 | // Unless color black, then it will make it white 15 | public static final String TEXT_BACKGROUND = "\033[0;7m"; // BLACK 16 | 17 | // Regular Colors 18 | public static final String BLACK = "\033[0;30m"; // BLACK 19 | public static final String RED = "\033[0;31m"; // RED 20 | public static final String GREEN = "\033[0;32m"; // GREEN 21 | public static final String YELLOW = "\033[0;33m"; // YELLOW 22 | public static final String BLUE = "\033[0;34m"; // BLUE 23 | public static final String PURPLE = "\033[0;35m"; // PURPLE 24 | public static final String CYAN = "\033[0;36m"; // CYAN 25 | public static final String WHITE = "\033[0;37m"; // WHITE 26 | public static final String LIGHT_PURPLE = "\033[38;2;200;0;200m"; // LIGHT PURPLE 27 | public static final String TEAL = "\033[38;2;0;225;221m"; // TEAL 28 | public static final String ORANGE = "\033[38;2;225;153;0m"; // ORANGE 29 | public static final String LIGHT_GREEN = "\033[38;2;136;255;0m"; // LIGHT GREEN 30 | public static final String LIGHT_BLUE = "\033[38;2;120;172;255m"; // LIGHT BLUE 31 | public static final String DARK_BLUE = "\033[38;2;72;0;255m"; // DARK BLUE 32 | public static final String ROSY_PINK = "\033[38;2;255;0;162m"; // ROSY PINK 33 | public static final String BROWN = "\033[38;2;135;82;62m"; // BROWN 34 | public static final String FOREST_GREEN = "\033[38;2;62;135;81m"; // FOREST GREEN 35 | public static final String BANANA_YELLOW = "\033[38;2;240;238;113m"; // BANANA YELLOW 36 | public static final String DARK_RED = "\033[38;2;145;40;16m"; // DARK RED 37 | public static final String LIGHT_PINK = "\033[38;2;255;153;240m"; // LIGHT PINK 38 | 39 | // StrikeOut 40 | public static final String BLACK_STRIKE = "\033[9;30m"; // BLACK 41 | public static final String RED_STRIKE = "\033[9;31m"; // RED 42 | public static final String GREEN_STRIKE = "\033[9;32m"; // GREEN 43 | public static final String YELLOW_STRIKE = "\033[9;33m"; // YELLOW 44 | public static final String BLUE_STRIKE = "\033[9;34m"; // BLUE 45 | public static final String PURPLE_STRIKE = "\033[9;35m"; // PURPLE 46 | public static final String CYAN_STRIKE = "\033[9;36m"; // CYAN 47 | public static final String WHITE_STRIKE = "\033[9;37m"; // WHITE 48 | 49 | // Italic 50 | public static final String BLACK_ITALIC = "\033[3;30m"; // BLACK 51 | public static final String RED_ITALIC = "\033[3;31m"; // RED 52 | public static final String GREEN_ITALIC = "\033[3;32m"; // GREEN 53 | public static final String YELLOW_ITALIC = "\033[3;33m"; // YELLOW 54 | public static final String BLUE_ITALIC = "\033[3;34m"; // BLUE 55 | public static final String PURPLE_ITALIC = "\033[3;35m"; // PURPLE 56 | public static final String CYAN_ITALIC = "\033[3;36m"; // CYAN 57 | public static final String WHITE_ITALIC = "\033[3;37m"; // WHITE 58 | 59 | // Bold 60 | public static final String BLACK_BOLD = "\033[1;30m"; // BLACK 61 | public static final String RED_BOLD = "\033[1;31m"; // RED 62 | public static final String GREEN_BOLD = "\033[1;32m"; // GREEN 63 | public static final String YELLOW_BOLD = "\033[1;33m"; // YELLOW 64 | public static final String BLUE_BOLD = "\033[1;34m"; // BLUE 65 | public static final String PURPLE_BOLD = "\033[1;35m"; // PURPLE 66 | public static final String CYAN_BOLD = "\033[1;36m"; // CYAN 67 | public static final String WHITE_BOLD = "\033[1;37m"; // WHITE 68 | 69 | // Underline 70 | public static final String BLACK_UNDERLINED = "\033[4;30m"; // BLACK 71 | public static final String RED_UNDERLINED = "\033[4;31m"; // RED 72 | public static final String GREEN_UNDERLINED = "\033[4;32m"; // GREEN 73 | public static final String YELLOW_UNDERLINED = "\033[4;33m"; // YELLOW 74 | public static final String BLUE_UNDERLINED = "\033[4;34m"; // BLUE 75 | public static final String PURPLE_UNDERLINED = "\033[4;35m"; // PURPLE 76 | public static final String CYAN_UNDERLINED = "\033[4;36m"; // CYAN 77 | public static final String WHITE_UNDERLINED = "\033[4;37m"; // WHITE 78 | 79 | // Background 80 | public static final String BLACK_BACKGROUND = "\033[40m"; // BLACK 81 | public static final String RED_BACKGROUND = "\033[41m"; // RED 82 | public static final String GREEN_BACKGROUND = "\033[42m"; // GREEN 83 | public static final String YELLOW_BACKGROUND = "\033[43m"; // YELLOW 84 | public static final String BLUE_BACKGROUND = "\033[44m"; // BLUE 85 | public static final String PURPLE_BACKGROUND = "\033[45m"; // PURPLE 86 | public static final String CYAN_BACKGROUND = "\033[46m"; // CYAN 87 | public static final String WHITE_BACKGROUND = "\033[47m"; // WHITE 88 | public static final String LIGHT_PURPLE_BACKGROUND = "\033[48;2;200;0;200m"; // LIGHT PURPLE 89 | public static final String TEAL_BACKGROUND = "\033[48;2;0;225;221m"; // TEAL 90 | public static final String ORANGE_BACKGROUND = "\033[48;2;225;153;0m"; // ORANGE 91 | public static final String LIGHT_GREEN_BACKGROUND = "\033[48;2;136;255;0m"; // LIGHT GREEN 92 | public static final String LIGHT_BLUE_BACKGROUND = "\033[48;2;120;172;255m"; // LIGHT BLUE 93 | public static final String DARK_BLUE_BACKGROUND = "\033[48;2;72;0;255m"; // DARK BLUE 94 | public static final String ROSY_PINK_BACKGROUND = "\033[48;2;255;0;162m"; // ROSY PINK 95 | public static final String BROWN_BACKGROUND = "\033[48;2;135;82;62m"; // BROWN 96 | public static final String FOREST_GREEN_BACKGROUND = "\033[48;2;62;135;81m"; // FOREST GREEN 97 | public static final String BANANA_YELLOW_BACKGROUND = "\033[48;2;240;238;113m"; // BANANA YELLOW 98 | public static final String DARK_RED_BACKGROUND = "\033[48;2;145;40;16m"; // DARK RED 99 | public static final String LIGHT_PINK_BACKGROUND = "\033[48;2;255;153;240m"; // LIGHT PINK 100 | 101 | // High Intensity 102 | public static final String BLACK_BRIGHT = "\033[0;90m"; // BLACK 103 | public static final String RED_BRIGHT = "\033[0;91m"; // RED 104 | public static final String GREEN_BRIGHT = "\033[0;92m"; // GREEN 105 | public static final String YELLOW_BRIGHT = "\033[0;93m"; // YELLOW 106 | public static final String BLUE_BRIGHT = "\033[0;94m"; // BLUE 107 | public static final String PURPLE_BRIGHT = "\033[0;95m"; // PURPLE 108 | public static final String CYAN_BRIGHT = "\033[0;96m"; // CYAN 109 | public static final String WHITE_BRIGHT = "\033[0;97m"; // WHITE 110 | 111 | // Bold High Intensity 112 | public static final String BLACK_BOLD_BRIGHT = "\033[1;90m"; // BLACK 113 | public static final String RED_BOLD_BRIGHT = "\033[1;91m"; // RED 114 | public static final String GREEN_BOLD_BRIGHT = "\033[1;92m"; // GREEN 115 | public static final String YELLOW_BOLD_BRIGHT = "\033[1;93m";// YELLOW 116 | public static final String BLUE_BOLD_BRIGHT = "\033[1;94m"; // BLUE 117 | public static final String PURPLE_BOLD_BRIGHT = "\033[1;95m";// PURPLE 118 | public static final String CYAN_BOLD_BRIGHT = "\033[1;96m"; // CYAN 119 | public static final String WHITE_BOLD_BRIGHT = "\033[1;97m"; // WHITE 120 | 121 | // High Intensity backgrounds 122 | public static final String BLACK_BACKGROUND_BRIGHT = "\033[0;100m";// BLACK 123 | public static final String RED_BACKGROUND_BRIGHT = "\033[0;101m";// RED 124 | public static final String GREEN_BACKGROUND_BRIGHT = "\033[0;102m";// GREEN 125 | public static final String YELLOW_BACKGROUND_BRIGHT = "\033[0;103m";// YELLOW 126 | public static final String BLUE_BACKGROUND_BRIGHT = "\033[0;104m";// BLUE 127 | public static final String PURPLE_BACKGROUND_BRIGHT = "\033[0;105m"; // PURPLE 128 | public static final String CYAN_BACKGROUND_BRIGHT = "\033[0;106m"; // CYAN 129 | public static final String WHITE_BACKGROUND_BRIGHT = "\033[0;107m"; // WHITE 130 | } 131 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/src/com/bus/dao/CustomerDaoImpl.java: -------------------------------------------------------------------------------- 1 | package com.bus.dao; 2 | 3 | import java.sql.Connection; 4 | import java.sql.Date; 5 | import java.sql.PreparedStatement; 6 | import java.sql.ResultSet; 7 | import java.sql.SQLException; 8 | 9 | import com.bus.bean.Customer; 10 | import com.bus.custom.ConsoleColors; 11 | import com.bus.exceptions.BusException; 12 | import com.bus.exceptions.CustomerException; 13 | import com.bus.utility.DButil; 14 | 15 | public class CustomerDaoImpl implements CustomerDao{ 16 | 17 | @Override 18 | public String cusSignUp(String username, String password, String firstName, String lastName, String address, 19 | String mobile) { 20 | 21 | String message = "Sign up Failed"; 22 | 23 | try(Connection conn = DButil.provideConnection()){ 24 | 25 | PreparedStatement ps = conn.prepareStatement("insert into customer(username, password, firstName, lastName, address, mobile) values (?,?,?,?,?,?)"); 26 | 27 | ps.setString(1, username); 28 | ps.setString(2, password); 29 | ps.setString(3, firstName); 30 | ps.setString(4, lastName); 31 | ps.setString(5, address); 32 | ps.setString(6, mobile); 33 | 34 | int x = ps.executeUpdate(); 35 | 36 | if (x > 0) message = "Sign up Successfull"; 37 | 38 | } 39 | catch (SQLException e) { 40 | message = e.getMessage(); 41 | } 42 | 43 | return message; 44 | } 45 | 46 | @Override 47 | public String cusSignUp(Customer customer) { 48 | 49 | String message = "Sign up Failed"; 50 | 51 | try(Connection conn = DButil.provideConnection()){ 52 | 53 | PreparedStatement ps = conn.prepareStatement("insert into customer(username, password, firstName, lastName, address, mobile) values (?,?,?,?,?,?)"); 54 | 55 | ps.setString(1, customer.getUsername()); 56 | ps.setString(2, customer.getPassword()); 57 | ps.setString(3, customer.getFirstName()); 58 | ps.setString(4, customer.getLastName()); 59 | ps.setString(5, customer.getAddress()); 60 | ps.setString(6, customer.getMobile()); 61 | 62 | int x = ps.executeUpdate(); 63 | 64 | if (x > 0) message = "Sign up Successfull"; 65 | 66 | } 67 | catch (SQLException e) { 68 | message = e.getMessage(); 69 | } 70 | 71 | return message; 72 | 73 | } 74 | 75 | @Override 76 | public Customer cusLogin(String username, String password) throws CustomerException { 77 | 78 | Customer customer = null; 79 | 80 | try (Connection conn = DButil.provideConnection()){ 81 | 82 | PreparedStatement ps = conn.prepareStatement("select * from customer where username = ? and password = ?"); 83 | 84 | ps.setString(1, username); 85 | ps.setString(2, password); 86 | 87 | ResultSet rs = ps.executeQuery(); 88 | 89 | if (rs.next()) { 90 | int cusId = rs.getInt("cusId"); 91 | String usernamee = rs.getString("username"); 92 | String passwordd = rs.getString("password"); 93 | String firstName = rs.getString("firstName"); 94 | String lastName = rs.getString("lastName"); 95 | String address = rs.getString("address"); 96 | String mobile = rs.getString("mobile"); 97 | 98 | customer = new Customer(cusId,usernamee, passwordd, firstName, lastName, address, mobile); 99 | 100 | } 101 | else { 102 | throw new CustomerException("Invalid username or password"); 103 | 104 | } 105 | 106 | } 107 | catch (SQLException e) { 108 | throw new CustomerException(e.getMessage()); 109 | } 110 | 111 | return customer; 112 | } 113 | 114 | @Override 115 | public String bookTicket(String bName, int cusId, int no) throws BusException { 116 | 117 | String message = "Ticket Booking fail"; 118 | 119 | try (Connection conn = DButil.provideConnection()){ 120 | 121 | PreparedStatement ps = conn.prepareStatement("select * from bus where bName = ?"); 122 | ps.setString(1, bName); 123 | 124 | ResultSet rs = ps.executeQuery(); 125 | 126 | if (rs.next()) { 127 | 128 | int busNo = rs.getInt("busNo"); 129 | int totalSeats = rs.getInt("totalSeats"); 130 | int availSeats = rs.getInt("availSeats"); 131 | Date departure = rs.getDate("departure"); 132 | int fare = rs.getInt("fare"); 133 | 134 | PreparedStatement ps1 = conn.prepareStatement("select datediff(?,current_date()) as date"); 135 | ps1.setDate(1, departure); 136 | 137 | ResultSet rs1 = ps1.executeQuery(); 138 | int days = 0; 139 | if (rs1.next()) { 140 | days = rs1.getInt("date"); 141 | } 142 | 143 | if (days <= 0) { 144 | throw new BusException("Booking is not available for this date"); 145 | } 146 | else if (availSeats >= no) { 147 | int seatFrom = totalSeats - availSeats + 1; 148 | int seatTo = seatFrom + no -1; 149 | fare = fare * no; 150 | 151 | PreparedStatement ps2 = conn.prepareStatement("insert into booking(cusId, busNo, seatFrom, seatTo) values (?, ?, ?, ?)"); 152 | ps2.setInt(1, cusId); 153 | ps2.setInt(2, busNo); 154 | ps2.setInt(3, seatFrom); 155 | ps2.setInt(4, seatTo); 156 | 157 | int x = ps2.executeUpdate(); 158 | 159 | if (x > 0) { 160 | 161 | PreparedStatement ps3 = conn.prepareStatement("update bus set availseats = ? where busNo = ?"); 162 | availSeats = availSeats - no; 163 | ps3.setInt(1, availSeats); 164 | ps3.setInt(2, busNo); 165 | int y = ps3.executeUpdate(); 166 | 167 | if (y <= 0) throw new BusException("Available Seat is not updated"); 168 | 169 | 170 | System.out.println(ConsoleColors.ROSY_PINK + "--------------------------------------------" + "\n" 171 | + "Customer Id is : " + cusId + "\n" 172 | + "Bus No is : " + busNo + "\n" 173 | + "Seat No is from : " + seatFrom + " to " + seatTo + "\n" 174 | + "Bus fare is : " + fare + "\n" 175 | + "Booking yet to be confirm by Adminstrator" + "\n" 176 | + "---------------------------------------------" + ConsoleColors.RESET); 177 | 178 | message = "Ticket Booked Successfully"; 179 | } 180 | 181 | } 182 | 183 | } 184 | else { 185 | throw new BusException("Bus with " + bName + " is not available"); 186 | } 187 | 188 | } 189 | catch (SQLException e) { 190 | throw new BusException(e.getMessage()); 191 | } 192 | 193 | return message; 194 | } 195 | 196 | @Override 197 | public String cancelTicket(String bName, int cusId) throws BusException { 198 | String message = "Ticket cancellation failed"; 199 | 200 | try (Connection conn = DButil.provideConnection()){ 201 | 202 | PreparedStatement ps = conn.prepareStatement("select * from bus where bName = ?"); 203 | ps.setString(1, bName); 204 | 205 | ResultSet rs = ps.executeQuery(); 206 | 207 | if (rs.next()) { 208 | 209 | int busNo = rs.getInt("busNo"); 210 | int availSeats = rs.getInt("availSeats"); 211 | 212 | PreparedStatement ps1 = conn.prepareStatement("select * from booking where busNo = ? and cusId = ?"); 213 | ps1.setInt(1, busNo); 214 | ps1.setInt(2, cusId); 215 | 216 | ResultSet rs1 = ps1.executeQuery(); 217 | boolean flag = false; 218 | int count = 0; 219 | 220 | while (rs1.next()) { 221 | flag = true; 222 | int seatFrom = rs1.getInt("seatFrom"); 223 | int seatTo = rs1.getInt("seatTo"); 224 | count += seatTo - seatFrom + 1; 225 | } 226 | 227 | if (flag) { 228 | 229 | PreparedStatement ps2 = conn.prepareStatement("delete from booking where busNo = ? and cusId = ?"); 230 | ps2.setInt(1, busNo); 231 | ps2.setInt(2, cusId); 232 | 233 | int x = ps2.executeUpdate(); 234 | if (x > 0) { 235 | 236 | PreparedStatement ps3 = conn.prepareStatement("update bus set availseats = ? where busNo = ?"); 237 | availSeats = availSeats + count; 238 | ps3.setInt(1, availSeats); 239 | ps3.setInt(2, busNo); 240 | int y = ps3.executeUpdate(); 241 | 242 | if (y <= 0) throw new BusException("Available Seat is not updated"); 243 | 244 | message = "Ticket cancelled Successfully"; 245 | } 246 | 247 | } 248 | else message = "No booking found"; 249 | 250 | } 251 | else { 252 | throw new BusException("Bus with " + bName + " is not available"); 253 | } 254 | 255 | } 256 | catch (SQLException e) { 257 | throw new BusException(e.getMessage()); 258 | } 259 | 260 | return message; 261 | 262 | } 263 | 264 | @Override 265 | public void viewTicket(int cusId) { 266 | boolean flag = false; 267 | 268 | try(Connection conn = DButil.provideConnection()){ 269 | PreparedStatement ps1 = conn.prepareStatement("select * from booking where cusId = ?"); 270 | ps1.setInt(1, cusId); 271 | 272 | ResultSet rs1 = ps1.executeQuery(); 273 | 274 | while (rs1.next()) { 275 | flag = true; 276 | System.out.println(ConsoleColors.ROSY_PINK + "---------------------------------------------" + ConsoleColors.RESET); 277 | System.out.println(ConsoleColors.ROSY_PINK + "Bus Id : " + rs1.getInt("bId") + ConsoleColors.RESET); 278 | System.out.println(ConsoleColors.ROSY_PINK + "Bus No : " + rs1.getInt("busNo") + ConsoleColors.RESET); 279 | System.out.println(ConsoleColors.ROSY_PINK + "Total tickets : " + (rs1.getByte("seatTo") - rs1.getInt("seatFrom") + 1) + ConsoleColors.RESET); 280 | if (rs1.getBoolean("status")) System.out.println(ConsoleColors.ROSY_PINK + "Status : Booked" + ConsoleColors.RESET); 281 | else System.out.println(ConsoleColors.ROSY_PINK + "Status : Pending" + ConsoleColors.RESET); 282 | 283 | System.out.println(ConsoleColors.ROSY_PINK + "----------------------------------------------" + ConsoleColors.RESET); 284 | } 285 | 286 | if (flag == false) System.out.println(ConsoleColors.RED_BACKGROUND + "No tickets found" + ConsoleColors.RESET); 287 | } 288 | catch (SQLException s){ 289 | System.out.println(ConsoleColors.RED_BACKGROUND + s.getMessage() + ConsoleColors.RESET); 290 | } 291 | 292 | } 293 | 294 | 295 | 296 | 297 | } 298 | -------------------------------------------------------------------------------- /BusTicketReservationSystem/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | enableParallelJavaIndexSearch=true 3 | org.eclipse.jdt.core.builder.annotationPath.allLocations=disabled 4 | org.eclipse.jdt.core.builder.cleanOutputFolder=clean 5 | org.eclipse.jdt.core.builder.duplicateResourceTask=warning 6 | org.eclipse.jdt.core.builder.invalidClasspath=abort 7 | org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore 8 | org.eclipse.jdt.core.builder.resourceCopyExclusionFilter= 9 | org.eclipse.jdt.core.circularClasspath=warning 10 | org.eclipse.jdt.core.classpath.exclusionPatterns=enabled 11 | org.eclipse.jdt.core.classpath.mainOnlyProjectHasTestOnlyDependency=error 12 | org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled 13 | org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error 14 | org.eclipse.jdt.core.codeComplete.argumentPrefixes= 15 | org.eclipse.jdt.core.codeComplete.argumentSuffixes= 16 | org.eclipse.jdt.core.codeComplete.camelCaseMatch=enabled 17 | org.eclipse.jdt.core.codeComplete.deprecationCheck=disabled 18 | org.eclipse.jdt.core.codeComplete.discouragedReferenceCheck=disabled 19 | org.eclipse.jdt.core.codeComplete.fieldPrefixes= 20 | org.eclipse.jdt.core.codeComplete.fieldSuffixes= 21 | org.eclipse.jdt.core.codeComplete.forbiddenReferenceCheck=enabled 22 | org.eclipse.jdt.core.codeComplete.forceImplicitQualification=disabled 23 | org.eclipse.jdt.core.codeComplete.localPrefixes= 24 | org.eclipse.jdt.core.codeComplete.localSuffixes= 25 | org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= 26 | org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= 27 | org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes= 28 | org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes= 29 | org.eclipse.jdt.core.codeComplete.subwordMatch=disabled 30 | org.eclipse.jdt.core.codeComplete.suggestStaticImports=enabled 31 | org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled 32 | org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled 33 | org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore 34 | org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull 35 | org.eclipse.jdt.core.compiler.annotation.nonnull.secondary= 36 | org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault 37 | org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= 38 | org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable 39 | org.eclipse.jdt.core.compiler.annotation.nullable.secondary= 40 | org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled 41 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 42 | org.eclipse.jdt.core.compiler.codegen.lambda.genericSignature=do not generate 43 | org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate 44 | org.eclipse.jdt.core.compiler.codegen.shareCommonFinallyBlocks=disabled 45 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 46 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 47 | org.eclipse.jdt.core.compiler.compliance=17 48 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 49 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 50 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 51 | org.eclipse.jdt.core.compiler.doc.comment.support=enabled 52 | org.eclipse.jdt.core.compiler.emulateJavacBug8031744=enabled 53 | org.eclipse.jdt.core.compiler.generateClassFiles=enabled 54 | org.eclipse.jdt.core.compiler.maxProblemPerUnit=100 55 | org.eclipse.jdt.core.compiler.problem.APILeak=warning 56 | org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info 57 | org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning 58 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 59 | org.eclipse.jdt.core.compiler.problem.autoboxing=ignore 60 | org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning 61 | org.eclipse.jdt.core.compiler.problem.deadCode=warning 62 | org.eclipse.jdt.core.compiler.problem.deadCodeInTrivialIfStatement=disabled 63 | org.eclipse.jdt.core.compiler.problem.deprecation=warning 64 | org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled 65 | org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled 66 | org.eclipse.jdt.core.compiler.problem.discouragedReference=warning 67 | org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore 68 | org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled 69 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 70 | org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore 71 | org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore 72 | org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled 73 | org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore 74 | org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning 75 | org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning 76 | org.eclipse.jdt.core.compiler.problem.forbiddenReference=error 77 | org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning 78 | org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled 79 | org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning 80 | org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning 81 | org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore 82 | org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore 83 | org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled 84 | org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled 85 | org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled 86 | org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=public 87 | org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore 88 | org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning 89 | org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore 90 | org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore 91 | org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled 92 | org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore 93 | org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore 94 | org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled 95 | org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public 96 | org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag 97 | org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore 98 | org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled 99 | org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled 100 | org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public 101 | org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore 102 | org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled 103 | org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore 104 | org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore 105 | org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning 106 | org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning 107 | org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore 108 | org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning 109 | org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning 110 | org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error 111 | org.eclipse.jdt.core.compiler.problem.nullReference=warning 112 | org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error 113 | org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning 114 | org.eclipse.jdt.core.compiler.problem.overridingMethodWithoutSuperInvocation=ignore 115 | org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning 116 | org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore 117 | org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning 118 | org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore 119 | org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore 120 | org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore 121 | org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning 122 | org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning 123 | org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore 124 | org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore 125 | org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning 126 | org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore 127 | org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore 128 | org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning 129 | org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled 130 | org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning 131 | org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled 132 | org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled 133 | org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info 134 | org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled 135 | org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore 136 | org.eclipse.jdt.core.compiler.problem.tasks=warning 137 | org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning 138 | org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning 139 | org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled 140 | org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning 141 | org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning 142 | org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore 143 | org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore 144 | org.eclipse.jdt.core.compiler.problem.uninternedIdentityComparison=disabled 145 | org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning 146 | org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled 147 | org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info 148 | org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore 149 | org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore 150 | org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore 151 | org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning 152 | org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore 153 | org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled 154 | org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled 155 | org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled 156 | org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore 157 | org.eclipse.jdt.core.compiler.problem.unusedImport=warning 158 | org.eclipse.jdt.core.compiler.problem.unusedLabel=warning 159 | org.eclipse.jdt.core.compiler.problem.unusedLocal=warning 160 | org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore 161 | org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore 162 | org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled 163 | org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled 164 | org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled 165 | org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning 166 | org.eclipse.jdt.core.compiler.problem.unusedTypeArgumentsForMethodInvocation=warning 167 | org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore 168 | org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning 169 | org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning 170 | org.eclipse.jdt.core.compiler.processAnnotations=disabled 171 | org.eclipse.jdt.core.compiler.release=enabled 172 | org.eclipse.jdt.core.compiler.source=17 173 | org.eclipse.jdt.core.compiler.storeAnnotations=disabled 174 | org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled 175 | org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL 176 | org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX 177 | org.eclipse.jdt.core.computeJavaBuildOrder=ignore 178 | org.eclipse.jdt.core.encoding=utf8 179 | org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false 180 | org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 181 | org.eclipse.jdt.core.formatter.align_selector_in_method_invocation_on_expression_first_line=true 182 | org.eclipse.jdt.core.formatter.align_type_members_on_columns=false 183 | org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false 184 | org.eclipse.jdt.core.formatter.align_with_spaces=false 185 | org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16 186 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_enum_constant=49 187 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_field=49 188 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_local_variable=49 189 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_method=49 190 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_package=49 191 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_parameter=0 192 | org.eclipse.jdt.core.formatter.alignment_for_annotations_on_type=49 193 | org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 194 | org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 195 | org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 196 | org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 197 | org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 198 | org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 199 | org.eclipse.jdt.core.formatter.alignment_for_assertion_message=16 200 | org.eclipse.jdt.core.formatter.alignment_for_assignment=0 201 | org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16 202 | org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 203 | org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16 204 | org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 205 | org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0 206 | org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16 207 | org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 208 | org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0 209 | org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_arrow=16 210 | org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_colon=16 211 | org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16 212 | org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 213 | org.eclipse.jdt.core.formatter.alignment_for_module_statements=16 214 | org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 215 | org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16 216 | org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0 217 | org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 218 | org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 219 | org.eclipse.jdt.core.formatter.alignment_for_record_components=16 220 | org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0 221 | org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 222 | org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 223 | org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0 224 | org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16 225 | org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 226 | org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 227 | org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16 228 | org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 229 | org.eclipse.jdt.core.formatter.alignment_for_switch_case_with_arrow=20 230 | org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 231 | org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 232 | org.eclipse.jdt.core.formatter.alignment_for_type_annotations=0 233 | org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0 234 | org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0 235 | org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 236 | org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 237 | org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0 238 | org.eclipse.jdt.core.formatter.blank_lines_after_package=1 239 | org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1 240 | org.eclipse.jdt.core.formatter.blank_lines_before_field=0 241 | org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 242 | org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 243 | org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 244 | org.eclipse.jdt.core.formatter.blank_lines_before_method=1 245 | org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 246 | org.eclipse.jdt.core.formatter.blank_lines_before_package=0 247 | org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 248 | org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0 249 | org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 250 | org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line 251 | org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line 252 | org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line 253 | org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line 254 | org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line 255 | org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line 256 | org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line 257 | org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line 258 | org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line 259 | org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line 260 | org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line 261 | org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line 262 | org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line 263 | org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line 264 | org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true 265 | org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false 266 | org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false 267 | org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false 268 | org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true 269 | org.eclipse.jdt.core.formatter.comment.format_block_comments=true 270 | org.eclipse.jdt.core.formatter.comment.format_header=false 271 | org.eclipse.jdt.core.formatter.comment.format_html=true 272 | org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true 273 | org.eclipse.jdt.core.formatter.comment.format_line_comments=true 274 | org.eclipse.jdt.core.formatter.comment.format_source_code=true 275 | org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false 276 | org.eclipse.jdt.core.formatter.comment.indent_root_tags=false 277 | org.eclipse.jdt.core.formatter.comment.indent_tag_description=false 278 | org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert 279 | org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert 280 | org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert 281 | org.eclipse.jdt.core.formatter.comment.line_length=80 282 | org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true 283 | org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true 284 | org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false 285 | org.eclipse.jdt.core.formatter.compact_else_if=true 286 | org.eclipse.jdt.core.formatter.continuation_indentation=2 287 | org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 288 | org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off 289 | org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on 290 | org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false 291 | org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false 292 | org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true 293 | org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true 294 | org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true 295 | org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true 296 | org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true 297 | org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true 298 | org.eclipse.jdt.core.formatter.indent_empty_lines=false 299 | org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true 300 | org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true 301 | org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true 302 | org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true 303 | org.eclipse.jdt.core.formatter.indentation.size=4 304 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert 305 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert 306 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert 307 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert 308 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert 309 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert 310 | org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert 311 | org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert 312 | org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert 313 | org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert 314 | org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert 315 | org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert 316 | org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert 317 | org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert 318 | org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert 319 | org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert 320 | org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert 321 | org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert 322 | org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert 323 | org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert 324 | org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert 325 | org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert 326 | org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert 327 | org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert 328 | org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert 329 | org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert 330 | org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert 331 | org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert 332 | org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert 333 | org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert 334 | org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert 335 | org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert 336 | org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert 337 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert 338 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert 339 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert 340 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert 341 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert 342 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert 343 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert 344 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert 345 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert 346 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert 347 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert 348 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert 349 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert 350 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert 351 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert 352 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert 353 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_permitted_types=insert 354 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert 355 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert 356 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert 357 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert 358 | org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert 359 | org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert 360 | org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert 361 | org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert 362 | org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert 363 | org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert 364 | org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert 365 | org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert 366 | org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert 367 | org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert 368 | org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert 369 | org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert 370 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert 371 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert 372 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert 373 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert 374 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert 375 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert 376 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert 377 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert 378 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert 379 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert 380 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert 381 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert 382 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert 383 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert 384 | org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert 385 | org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert 386 | org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert 387 | org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert 388 | org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert 389 | org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert 390 | org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert 391 | org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert 392 | org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert 393 | org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert 394 | org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert 395 | org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert 396 | org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert 397 | org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert 398 | org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert 399 | org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert 400 | org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert 401 | org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert 402 | org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert 403 | org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert 404 | org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert 405 | org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert 406 | org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert 407 | org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert 408 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert 409 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert 410 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert 411 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert 412 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert 413 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert 414 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert 415 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert 416 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert 417 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert 418 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert 419 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert 420 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert 421 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert 422 | org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert 423 | org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert 424 | org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert 425 | org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert 426 | org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert 427 | org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert 428 | org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert 429 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert 430 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert 431 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert 432 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert 433 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert 434 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert 435 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert 436 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert 437 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert 438 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert 439 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert 440 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert 441 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert 442 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert 443 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert 444 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert 445 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_permitted_types=do not insert 446 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert 447 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert 448 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert 449 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert 450 | org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert 451 | org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert 452 | org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert 453 | org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert 454 | org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert 455 | org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert 456 | org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert 457 | org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert 458 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert 459 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert 460 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert 461 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert 462 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert 463 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert 464 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert 465 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert 466 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert 467 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert 468 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert 469 | org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert 470 | org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert 471 | org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert 472 | org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert 473 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert 474 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert 475 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert 476 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert 477 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert 478 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert 479 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert 480 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert 481 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert 482 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert 483 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert 484 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert 485 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert 486 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert 487 | org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert 488 | org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert 489 | org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert 490 | org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert 491 | org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert 492 | org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert 493 | org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert 494 | org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert 495 | org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert 496 | org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert 497 | org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert 498 | org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert 499 | org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert 500 | org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert 501 | org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert 502 | org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert 503 | org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert 504 | org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert 505 | org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert 506 | org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert 507 | org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert 508 | org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert 509 | org.eclipse.jdt.core.formatter.join_lines_in_comments=false 510 | org.eclipse.jdt.core.formatter.join_wrapped_lines=false 511 | org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never 512 | org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never 513 | org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never 514 | org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false 515 | org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false 516 | org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never 517 | org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never 518 | org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never 519 | org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false 520 | org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never 521 | org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never 522 | org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never 523 | org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never 524 | org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never 525 | org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false 526 | org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false 527 | org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false 528 | org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false 529 | org.eclipse.jdt.core.formatter.keep_switch_body_block_on_one_line=one_line_never 530 | org.eclipse.jdt.core.formatter.keep_switch_case_with_arrow_on_one_line=one_line_never 531 | org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false 532 | org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never 533 | org.eclipse.jdt.core.formatter.lineSplit=120 534 | org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false 535 | org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false 536 | org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0 537 | org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0 538 | org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 539 | org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0 540 | org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0 541 | org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0 542 | org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 543 | org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines 544 | org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines 545 | org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines 546 | org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines 547 | org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines 548 | org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines 549 | org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines 550 | org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines 551 | org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines 552 | org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines 553 | org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines 554 | org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true 555 | org.eclipse.jdt.core.formatter.tabulation.char=space 556 | org.eclipse.jdt.core.formatter.tabulation.size=4 557 | org.eclipse.jdt.core.formatter.text_block_indentation=0 558 | org.eclipse.jdt.core.formatter.use_on_off_tags=true 559 | org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false 560 | org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true 561 | org.eclipse.jdt.core.formatter.wrap_before_assertion_message_operator=true 562 | org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false 563 | org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true 564 | org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true 565 | org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true 566 | org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true 567 | org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true 568 | org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true 569 | org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true 570 | org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true 571 | org.eclipse.jdt.core.formatter.wrap_before_switch_case_arrow_operator=false 572 | org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true 573 | org.eclipse.jdt.core.incompatibleJDKLevel=ignore 574 | org.eclipse.jdt.core.incompleteClasspath=error 575 | org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter 576 | org.eclipse.jdt.core.timeoutForParameterNameFromAttachedJavadoc=50 577 | --------------------------------------------------------------------------------