Реализуй интерфейс EventQuery у класса LogParser:
4.1. Метод getNumberOfAllEvents() должен возвращать количество событий за указанный период.
4.2. Метод getAllEvents() должен возвращать все события за указанный период.
4.3. Метод getEventsForIP() должен возвращать события, которые происходили с указанного IP.
4.4. Метод getEventsForUser() должен возвращать события, которые инициировал
определенный пользователь.
4.5. Метод getFailedEvents() должен возвращать события, которые не выполнились.
4.6. Метод getErrorEvents() должен возвращать события, которые завершились ошибкой.
4.7. Метод getNumberOfAttemptToSolveTask() должен возвращать количество попыток
решить определенную задачу.
4.8. Метод getNumberOfSuccessfulAttemptToSolveTask() должен возвращать количество
успешных решений определенной задачи.
4.9. Метод getAllSolvedTasksAndTheirNumber() должен возвращать мапу (номер_задачи :
количество_попыток_решить_ее).
4.10. Метод getAllDoneTasksAndTheirNumber() должен возвращать мапу (номер_задачи :
сколько_раз_ее_решили).
- Класс LogParser должен поддерживать интерфейс EventQuery.
- Метод getNumberOfAllEvents(Date, Date) должен возвращать количество уникальных событий за выбранный период.
- Метод getAllEvents(Date, Date) должен возвращать множество уникальных событий за выбранный период.
- Метод getEventsForIP(String, Date, Date) должен возвращать множество уникальных событий, которые происходили с переданного IP адреса за выбранный период.
- Метод getEventsForUser(String, Date, Date) должен возвращать множество уникальных событий, которые произвел переданный пользователь за выбранный период.
- Метод getFailedEvents(Date, Date) должен возвращать множество уникальных событий, у которых статус выполнения FAILED за выбранный период.
- Метод getErrorEvents(Date, Date) должен возвращать множество уникальных событий, у которых статус выполнения ERROR за выбранный период.
- Метод getNumberOfAttemptToSolveTask(int, Date, Date) должен возвращать количество попыток решить задачу с номером task за выбранный период.
- Метод getNumberOfSuccessfulAttemptToSolveTask(int, Date, Date) должен возвращать количество успешных решений задачи с номером task за выбранный период.
- Метод getAllSolvedTasksAndTheirNumber(Date, Date) должен возвращать мапу (номер_задачи : количество_попыток_решить_ее) за выбранный период.
- Метод getAllDoneTasksAndTheirNumber(Date, Date) должен возвращать мапу (номер_задачи : сколько_раз_ее_решили) за выбранный период.