Проект на Spring.
Є модель (клас), який необхідно правильно реалізувати, як xml-файл. Даний XMl-файл - обʼєкт налаштувань, який складається з 3 enum і 1 path. Він для того, щоб наприклад витягнути, який mode програмки: dark чи light, і тд.
Я ніби створив xsd-схему, але якщо виявите, що він неправильно підходить під модель - можна змінити. За схемою треба перевіряти, чи наш xml-файл валідний. Відповідно, якщо не валідний - тоді видаляємо наявний і створюємо дефолтний з дефолтних значень. Якщо валідний - з ним можна працювати.
Потрібно реалізувати репозиторій з необхідними методи для роботи з xml-файлом: створення, оновлення, видалення, зчитування.Створення, оновлення та зчитування в першу чергу має перевіряти чи файл валідний.
Сервіс має використовувати репозиторій і мати методи для відповідної взаємодії з обʼєктом налаштувань (crud знову ж таки операції). Даний сервіс має бути таким, щоб шарити його по всьому додатку, адже всім контролерам треба буде використовувати якісь з полів класу Settings, який власне і є базовим для наших налаштувань. Для початкової ініціалізації сервіса можна використати, наприклад, PostConstruct анотація (щоб коли додаток запускався, ми робили якусь базову перевірку чи наш xml валідний і всі інші кроки для початкової ініціалізації).
Я ніби інтерфейси для репозиторія і сервіса зробив, але це можна поправляти або обговорити в процесі за необхідністю.