/
vorotov.a.vikt
/
MathEquGen
Обзор
Документация
Войти
/
vorotov.a.vikt
/
MathEquGen
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
src/main/java/com/example/chat/logic/component/EquationsKeeper.java
68 строк
2 KB
DudnikSlava
логирование запросов в модель, дополнительные опции копилки, исправление багов
30 ноя 2025, 16:04
30 ноя 2025, 16:04
f416784
Код
Авторство
О чём код?
package com.example.chat.logic.component; import com.example.chat.logic.domain.Equation; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import java.util.*; import static java.util.Collections.unmodifiableList; @Component @Scope("prototype") public class EquationsKeeper { List<Equation> equations = new ArrayList<>(); public EquationsKeeper() { int i = 0; } public void replaceEquation(int i, Equation equation) { checkIdxEx(i); equations.set(i, equation); } public void addEquation(Equation equation) { equations.add(equation); } public Equation getEquation(int equationNumber) { var result = equations.get(equationNumber); if (result == null) { throw new IllegalStateException(String.format("Уравнение с номером %d не существует в копилке", equationNumber)); } return result; } public void removeEquation(int i) { checkIdxEx(i); equations.remove(i); } public void clear() { equations.clear(); } public int count() { return equations.size(); } public List<Equation> getEquations() { return unmodifiableList(equations); } public boolean checkIdx(int i) { if (i < 0 || i >= equations.size()) { return false; } return true; } void checkIdxEx(int i) { if (!checkIdx(i)) { throw new IllegalArgumentException(String.format("Неправильный индекс уравнения %d, всего уравнений %d", i, equations.size())); } } }