У меня есть класс, который содержит кеш (Set), и кеш построен на экземплярах. Я запутался, какое исключение / ошибку я должен выдать, если сборка кеша не удалась (не удается подключиться к базе данных или какой-либо другой).
class Provider {
public Provider() {
buildCache();
}
private void buildCache() {
try {
this.cache = getDataFromDb();
} catch (Exception ex) {
throw new ???
}
}
}
Мне приходит в голову одно исключение: ExceptionInInitializerError
, но Javadoc говорит, что оно генерируется при инициализации статических членов.
Должен ли я выдать IllegalStateException
, потому что кеш не построен, поэтому этот класс бесполезен?
Очевидно, что я могу создать свой собственный ErrorOnBuildingCache
и выбросить его, но мне интересно, подходит ли какое-либо исключение из библиотеки Java этому обстоятельству.