|
2 | 2 |
|
3 | 3 | import java.time.LocalDate;
|
4 | 4 | import java.time.LocalDateTime;
|
| 5 | +import mate.academy.exception.AuthenticationException; |
| 6 | +import mate.academy.exception.RegistrationException; |
| 7 | +import mate.academy.lib.Injector; |
5 | 8 | import mate.academy.model.CinemaHall;
|
6 | 9 | import mate.academy.model.Movie;
|
7 | 10 | import mate.academy.model.MovieSession;
|
| 11 | +import mate.academy.model.User; |
| 12 | +import mate.academy.service.AuthenticationService; |
8 | 13 | import mate.academy.service.CinemaHallService;
|
9 | 14 | import mate.academy.service.MovieService;
|
10 | 15 | import mate.academy.service.MovieSessionService;
|
11 | 16 |
|
12 | 17 | public class Main {
|
13 | 18 | public static void main(String[] args) {
|
14 |
| - MovieService movieService = null; |
| 19 | + final AuthenticationService authService = (AuthenticationService) |
| 20 | + Injector.getInstance("mate.academy") |
| 21 | + .getInstance(AuthenticationService.class); |
| 22 | + final MovieService movieService = (MovieService) |
| 23 | + Injector.getInstance("mate.academy") |
| 24 | + .getInstance(MovieService.class); |
| 25 | + |
| 26 | + try { |
| 27 | + User registered = authService.register("user@example.com", "pass123"); |
| 28 | + System.out.println("Zarejestrowano użytkownika: " + registered); |
| 29 | + User logged = authService.login("user@example.com", "pass123"); |
| 30 | + System.out.println("Zalogowano użytkownika: " + logged); |
| 31 | + } catch (RegistrationException | AuthenticationException e) { |
| 32 | + e.printStackTrace(); |
| 33 | + } |
15 | 34 |
|
16 | 35 | Movie fastAndFurious = new Movie("Fast and Furious");
|
17 |
| - fastAndFurious.setDescription("An action film about street racing, heists, and spies."); |
| 36 | + fastAndFurious.setDescription("Film akcji o wyścigach ulicznych, napadach i agentach."); |
18 | 37 | 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"); |
| 38 | + System.out.println("Pobierz film: " + movieService.get(fastAndFurious.getId())); |
| 39 | + movieService.getAll().forEach(m -> System.out.println("Lista filmów: " + m)); |
29 | 40 |
|
30 |
| - CinemaHallService cinemaHallService = null; |
31 |
| - cinemaHallService.add(firstCinemaHall); |
32 |
| - cinemaHallService.add(secondCinemaHall); |
| 41 | + final CinemaHallService cinemaHallService = (CinemaHallService) |
| 42 | + Injector.getInstance("mate.academy") |
| 43 | + .getInstance(CinemaHallService.class); |
| 44 | + CinemaHall firstHall = new CinemaHall(); |
| 45 | + firstHall.setCapacity(100); |
| 46 | + firstHall.setDescription("Pierwsza sala, 100 miejsc"); |
| 47 | + cinemaHallService.add(firstHall); |
33 | 48 |
|
34 |
| - System.out.println(cinemaHallService.getAll()); |
35 |
| - System.out.println(cinemaHallService.get(firstCinemaHall.getId())); |
| 49 | + CinemaHall secondHall = new CinemaHall(); |
| 50 | + secondHall.setCapacity(200); |
| 51 | + secondHall.setDescription("Druga sala, 200 miejsc"); |
| 52 | + cinemaHallService.add(secondHall); |
36 | 53 |
|
37 |
| - MovieSession tomorrowMovieSession = new MovieSession(); |
38 |
| - tomorrowMovieSession.setCinemaHall(firstCinemaHall); |
39 |
| - tomorrowMovieSession.setMovie(fastAndFurious); |
40 |
| - tomorrowMovieSession.setShowTime(LocalDateTime.now().plusDays(1L)); |
| 54 | + System.out.println("Wszystkie sale: " + cinemaHallService.getAll()); |
| 55 | + System.out.println("Sala o id=" + firstHall.getId() + ": " |
| 56 | + + cinemaHallService.get(firstHall.getId())); |
41 | 57 |
|
42 |
| - MovieSession yesterdayMovieSession = new MovieSession(); |
43 |
| - yesterdayMovieSession.setCinemaHall(firstCinemaHall); |
44 |
| - yesterdayMovieSession.setMovie(fastAndFurious); |
45 |
| - yesterdayMovieSession.setShowTime(LocalDateTime.now().minusDays(1L)); |
| 58 | + final MovieSessionService movieSessionService = (MovieSessionService) |
| 59 | + Injector.getInstance("mate.academy") |
| 60 | + .getInstance(MovieSessionService.class); |
| 61 | + MovieSession tomorrowSession = new MovieSession(); |
| 62 | + tomorrowSession.setMovie(fastAndFurious); |
| 63 | + tomorrowSession.setCinemaHall(firstHall); |
| 64 | + tomorrowSession.setShowTime(LocalDateTime.now().plusDays(1)); |
| 65 | + movieSessionService.add(tomorrowSession); |
46 | 66 |
|
47 |
| - MovieSessionService movieSessionService = null; |
48 |
| - movieSessionService.add(tomorrowMovieSession); |
49 |
| - movieSessionService.add(yesterdayMovieSession); |
| 67 | + MovieSession yesterdaySession = new MovieSession(); |
| 68 | + yesterdaySession.setMovie(fastAndFurious); |
| 69 | + yesterdaySession.setCinemaHall(firstHall); |
| 70 | + yesterdaySession.setShowTime(LocalDateTime.now().minusDays(1)); |
| 71 | + movieSessionService.add(yesterdaySession); |
50 | 72 |
|
51 |
| - System.out.println(movieSessionService.get(yesterdayMovieSession.getId())); |
52 |
| - System.out.println(movieSessionService.findAvailableSessions( |
53 |
| - fastAndFurious.getId(), LocalDate.now())); |
| 73 | + System.out.println("Sesja wczorajsza: " |
| 74 | + + movieSessionService.get(yesterdaySession.getId())); |
| 75 | + System.out.println("Dostępne sesje na dziś dla filmu id=" |
| 76 | + + fastAndFurious.getId() |
| 77 | + + ": " + movieSessionService.findAvailableSessions(fastAndFurious.getId(), |
| 78 | + LocalDate.now())); |
54 | 79 | }
|
55 | 80 | }
|
0 commit comments