|
1 | 1 | package mate.academy;
|
2 | 2 |
|
3 |
| -import java.time.LocalDate; |
4 |
| -import java.time.LocalDateTime; |
5 |
| -import mate.academy.model.CinemaHall; |
6 |
| -import mate.academy.model.Movie; |
7 |
| -import mate.academy.model.MovieSession; |
8 |
| -import mate.academy.service.CinemaHallService; |
9 |
| -import mate.academy.service.MovieService; |
10 |
| -import mate.academy.service.MovieSessionService; |
| 3 | +import mate.academy.lib.Injector; |
| 4 | +import mate.academy.model.User; |
| 5 | +import mate.academy.service.AuthenticationService; |
| 6 | +import mate.academy.service.UserService; |
11 | 7 |
|
12 | 8 | public class Main {
|
| 9 | + private static final Injector injector = Injector.getInstance("mate.academy"); |
| 10 | + |
13 | 11 | public static void main(String[] args) {
|
14 |
| - MovieService movieService = null; |
15 |
| - |
16 |
| - Movie fastAndFurious = new Movie("Fast and Furious"); |
17 |
| - fastAndFurious.setDescription("An action film about street racing, heists, and spies."); |
18 |
| - movieService.add(fastAndFurious); |
19 |
| - System.out.println(movieService.get(fastAndFurious.getId())); |
20 |
| - movieService.getAll().forEach(System.out::println); |
21 |
| - |
22 |
| - CinemaHall firstCinemaHall = new CinemaHall(); |
23 |
| - firstCinemaHall.setCapacity(100); |
24 |
| - firstCinemaHall.setDescription("first hall with capacity 100"); |
25 |
| - |
26 |
| - CinemaHall secondCinemaHall = new CinemaHall(); |
27 |
| - secondCinemaHall.setCapacity(200); |
28 |
| - secondCinemaHall.setDescription("second hall with capacity 200"); |
29 |
| - |
30 |
| - CinemaHallService cinemaHallService = null; |
31 |
| - cinemaHallService.add(firstCinemaHall); |
32 |
| - cinemaHallService.add(secondCinemaHall); |
33 |
| - |
34 |
| - System.out.println(cinemaHallService.getAll()); |
35 |
| - System.out.println(cinemaHallService.get(firstCinemaHall.getId())); |
36 |
| - |
37 |
| - MovieSession tomorrowMovieSession = new MovieSession(); |
38 |
| - tomorrowMovieSession.setCinemaHall(firstCinemaHall); |
39 |
| - tomorrowMovieSession.setMovie(fastAndFurious); |
40 |
| - tomorrowMovieSession.setShowTime(LocalDateTime.now().plusDays(1L)); |
41 |
| - |
42 |
| - MovieSession yesterdayMovieSession = new MovieSession(); |
43 |
| - yesterdayMovieSession.setCinemaHall(firstCinemaHall); |
44 |
| - yesterdayMovieSession.setMovie(fastAndFurious); |
45 |
| - yesterdayMovieSession.setShowTime(LocalDateTime.now().minusDays(1L)); |
46 |
| - |
47 |
| - MovieSessionService movieSessionService = null; |
48 |
| - movieSessionService.add(tomorrowMovieSession); |
49 |
| - movieSessionService.add(yesterdayMovieSession); |
50 |
| - |
51 |
| - System.out.println(movieSessionService.get(yesterdayMovieSession.getId())); |
52 |
| - System.out.println(movieSessionService.findAvailableSessions( |
53 |
| - fastAndFurious.getId(), LocalDate.now())); |
| 12 | + |
| 13 | + // 0. INJECTING |
| 14 | + final var userService |
| 15 | + = (UserService) injector.getInstance(UserService.class); |
| 16 | + final var authenticationService |
| 17 | + = (AuthenticationService) injector.getInstance(AuthenticationService.class); |
| 18 | + |
| 19 | + // 1. CREATING |
| 20 | + // User |
| 21 | + User user1 = new User(); |
| 22 | + user1.setEmail("user1@gmail.com"); |
| 23 | + user1.setPassword("password"); |
| 24 | + |
| 25 | + User user2 = new User(); |
| 26 | + user2.setEmail("user2@gmail.com"); |
| 27 | + user2.setPassword("password"); |
| 28 | + |
| 29 | + User user3 = new User(); |
| 30 | + user3.setEmail("user3@gmail.com"); |
| 31 | + user3.setPassword("password"); |
| 32 | + |
| 33 | + // 2. ADDING |
| 34 | + // User |
| 35 | + userService.add(user1); |
| 36 | + userService.add(user2); |
| 37 | + userService.add(user3); |
| 38 | + |
| 39 | + // 3. GETTING BY EMAIL |
| 40 | + // User |
| 41 | + System.out.println("\n *** CREATE AND READ FUNCTIONS TEST *** \n"); |
| 42 | + System.out.println(userService.findByEmail("user1@gmail.com")); |
| 43 | + System.out.println(userService.findByEmail("user2@gmail.com")); |
| 44 | + System.out.println(userService.findByEmail("user3@gmail.com")); |
| 45 | + |
| 46 | + // 4. REGISTRATION |
| 47 | + // Correct |
| 48 | + authenticationService.registerUser("jan@gmail.com", "haslojana"); |
| 49 | + System.out.println(userService.findByEmail("jan@gmail.com")); |
| 50 | + |
| 51 | + // 5. LOGIN |
| 52 | + System.out.println(authenticationService.login("jan@gmail.com", "haslojana")); |
54 | 53 | }
|
55 | 54 | }
|
0 commit comments