From b2c3ba745184e37c0618e018cd61f1ba25317af7 Mon Sep 17 00:00:00 2001 From: blizzard Date: Sun, 10 Mar 2024 14:14:35 +0300 Subject: [PATCH 01/72] Ega --- pom.xml | 12 ++++++++++++ src/main/java/org/example/classes/StudyGroup.java | 4 +++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b733ae8..6a14a7b 100644 --- a/pom.xml +++ b/pom.xml @@ -16,6 +16,18 @@ + + org.apache.maven.plugins + maven-jar-plugin + 2.4 + + + + org.example.Main + + + + maven-shade-plugin 3.2.3 diff --git a/src/main/java/org/example/classes/StudyGroup.java b/src/main/java/org/example/classes/StudyGroup.java index 92191b6..ce849bc 100644 --- a/src/main/java/org/example/classes/StudyGroup.java +++ b/src/main/java/org/example/classes/StudyGroup.java @@ -14,7 +14,9 @@ import java.util.Objects; import static org.example.details.StorageOfManagers.*; - +/** + * Класс - объект коллекции + */ public class StudyGroup implements Comparable { private String name; //Поле не может быть null, Строка не может быть пустой private long studentsCount; //Значение поля должно быть больше 0 From 5f4b09a6af1b81b7dcc9908b4155d972ed7a682a Mon Sep 17 00:00:00 2001 From: blizzard Date: Mon, 11 Mar 2024 14:16:15 +0300 Subject: [PATCH 02/72] new --- src/main/java/org/example/details/Data.json | 105 +++----------------- 1 file changed, 15 insertions(+), 90 deletions(-) diff --git a/src/main/java/org/example/details/Data.json b/src/main/java/org/example/details/Data.json index 8f02989..b186f47 100644 --- a/src/main/java/org/example/details/Data.json +++ b/src/main/java/org/example/details/Data.json @@ -1,101 +1,26 @@ { - "194152" : { - "name" : "P000", - "studentsCount" : 2, - "shouldBeExpelled" : 7, - "coordinates" : { - "x" : 12.0, - "y" : 4.0 - }, - "creationDate" : "12-08-2005-21:01:56", - "id" : 204, - "formOfEducation" : "FULL_TIME_EDUCATION", - "semesterEnum" : "FIRST", - "groupAdmin" : { - "name" : "Leonard", - "height" : 182.0, - "weight" : 67.0, - "hairColor" : "WHITE", - "location" : { - "x" : 12, - "y" : 12, - "z" : 12, - "name" : "Kronva" - } - } - }, - "210030" : { - "name" : "P111", - "studentsCount" : 11, - "shouldBeExpelled" : 1, - "coordinates" : { - "x" : 11.0, - "y" : 11.0 - }, - "creationDate" : "17-09-1991-12:17:08", - "id" : 951, - "formOfEducation" : "FULL_TIME_EDUCATION", - "semesterEnum" : "FIRST", - "groupAdmin" : { - "name" : "11", - "height" : 1.0, - "weight" : 11.0, - "hairColor" : "WHITE", - "location" : { - "x" : 11, - "y" : 11, - "z" : 11, - "name" : "11" - } - } - }, - "21134" : { - "name" : "P111", - "studentsCount" : 23, - "shouldBeExpelled" : 6, - "coordinates" : { - "x" : 123.0, - "y" : -321.0 - }, - "creationDate" : "24-02-2024-18:43:22", - "id" : 435, - "formOfEducation" : "FULL_TIME_EDUCATION", - "semesterEnum" : "FIRST", - "groupAdmin" : { - "name" : "Костя", - "height" : 176.0, - "weight" : 63.0, - "hairColor" : "BLACK", - "location" : { - "x" : 0, - "y" : 34, - "z" : -10, - "name" : "Ломо" - } - } - }, - "676" : { - "name" : "P676", - "studentsCount" : 19, + "99" : { + "name" : "P999", + "studentsCount" : 99, "shouldBeExpelled" : 9, "coordinates" : { - "x" : 33.0, - "y" : 33.0 + "x" : -45.0, + "y" : 54.0 }, - "creationDate" : "24-02-2024-21:35:39", - "id" : 239, - "formOfEducation" : "FULL_TIME_EDUCATION", + "creationDate" : "11-03-2024-13:47:42", + "id" : 785, + "formOfEducation" : "EVENING_CLASSES", "semesterEnum" : "FIRST", "groupAdmin" : { - "name" : "33", - "height" : 33.0, - "weight" : 33.0, + "name" : "Ваня", + "height" : 181.0, + "weight" : 72.0, "hairColor" : "WHITE", "location" : { - "x" : 33, - "y" : 33, - "z" : 33, - "name" : "33" + "x" : -100, + "y" : -987, + "z" : 1, + "name" : "Чайка" } } } From f57e5737899cc8176867e086f7464b0b99e9fb8c Mon Sep 17 00:00:00 2001 From: blizzard Date: Mon, 11 Mar 2024 14:35:31 +0300 Subject: [PATCH 03/72] new new --- .idea/vcs.xml | 6 ++++++ dependency-reduced-pom.xml | 12 +++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 .idea/vcs.xml diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml index bfd2d11..652e33f 100644 --- a/dependency-reduced-pom.xml +++ b/dependency-reduced-pom.xml @@ -6,6 +6,17 @@ 1.0-SNAPSHOT + + maven-jar-plugin + 2.4 + + + + org.example.Main + + + + maven-shade-plugin 3.2.3 @@ -23,7 +34,6 @@ 3.6.2 1.8 - 1.8 private From fcd8cfe725ea75b862fca0a9e8e9c912c6740c86 Mon Sep 17 00:00:00 2001 From: blizzard Date: Wed, 13 Mar 2024 10:48:26 +0300 Subject: [PATCH 04/72] neww --- .idea/misc.xml | 1 - pom.xml | 27 ++++++--- src/main/java/org/example/Main.java | 19 +++++- .../java/org/example/classes/StudyGroup.java | 7 ++- .../org/example/commands/CommandsManager.java | 2 +- .../org/example/commands/Execute_script.java | 14 ++++- .../example/details/CollectionManager.java | 3 +- .../java/org/example/details/FileSystem.java | 6 +- .../java/org/example/details/Storage.java | 24 +++++++- .../org/example/details/UserInterface.java | 58 ++++++++++++++----- 10 files changed, 127 insertions(+), 34 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 82dbec8..c3f3b0a 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,3 @@ - diff --git a/pom.xml b/pom.xml index 6a14a7b..b83c67e 100644 --- a/pom.xml +++ b/pom.xml @@ -54,15 +54,26 @@ - com.fasterxml.jackson.core - jackson-databind - 2.13.3 - + com.fasterxml.jackson.core + jackson-annotations + 2.16.1 + - com.fasterxml.jackson.datatype - jackson-datatype-jsr310 - 2.13.3 - + com.fasterxml.jackson.core + jackson-core + 2.16.1 + + + com.fasterxml.jackson.core + jackson-databind + 2.16.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + 2.16.1 + + \ No newline at end of file diff --git a/src/main/java/org/example/Main.java b/src/main/java/org/example/Main.java index b37ee11..0c03995 100644 --- a/src/main/java/org/example/Main.java +++ b/src/main/java/org/example/Main.java @@ -15,15 +15,30 @@ public class Main { //C:\\Users\\Кот\\IdeaProjects\\ProgLab5\\src\\details\\CommandScript.txt //"C:\\Users\\Кот\\IdeaProjects\\ProgLab5\\src\\details\\Data.json"); public static void main(String[] args) { + String fileName = ""; + try{ + fileName = args[0]; + }catch(ArrayIndexOutOfBoundsException e){ + System.out.println("Кажется, вы забыли передать имя файла"); + } + + System.out.println(fileName); Storage st = new Storage(); FileSystem file = new FileSystem(); UserInterface user = new UserInterface(); CommandsManager manage = new CommandsManager(); CollectionManager collection = new CollectionManager(); StorageOfManagers storageOfManagers = new StorageOfManagers(collection, user, file, manage, st); - LinkedHashMap map = user.readFile("Перед началом работы введите имя файла для инициализации коллекции: "); + LinkedHashMap map; + if(!fileName.isEmpty()){ + map = user.readFile("Желаете инициализировать коллекцию из файла? \"Enter\" - Да; Another - Нет: ", fileName); + } + else{ + System.out.println("Будет использована пустая коллекция"); + map = new LinkedHashMap<>(); + } StorageOfManagers.storage.mapInit(map); - user.writeln("Файл обработан, коллекция инициализирована. Программа готова к работе"); + user.writeln("Программа готова к работе"); while(user.hasNextLine()){ try { manage.executeCommand(user.readWithMessage("")); diff --git a/src/main/java/org/example/classes/StudyGroup.java b/src/main/java/org/example/classes/StudyGroup.java index ce849bc..5b9c513 100644 --- a/src/main/java/org/example/classes/StudyGroup.java +++ b/src/main/java/org/example/classes/StudyGroup.java @@ -26,7 +26,12 @@ public class StudyGroup implements Comparable { @JsonSerialize(using = LocalDateTimeSerializer.class) @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd-MM-yyyy-HH:mm:ss") private java.time.LocalDateTime creationDate; //Поле не может быть null, Значение этого поля должно генерироваться автоматически - private final Long id; //Поле не может быть null, Значение поля должно быть больше 0, Значение этого поля должно быть уникальным, Значение этого поля должно генерироваться автоматически + + public void setId(int id) { + this.id = (long) id; + } + + private Long id; //Поле не может быть null, Значение поля должно быть больше 0, Значение этого поля должно быть уникальным, Значение этого поля должно генерироваться автоматически private FormOfEducation formOfEducation; //Поле не может быть null private Semester semesterEnum; //Поле не может быть null private Person groupAdmin; //Поле может быть null diff --git a/src/main/java/org/example/commands/CommandsManager.java b/src/main/java/org/example/commands/CommandsManager.java index ae3d550..453f9ee 100644 --- a/src/main/java/org/example/commands/CommandsManager.java +++ b/src/main/java/org/example/commands/CommandsManager.java @@ -65,7 +65,7 @@ public Command getCommand(String s) throws NoSuchCommandException { */ public void executeCommand(String s) throws NoSuchCommandException { String[] str = parseCommand(s); - Command command = getCommand(str[0]); + Command command = getCommand(str[0].toLowerCase()); commandList.add(str[0]); String[] args = Arrays.copyOfRange(str, 1, str.length); command.execute(args); diff --git a/src/main/java/org/example/commands/Execute_script.java b/src/main/java/org/example/commands/Execute_script.java index 54db95e..2f248f3 100644 --- a/src/main/java/org/example/commands/Execute_script.java +++ b/src/main/java/org/example/commands/Execute_script.java @@ -4,8 +4,12 @@ import exception.NoSuchCommandException; import java.io.*; +import java.util.HashSet; +import java.util.Set; public class Execute_script extends Command{ + Set files = new HashSet(); + public Execute_script(){ super("execute_script", "Считать и исполнить скрипт из указанного файла. В скрипте содержатся команды в таком же виде, в котором их вводит пользователь в интерактивном режиме"); argumentCount = 1; @@ -20,7 +24,13 @@ public void execute(String[] args) throws NoSuchCommandException { } catch (FileNotFoundException e) { throw new NoSuchCommandException("Ошибка в имени файла"); } - StorageOfManagers.collectionManager.execute_script(stream); - System.out.println("Выполнение скрипта завершено"); + if(!files.contains(stream)){ + files.add(stream); + StorageOfManagers.collectionManager.execute_script(stream); + System.out.println("Выполнение скрипта завершено"); + } + else{ + throw new exception.IllegalValueException("Не не не, слишком бесконечно"); + } } } diff --git a/src/main/java/org/example/details/CollectionManager.java b/src/main/java/org/example/details/CollectionManager.java index eabd439..1e7abdd 100644 --- a/src/main/java/org/example/details/CollectionManager.java +++ b/src/main/java/org/example/details/CollectionManager.java @@ -115,6 +115,7 @@ public void insertWithKey(StudyGroup element, String arg){ */ public void update(Integer id, String name, long studentsCount, long shouldBeExpelled){ StudyGroup element = userInterface.studyGroupInit(name, studentsCount, shouldBeExpelled); + element.setId(id); storage.replaceElement(id, element); } @@ -161,7 +162,7 @@ public void save() { * @param acceptEmpty Разрешено ли значение пустой строки */ public boolean validate(Object obj, boolean acceptEmpty){ - return !(!acceptEmpty & obj == ""); + return !(!acceptEmpty & (obj == "" || obj == null)); } /** diff --git a/src/main/java/org/example/details/FileSystem.java b/src/main/java/org/example/details/FileSystem.java index 5691564..9981e13 100644 --- a/src/main/java/org/example/details/FileSystem.java +++ b/src/main/java/org/example/details/FileSystem.java @@ -38,6 +38,10 @@ public LinkedHashMap parseToList(String file) throws IOExce return map_one; } + public void setFileName(String fileName) { + this.fileName = fileName; + } + /** * Метод для запоминания пути к файлу с которым работает коллекция * @param s @@ -54,7 +58,7 @@ public void parseToFile(LinkedHashMap map) { FileOutputStream f = null; try{ f = new FileOutputStream(fileName); - }catch(FileNotFoundException e){ + }catch(FileNotFoundException | NullPointerException e){ throw new IllegalValueException("Проблема с файлом"); } OutputStreamWriter writer = new OutputStreamWriter(f); diff --git a/src/main/java/org/example/details/Storage.java b/src/main/java/org/example/details/Storage.java index 376c727..7f4521d 100644 --- a/src/main/java/org/example/details/Storage.java +++ b/src/main/java/org/example/details/Storage.java @@ -22,10 +22,22 @@ public Storage(){ * @param map */ public void mapInit(LinkedHashMap map){ - this.map = map; + List list = new ArrayList<>(map.values()); + Collections.sort(list); for(Integer key : map.keySet()){ this.mapKey.put(map.get(key).getId(), key); } + for(StudyGroup el : list){ + this.map.put(findKey(el.getId()), el); + } + } + public void sort(){ + List list = new ArrayList<>(map.values()); + Collections.sort(list); + map.clear(); + for(StudyGroup el : list){ + this.map.put(findKey(el.getId()), el); + } } /** @@ -68,11 +80,16 @@ public void remove_lower(int key){ * @param form */ public void filterForm(FormOfEducation form){ + boolean flag = false; for(StudyGroup group : map.values()){ if(group.getFormOfEducation().compareTo(form) < 0){ System.out.println(group); + flag = true; } } + if(!flag){ + System.out.println("Элементов, у которых значение поля FormOfEducation меньше заданного вами значения не нашлось"); + } } /** * Взаимодействие команды count_less_than_form_of_education с коллекцией @@ -81,7 +98,7 @@ public void filterForm(FormOfEducation form){ public void countForm(FormOfEducation form){ int count = 0; for(StudyGroup group : map.values()){ - if(group.getFormOfEducation().compareTo(form) > 0){ + if(group.getFormOfEducation().compareTo(form) < 0){ count+=1; } } @@ -141,6 +158,7 @@ public void putMapKeys(int key, long id){ public void replaceElement(long id, StudyGroup el){ if(map.replace(mapKey.get(id), getObj(id), el)){ System.out.println("замена прошла успешно, " + map.get(mapKey.get(id))); + sort(); } else{ System.out.println("Замена не удалась, что-то пошло не так"); @@ -195,6 +213,8 @@ public Collection getValue(){ } public void putWithKey(int key, StudyGroup group){ map.put(key, group); + mapKey.put(group.getId(), key); + sort(); } @Override public String toString(){ diff --git a/src/main/java/org/example/details/UserInterface.java b/src/main/java/org/example/details/UserInterface.java index 2d5cd26..dd36f68 100644 --- a/src/main/java/org/example/details/UserInterface.java +++ b/src/main/java/org/example/details/UserInterface.java @@ -27,23 +27,35 @@ public void writeln(Object o){ * @param s Имя файла * @return map */ - public LinkedHashMap readFile(String s) { - LinkedHashMap map; - while (true) { - String data = readWithMessage(s); - try { - map = fileSystem.parseToList(data); - } catch(IOException e) { - writeErr("Проблема с файлом, повторите ввод: "); - continue; + public LinkedHashMap readFile(String s, String fileName) { + writeln(s); + String answer = scanner.nextLine(); + while(true){ + if(answer.isEmpty()){ + try{ + return fileSystem.parseToList(fileName); + } catch(IOException e){ + System.out.println("Не удалось получить данные из указанного файла, введите новое имя, \"Enter\" - для использования пустой коллекции или 1 для выхода: "); + String ans = scanner.nextLine(); + if(ans.equals("1")){ + System.out.println("Всего доброго"); + System.exit(0); + } + else if(ans.isEmpty()){ + System.out.println("Будет использована пустая коллекция"); + return new LinkedHashMap<>(); + } + else { + fileName = ans; + } + } + } + else { + fileSystem.setFileName(fileName); + return new LinkedHashMap<>(); + } } - break; } - return map; - } - public boolean hasNextLine(){ - return scanner.hasNextLine(); - } /** * Метод читает ввод пользователя с предварительным выводом сообщения, внутри используется валидация для строк @@ -107,6 +119,10 @@ public String readWithMessage(String message, boolean acceptCompare, int compare } public Color colorInit(String message){ writeln(message); + writeln("Допустимые значения: "); + for(Color color : Color.values()){ + System.out.println(color.getRus()); + } String s = scanner.nextLine(); while(!Color.findColor(s) || s.isEmpty()){ writeErr("Значение константы не распознано, повторите ввод"); @@ -122,6 +138,10 @@ public Color colorInit(String message){ */ public FormOfEducation formInit(String message){ writeln(message); + writeln("Допустимые значения: "); + for(FormOfEducation form : FormOfEducation.values()){ + System.out.println(form.getRus()); + } String s = scanner.nextLine(); while(!FormOfEducation.findForm(s) || s.isEmpty()){ writeErr("Значение константы не распознано, повторите ввод"); @@ -129,13 +149,21 @@ public FormOfEducation formInit(String message){ } return FormOfEducation.getForm(s); } + public boolean hasNextLine(){ + return scanner.hasNextLine(); + } /** * Метод инициализирует enum Semester - поле элемента коллекции * @param message * @return FormOfEducation */ + public Semester semInit(String message){ writeln(message); + writeln("Допустимые значения: "); + for(Semester sem : Semester.values()){ + System.out.println(sem.getRus()); + } String s = scanner.nextLine(); while(!Semester.findSem(s) || s.isEmpty()){ writeErr("Значение константы не распознано, повторите ввод"); From d6043af3a899b748a459ffb983d723fd78a412fa Mon Sep 17 00:00:00 2001 From: blizzard Date: Sat, 16 Mar 2024 12:59:19 +0300 Subject: [PATCH 05/72] "the last one maybe" --- src/main/java/org/example/Main.java | 6 ++--- .../java/org/example/classes/Coordinates.java | 4 +-- .../java/org/example/classes/Location.java | 4 +-- .../org/example/commands/CommandsManager.java | 4 +++ .../java/org/example/commands/Remove_key.java | 1 - .../example/details/CollectionManager.java | 27 ++++++++++++++++++- .../org/example/details/CommandScript.txt | 15 ++++++++++- .../java/org/example/details/FileSystem.java | 20 +++++++++++++- .../java/org/example/details/Storage.java | 10 ++++++- 9 files changed, 79 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/example/Main.java b/src/main/java/org/example/Main.java index 0c03995..0986800 100644 --- a/src/main/java/org/example/Main.java +++ b/src/main/java/org/example/Main.java @@ -12,8 +12,8 @@ */ public class Main { - //C:\\Users\\Кот\\IdeaProjects\\ProgLab5\\src\\details\\CommandScript.txt - //"C:\\Users\\Кот\\IdeaProjects\\ProgLab5\\src\\details\\Data.json"); + //C:\Temp\Programming5Lab\src\main\java\org\example\details\CommandScript.txt + //"C:\Temp\Programming5Lab\src\main\java\org\example\details\Data.json"; public static void main(String[] args) { String fileName = ""; try{ @@ -21,7 +21,7 @@ public static void main(String[] args) { }catch(ArrayIndexOutOfBoundsException e){ System.out.println("Кажется, вы забыли передать имя файла"); } - + //Журнал КОД от яндекс, почитать System.out.println(fileName); Storage st = new Storage(); FileSystem file = new FileSystem(); diff --git a/src/main/java/org/example/classes/Coordinates.java b/src/main/java/org/example/classes/Coordinates.java index 73ee5cf..a3048f1 100644 --- a/src/main/java/org/example/classes/Coordinates.java +++ b/src/main/java/org/example/classes/Coordinates.java @@ -11,8 +11,8 @@ public class Coordinates { private double y; //Значение поля должно быть больше -574 public Coordinates(float x, double y){ - this.x = x; - this.y = y; + setX(x); + setY(y); } public Coordinates(){} public float getX(){ diff --git a/src/main/java/org/example/classes/Location.java b/src/main/java/org/example/classes/Location.java index 0be9deb..7febb0e 100644 --- a/src/main/java/org/example/classes/Location.java +++ b/src/main/java/org/example/classes/Location.java @@ -12,8 +12,8 @@ public class Location { public Location(Long x, long y, int z, String name){ setName(name); setX(x); - this.y = y; - this.z = z; + setY(y); + setZ(z); } public Location(){} public void setX(Long x) { diff --git a/src/main/java/org/example/commands/CommandsManager.java b/src/main/java/org/example/commands/CommandsManager.java index 453f9ee..4b1ecc0 100644 --- a/src/main/java/org/example/commands/CommandsManager.java +++ b/src/main/java/org/example/commands/CommandsManager.java @@ -70,6 +70,10 @@ public void executeCommand(String s) throws NoSuchCommandException { String[] args = Arrays.copyOfRange(str, 1, str.length); command.execute(args); } + public void executeFullInsert(String[] data){ + String[] str = parseCommand(data[0]); + + } public ArrayList getCommandList() { return commandList; diff --git a/src/main/java/org/example/commands/Remove_key.java b/src/main/java/org/example/commands/Remove_key.java index 3838405..fafc3fa 100644 --- a/src/main/java/org/example/commands/Remove_key.java +++ b/src/main/java/org/example/commands/Remove_key.java @@ -19,6 +19,5 @@ public void execute(String[] args) throws NoSuchCommandException { throw new IllegalValueException("Ошибка в аргументе команды"); } StorageOfManagers.collectionManager.remove(key); - System.out.println("Объект удалён успешно"); } } diff --git a/src/main/java/org/example/details/CollectionManager.java b/src/main/java/org/example/details/CollectionManager.java index 1e7abdd..84bfcf7 100644 --- a/src/main/java/org/example/details/CollectionManager.java +++ b/src/main/java/org/example/details/CollectionManager.java @@ -19,6 +19,31 @@ public class CollectionManager { public void execute_script(FileInputStream f) { fileSystem.parseScript(f); } + public void insertFormScript(ArrayList args){ + try{ + int key = Integer.parseInt(args.get(0)); + long studentsCount = Long.parseLong(args.get(2)); + long shouldBeExpelled = Long.parseLong(args.get(3)); + FormOfEducation form = FormOfEducation.getForm(args.get(4)); + Semester sem = Semester.getSem(args.get(5)); + float coordinatesX = Float.parseFloat(args.get(6)); + double coordinatesY = Double.parseDouble(args.get(7)); + Float height = Float.parseFloat(args.get(9)); + double weight = Double.parseDouble(args.get(10)); + Color color = Color.getColor(args.get(11)); + Long x = Long.parseLong(args.get(12)); + long y = Long.parseLong(args.get(14)); + int z = Integer.parseInt(args.get(15)); + Location loc = new Location(x, y, z, args.get(13)); + Person admin = new Person(args.get(8), height, weight, color, loc); + Coordinates coord = new Coordinates(coordinatesX, coordinatesY); + StudyGroup el = new StudyGroup(args.get(1), studentsCount, shouldBeExpelled, coord, form, sem, admin); + storage.putWithKey(key, el); + }catch(NumberFormatException | IllegalValueException e){ + throw new IllegalValueException("Значения команды insert в скрипте не валидны"); + } + + } /** * Метод для исполнения команды show @@ -162,7 +187,7 @@ public void save() { * @param acceptEmpty Разрешено ли значение пустой строки */ public boolean validate(Object obj, boolean acceptEmpty){ - return !(!acceptEmpty & (obj == "" || obj == null)); + return !(!acceptEmpty & (obj.equals("") || obj == null)); } /** diff --git a/src/main/java/org/example/details/CommandScript.txt b/src/main/java/org/example/details/CommandScript.txt index 1945329..43925b2 100644 --- a/src/main/java/org/example/details/CommandScript.txt +++ b/src/main/java/org/example/details/CommandScript.txt @@ -1,3 +1,16 @@ show insert 676 P676 19 9 -save \ No newline at end of file +очное +четвёртый +-234 +-1 +Дарья +89 +52 +оранжевый +13 +Кронва +11 +-645 +show + diff --git a/src/main/java/org/example/details/FileSystem.java b/src/main/java/org/example/details/FileSystem.java index 9981e13..d8cbe65 100644 --- a/src/main/java/org/example/details/FileSystem.java +++ b/src/main/java/org/example/details/FileSystem.java @@ -10,6 +10,8 @@ import java.io.*; import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; /** * Класс отвечает за работу с файлами @@ -79,9 +81,25 @@ public void parseToFile(LinkedHashMap map) { */ public void parseScript(FileInputStream stream) { BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); + //Pattern p = Pattern.compile("insert"); try { + //Matcher match = p.matcher(reader.readLine()); while (reader.ready()) { - StorageOfManagers.commandsManager.executeCommand(reader.readLine()); + String string = reader.readLine(); + if(string.split(" ")[0].equals("insert")){ + String[] str = Arrays.copyOfRange(string.split(" "), 1, string.split(" ").length); + ArrayList data = new ArrayList<>(Arrays.asList(str)); + for (int i = 0; i < 12; i++) { + data.add(reader.readLine()); + } + StorageOfManagers.collectionManager.insertFormScript(data); + } + else if(string.isEmpty()){ + break; + } + else{ + StorageOfManagers.commandsManager.executeCommand(string); + } } }catch(IOException | NoSuchCommandException e){ throw new IllegalValueException("Проблема с парсингом файла или команда не найдена"); diff --git a/src/main/java/org/example/details/Storage.java b/src/main/java/org/example/details/Storage.java index 7f4521d..54215c3 100644 --- a/src/main/java/org/example/details/Storage.java +++ b/src/main/java/org/example/details/Storage.java @@ -192,7 +192,15 @@ public void clear(){ * @param key */ public void removeElement(int key){ - map.remove(key); + if(map.containsKey(key)){ + map.remove(key); + System.out.println("Объект удалён успешно"); + } + else{ + System.out.println("Элемент в коллекции отсутствует"); + } + + } /** From def1b0734a581693f21b976e2f0cfd5b79aa74e5 Mon Sep 17 00:00:00 2001 From: blizzard Date: Sat, 16 Mar 2024 13:01:57 +0300 Subject: [PATCH 06/72] one more --- dependency-reduced-pom.xml | 3 +-- pom.xml | 39 +++++++++++++++++--------------------- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml index 652e33f..7270a65 100644 --- a/dependency-reduced-pom.xml +++ b/dependency-reduced-pom.xml @@ -33,8 +33,7 @@ maven-javadoc-plugin 3.6.2 - 1.8 - private + src diff --git a/pom.xml b/pom.xml index b83c67e..352741d 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,6 @@ 17 UTF-8 - @@ -45,35 +44,31 @@ maven-javadoc-plugin 3.6.2 - 1.8 - private + src - - com.fasterxml.jackson.core - jackson-annotations - 2.16.1 - + com.fasterxml.jackson.core + jackson-core + 2.16.1 + - com.fasterxml.jackson.core - jackson-core - 2.16.1 - + com.fasterxml.jackson.core + jackson-databind + 2.16.1 + - com.fasterxml.jackson.core - jackson-databind - 2.16.1 - + com.fasterxml.jackson.core + jackson-annotations + 2.16.1 + - com.fasterxml.jackson.datatype - jackson-datatype-jsr310 - 2.16.1 - + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + 2.16.1 + - - \ No newline at end of file From bb18fadfbf29337963e16e9c261289c2c30fe458 Mon Sep 17 00:00:00 2001 From: blizzard Date: Sun, 24 Mar 2024 20:03:51 +0300 Subject: [PATCH 07/72] change --- .../java/org/example/classes/StudyGroup.java | 2 +- .../org/example/commands/Execute_script.java | 6 +- .../org/example/details/AnotherOneScript.txt | 29 +++++++ .../example/details/CollectionManager.java | 27 ++++++- .../org/example/details/CommandScript.txt | 3 +- src/main/java/org/example/details/Data.json | 78 +++++++++++++++---- .../java/org/example/details/FileSystem.java | 10 ++- 7 files changed, 133 insertions(+), 22 deletions(-) create mode 100644 src/main/java/org/example/details/AnotherOneScript.txt diff --git a/src/main/java/org/example/classes/StudyGroup.java b/src/main/java/org/example/classes/StudyGroup.java index 5b9c513..db426e2 100644 --- a/src/main/java/org/example/classes/StudyGroup.java +++ b/src/main/java/org/example/classes/StudyGroup.java @@ -163,7 +163,7 @@ public int compareTo(StudyGroup group){ } @Override public int hashCode(){ - return Objects.hash(this.name, this.groupAdmin); + return Objects.hash(this.name, this.creationDate, this.id); } diff --git a/src/main/java/org/example/commands/Execute_script.java b/src/main/java/org/example/commands/Execute_script.java index 2f248f3..cc90148 100644 --- a/src/main/java/org/example/commands/Execute_script.java +++ b/src/main/java/org/example/commands/Execute_script.java @@ -8,7 +8,7 @@ import java.util.Set; public class Execute_script extends Command{ - Set files = new HashSet(); + Set files = new HashSet(); public Execute_script(){ super("execute_script", "Считать и исполнить скрипт из указанного файла. В скрипте содержатся команды в таком же виде, в котором их вводит пользователь в интерактивном режиме"); @@ -24,8 +24,8 @@ public void execute(String[] args) throws NoSuchCommandException { } catch (FileNotFoundException e) { throw new NoSuchCommandException("Ошибка в имени файла"); } - if(!files.contains(stream)){ - files.add(stream); + if(!files.contains(args[0])){ + files.add(args[0]); StorageOfManagers.collectionManager.execute_script(stream); System.out.println("Выполнение скрипта завершено"); } diff --git a/src/main/java/org/example/details/AnotherOneScript.txt b/src/main/java/org/example/details/AnotherOneScript.txt new file mode 100644 index 0000000..ebfc966 --- /dev/null +++ b/src/main/java/org/example/details/AnotherOneScript.txt @@ -0,0 +1,29 @@ +update 785 P444 44 4 +дистанционное +первый +0 +-141 +Валера +45 +264 +белый +90 +Ломо +52 +-643 +insert 476 J324 21 6 +вечернее +четвёртый +-5 +-2 +Коля +76 +52 +чёрный +876 +Кронва +1 +-443 +show +filter_less_than_form_of_education вечернее +save \ No newline at end of file diff --git a/src/main/java/org/example/details/CollectionManager.java b/src/main/java/org/example/details/CollectionManager.java index 84bfcf7..cf527b7 100644 --- a/src/main/java/org/example/details/CollectionManager.java +++ b/src/main/java/org/example/details/CollectionManager.java @@ -42,7 +42,6 @@ public void insertFormScript(ArrayList args){ }catch(NumberFormatException | IllegalValueException e){ throw new IllegalValueException("Значения команды insert в скрипте не валидны"); } - } /** @@ -113,12 +112,38 @@ public int keyInit(){ } */ + public void updateFromScript(ArrayList args){ + try{ + int id = Integer.parseInt(args.get(0)); + long studentsCount = Long.parseLong(args.get(2)); + long shouldBeExpelled = Long.parseLong(args.get(3)); + FormOfEducation form = FormOfEducation.getForm(args.get(4)); + Semester sem = Semester.getSem(args.get(5)); + float coordinatesX = Float.parseFloat(args.get(6)); + double coordinatesY = Double.parseDouble(args.get(7)); + Float height = Float.parseFloat(args.get(9)); + double weight = Double.parseDouble(args.get(10)); + Color color = Color.getColor(args.get(11)); + Long x = Long.parseLong(args.get(12)); + long y = Long.parseLong(args.get(14)); + int z = Integer.parseInt(args.get(15)); + Location loc = new Location(x, y, z, args.get(13)); + Person admin = new Person(args.get(8), height, weight, color, loc); + Coordinates coord = new Coordinates(coordinatesX, coordinatesY); + StudyGroup el = new StudyGroup(args.get(1), studentsCount, shouldBeExpelled, coord, form, sem, admin); + el.setId(id); + storage.replaceElement(id, el); + }catch(NumberFormatException | IllegalValueException e){ + throw new IllegalValueException("Значения команды update в скрипте не валидны"); + } + } /** * Метод, используя методы Storage добавляет новый элемент с заданным ключом в коллекцию, а также добавляет его в коллекцию ключей * @param element * @param arg */ + public void insertWithKey(StudyGroup element, String arg){ Integer key; try{ diff --git a/src/main/java/org/example/details/CommandScript.txt b/src/main/java/org/example/details/CommandScript.txt index 43925b2..7fc4fed 100644 --- a/src/main/java/org/example/details/CommandScript.txt +++ b/src/main/java/org/example/details/CommandScript.txt @@ -13,4 +13,5 @@ insert 676 P676 19 9 11 -645 show - +execute_script C:\Users\Кот\IdeaProjects\Programming5Lab\Programming5Lab\src\main\java\org\example\details\AnotherOneScript.txt +help \ No newline at end of file diff --git a/src/main/java/org/example/details/Data.json b/src/main/java/org/example/details/Data.json index b186f47..7079719 100644 --- a/src/main/java/org/example/details/Data.json +++ b/src/main/java/org/example/details/Data.json @@ -1,26 +1,76 @@ { + "476" : { + "name" : "J324", + "studentsCount" : 21, + "shouldBeExpelled" : 6, + "coordinates" : { + "x" : -5.0, + "y" : -2.0 + }, + "creationDate" : "24-03-2024-17:43:59", + "id" : 309, + "formOfEducation" : "EVENING_CLASSES", + "semesterEnum" : "FOURTH", + "groupAdmin" : { + "name" : "Коля", + "height" : 76.0, + "weight" : 52.0, + "hairColor" : "BLACK", + "location" : { + "x" : 876, + "y" : 1, + "z" : -443, + "name" : "Кронва" + } + } + }, "99" : { - "name" : "P999", - "studentsCount" : 99, - "shouldBeExpelled" : 9, + "name" : "P444", + "studentsCount" : 44, + "shouldBeExpelled" : 4, "coordinates" : { - "x" : -45.0, - "y" : 54.0 + "x" : 0.0, + "y" : -141.0 }, - "creationDate" : "11-03-2024-13:47:42", + "creationDate" : "24-03-2024-17:43:59", "id" : 785, - "formOfEducation" : "EVENING_CLASSES", + "formOfEducation" : "DISTANCE_EDUCATION", "semesterEnum" : "FIRST", "groupAdmin" : { - "name" : "Ваня", - "height" : 181.0, - "weight" : 72.0, + "name" : "Валера", + "height" : 45.0, + "weight" : 264.0, "hairColor" : "WHITE", "location" : { - "x" : -100, - "y" : -987, - "z" : 1, - "name" : "Чайка" + "x" : 90, + "y" : 52, + "z" : -643, + "name" : "Ломо" + } + } + }, + "676" : { + "name" : "P676", + "studentsCount" : 19, + "shouldBeExpelled" : 9, + "coordinates" : { + "x" : -234.0, + "y" : -1.0 + }, + "creationDate" : "24-03-2024-17:43:59", + "id" : 828, + "formOfEducation" : "FULL_TIME_EDUCATION", + "semesterEnum" : "FOURTH", + "groupAdmin" : { + "name" : "Дарья", + "height" : 89.0, + "weight" : 52.0, + "hairColor" : "ORANGE", + "location" : { + "x" : 13, + "y" : 11, + "z" : -645, + "name" : "Кронва" } } } diff --git a/src/main/java/org/example/details/FileSystem.java b/src/main/java/org/example/details/FileSystem.java index d8cbe65..454eec2 100644 --- a/src/main/java/org/example/details/FileSystem.java +++ b/src/main/java/org/example/details/FileSystem.java @@ -86,13 +86,19 @@ public void parseScript(FileInputStream stream) { //Matcher match = p.matcher(reader.readLine()); while (reader.ready()) { String string = reader.readLine(); - if(string.split(" ")[0].equals("insert")){ + if(string.split(" ")[0].equals("insert") || string.split(" ")[0].equals("update")){ String[] str = Arrays.copyOfRange(string.split(" "), 1, string.split(" ").length); ArrayList data = new ArrayList<>(Arrays.asList(str)); for (int i = 0; i < 12; i++) { data.add(reader.readLine()); } - StorageOfManagers.collectionManager.insertFormScript(data); + if(string.split(" ")[0].equals("insert")){ + StorageOfManagers.collectionManager.insertFormScript(data); + } + else if(string.split(" ")[0].equals("update")){ + StorageOfManagers.collectionManager.updateFromScript(data); + } + } else if(string.isEmpty()){ break; From 38a1d7f06b99dc259b75330991e34f1a4c873ee4 Mon Sep 17 00:00:00 2001 From: blizzard Date: Mon, 25 Mar 2024 18:47:27 +0300 Subject: [PATCH 08/72] last --- .../java/org/example/classes/StudyGroup.java | 4 +- src/main/java/org/example/details/Data.json | 78 +------------------ .../java/org/example/details/FileSystem.java | 19 ++++- .../org/example/details/UserInterface.java | 10 ++- 4 files changed, 26 insertions(+), 85 deletions(-) diff --git a/src/main/java/org/example/classes/StudyGroup.java b/src/main/java/org/example/classes/StudyGroup.java index db426e2..221870b 100644 --- a/src/main/java/org/example/classes/StudyGroup.java +++ b/src/main/java/org/example/classes/StudyGroup.java @@ -36,7 +36,7 @@ public void setId(int id) { private Semester semesterEnum; //Поле не может быть null private Person groupAdmin; //Поле может быть null - + @JsonCreator public StudyGroup(String name, long studentsCount, long shouldBeExpelled, Coordinates coordinates, FormOfEducation formOfEducation, Semester semesterEnum, Person groupAdmin) { setName(name); setStudentsCount(studentsCount); @@ -58,7 +58,7 @@ public void setCreationDate(LocalDateTime creationDate) { public void setName(String name) { if(!collectionManager.validate(name, false)){ - throw new IllegalValueException("Поле name не может быть пустым или равняться нулю"); + throw new IllegalValueException("Поле name не может быть пустым"); } else { this.name = name; diff --git a/src/main/java/org/example/details/Data.json b/src/main/java/org/example/details/Data.json index 7079719..6f31cf5 100644 --- a/src/main/java/org/example/details/Data.json +++ b/src/main/java/org/example/details/Data.json @@ -1,77 +1 @@ -{ - "476" : { - "name" : "J324", - "studentsCount" : 21, - "shouldBeExpelled" : 6, - "coordinates" : { - "x" : -5.0, - "y" : -2.0 - }, - "creationDate" : "24-03-2024-17:43:59", - "id" : 309, - "formOfEducation" : "EVENING_CLASSES", - "semesterEnum" : "FOURTH", - "groupAdmin" : { - "name" : "Коля", - "height" : 76.0, - "weight" : 52.0, - "hairColor" : "BLACK", - "location" : { - "x" : 876, - "y" : 1, - "z" : -443, - "name" : "Кронва" - } - } - }, - "99" : { - "name" : "P444", - "studentsCount" : 44, - "shouldBeExpelled" : 4, - "coordinates" : { - "x" : 0.0, - "y" : -141.0 - }, - "creationDate" : "24-03-2024-17:43:59", - "id" : 785, - "formOfEducation" : "DISTANCE_EDUCATION", - "semesterEnum" : "FIRST", - "groupAdmin" : { - "name" : "Валера", - "height" : 45.0, - "weight" : 264.0, - "hairColor" : "WHITE", - "location" : { - "x" : 90, - "y" : 52, - "z" : -643, - "name" : "Ломо" - } - } - }, - "676" : { - "name" : "P676", - "studentsCount" : 19, - "shouldBeExpelled" : 9, - "coordinates" : { - "x" : -234.0, - "y" : -1.0 - }, - "creationDate" : "24-03-2024-17:43:59", - "id" : 828, - "formOfEducation" : "FULL_TIME_EDUCATION", - "semesterEnum" : "FOURTH", - "groupAdmin" : { - "name" : "Дарья", - "height" : 89.0, - "weight" : 52.0, - "hairColor" : "ORANGE", - "location" : { - "x" : 13, - "y" : 11, - "z" : -645, - "name" : "Кронва" - } - } - } -} \ No newline at end of file +{ } \ No newline at end of file diff --git a/src/main/java/org/example/details/FileSystem.java b/src/main/java/org/example/details/FileSystem.java index 454eec2..99e0b67 100644 --- a/src/main/java/org/example/details/FileSystem.java +++ b/src/main/java/org/example/details/FileSystem.java @@ -18,6 +18,7 @@ */ public class FileSystem { private String fileName; + private Scanner scanner = new Scanner(System.in); /** * Метод десериализует информацию из файла в Map POJO @@ -58,10 +59,20 @@ public void fileInit(String s){ */ public void parseToFile(LinkedHashMap map) { FileOutputStream f = null; - try{ - f = new FileOutputStream(fileName); - }catch(FileNotFoundException | NullPointerException e){ - throw new IllegalValueException("Проблема с файлом"); + while(true) { + try { + f = new FileOutputStream(fileName); + } catch (FileNotFoundException | NullPointerException e) { + System.out.println("Выполнение команды невозможно, передайте новое имя файла или \"Enter\" - для пропуска"); + String s = scanner.nextLine(); + if (s.isEmpty()) { + throw new IllegalValueException(""); + } else { + fileName = s; + continue; + } + } + break; } OutputStreamWriter writer = new OutputStreamWriter(f); ObjectMapper o = new ObjectMapper(); diff --git a/src/main/java/org/example/details/UserInterface.java b/src/main/java/org/example/details/UserInterface.java index dd36f68..6b6a1d1 100644 --- a/src/main/java/org/example/details/UserInterface.java +++ b/src/main/java/org/example/details/UserInterface.java @@ -34,8 +34,14 @@ public LinkedHashMap readFile(String s, String fileName) { if(answer.isEmpty()){ try{ return fileSystem.parseToList(fileName); - } catch(IOException e){ - System.out.println("Не удалось получить данные из указанного файла, введите новое имя, \"Enter\" - для использования пустой коллекции или 1 для выхода: "); + } + catch(IOException e){ + if(e.getClass() == com.fasterxml.jackson.databind.exc.InvalidDefinitionException.class){ + System.out.println("Значения в файле не валидны или нарушен формат json, введите новое имя, \\\"Enter\\\" - для использования пустой коллекции или 1 для выхода: \""); + } + else{ + System.out.println("Не удалось получить данные из указанного файла, введите новое имя, \"Enter\" - для использования пустой коллекции или 1 для выхода: "); + } String ans = scanner.nextLine(); if(ans.equals("1")){ System.out.println("Всего доброго"); From 3e6d8c35c0c1b94b0ac2c36ffd95be0667d0ef32 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 01:44:32 +0300 Subject: [PATCH 09/72] Create README.md --- README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..bd235d8 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +фывафыаппфыапыв From 4afc5c78b9af4127e128959878c6e52bde847229 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 02:45:26 +0300 Subject: [PATCH 10/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bd235d8..8b13789 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -фывафыаппфыапыв + From 9c8f97d184dd0594ada74ad064d922fa8c34f29a Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 03:38:36 +0300 Subject: [PATCH 11/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8b13789..cc86083 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ - +sdfgbadfgadfg From 929e86fea77200168ad8d4226f7d6bce885de343 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 03:56:37 +0300 Subject: [PATCH 12/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cc86083..8b13789 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -sdfgbadfgadfg + From 82e4c128fe2d2b1a9cb17fa87b65198adcc18a07 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 04:13:54 +0300 Subject: [PATCH 13/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8b13789..9d468d7 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ - +фывпмфвыапфыап From 5f682301cf170b374181bf94af178614d5de4514 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 04:30:28 +0300 Subject: [PATCH 14/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9d468d7..8b13789 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -фывпмфвыапфыап + From 76a1dc4cf24cb16f1249978039327cefcec81bec Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 04:42:49 +0300 Subject: [PATCH 15/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8b13789..742f8c3 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ - +фывпфып From a9729ee840490e48a5c556f59b7ee3f4bb680200 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 04:51:37 +0300 Subject: [PATCH 16/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 742f8c3..8b13789 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -фывпфып + From 82e74a14891d0c17fe8366d4640926fb1d071938 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 04:58:29 +0300 Subject: [PATCH 17/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8b13789..fa6401d 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ - +фывапыавп From 9946428dbe7b569990de8fad7704b03a5a6f7c2a Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:26 +0300 Subject: [PATCH 18/72] Update .gitignore From 4e90e28773214d55492308baec0b5b982e4f985f Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:29 +0300 Subject: [PATCH 19/72] Update .idea/.gitignore From a8f1e049852428c4c384612f36e68a214f8293fb Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:30 +0300 Subject: [PATCH 20/72] Update .idea/encodings.xml From 9fc1778f7b12719bec3cfd4f14b4dac7c65f13c3 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:32 +0300 Subject: [PATCH 21/72] Update .idea/misc.xml From 2328e85b35e7447ace0ac3322334172d8f8396cc Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:34 +0300 Subject: [PATCH 22/72] Update .idea/vcs.xml From 77ef3b09f092c094e29d50c4eb7d83e0ed084017 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:35 +0300 Subject: [PATCH 23/72] Update README.md From 47e8d5bf0a2947a3564e43cc38ed44b9dbdf6b83 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:36 +0300 Subject: [PATCH 24/72] Update dependency-reduced-pom.xml From e617635ae52878097555c22c9ffc209dc2324f09 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:38 +0300 Subject: [PATCH 25/72] Update pom.xml From 2f2906dee55e9edc3b6ff312317d4957749bb2ed Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:39 +0300 Subject: [PATCH 26/72] Update src/main/java/org/example/Main.java From 58897bd4417b273d50f4f003aa95f24ad94f3e65 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:41 +0300 Subject: [PATCH 27/72] Update src/main/java/org/example/classes/Color.java From 4e47d9f8de87800353130e5c8b6f8295ba0f1121 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:43 +0300 Subject: [PATCH 28/72] Update src/main/java/org/example/classes/Coordinates.java From f768452d964ff138001afdc5014b17e2d4e50f58 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:45 +0300 Subject: [PATCH 29/72] Update src/main/java/org/example/classes/FormOfEducation.java From f20b0214bacca2486fda4d94a7dafa74ac3cd96b Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:46 +0300 Subject: [PATCH 30/72] Update src/main/java/org/example/classes/Location.java From 27e06a6391ca0107184f9b08e16454203e63390b Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:48 +0300 Subject: [PATCH 31/72] Update src/main/java/org/example/classes/Person.java From b490b6fdd93ef23271932f010745a95f6b0385da Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:50 +0300 Subject: [PATCH 32/72] Update src/main/java/org/example/classes/Semester.java From 6098e7c461c730d42e9ed0d045bd7a3e984b8f4f Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:51 +0300 Subject: [PATCH 33/72] Update src/main/java/org/example/classes/StudyGroup.java From e1dd463fe0579fd7bdcd509354af40028c2beea0 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:53 +0300 Subject: [PATCH 34/72] Update src/main/java/org/example/commands/Clear.java From f023a2d01a5117f4bea4cd29536e8584874cd273 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:55 +0300 Subject: [PATCH 35/72] Update src/main/java/org/example/commands/Command.java From 9ff94a44d92b796269c0022d492b9790b8acc1dd Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:57 +0300 Subject: [PATCH 36/72] Update src/main/java/org/example/commands/CommandsManager.java From b1a8f990e5a00d741d1bc42eef30613a4059d2d9 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:27:58 +0300 Subject: [PATCH 37/72] Update src/main/java/org/example/commands/Count_less_than_form_of_education.java From d137712c30736be10c1b954bd2679538934ff05e Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:00 +0300 Subject: [PATCH 38/72] Update src/main/java/org/example/commands/Execute_script.java From 36eac5c490dd4984e592b30010e31cd6d4f67ee3 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:02 +0300 Subject: [PATCH 39/72] Update src/main/java/org/example/commands/Exit.java From d460ec825125825554cf01674bec52a480bd97f5 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:04 +0300 Subject: [PATCH 40/72] Update src/main/java/org/example/commands/Filter_by_students_count.java From a940c5e02bfeabd88cab78372269836214514c02 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:05 +0300 Subject: [PATCH 41/72] Update src/main/java/org/example/commands/Filter_less_than_form_of_education.java From 6fb45d272f8fef48853f2ed3600c36afd3be45d2 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:07 +0300 Subject: [PATCH 42/72] Update src/main/java/org/example/commands/Help.java From e4bf02696c5b426dd658c41b60a4b31840d7446f Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:08 +0300 Subject: [PATCH 43/72] Update src/main/java/org/example/commands/History.java From 6b6de4760c514d3618f376db339764b5b7733daf Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:10 +0300 Subject: [PATCH 44/72] Update src/main/java/org/example/commands/Info.java From c7a75d3e94b067ee19ea6cfe39d577eaeaf3dd38 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:11 +0300 Subject: [PATCH 45/72] Update src/main/java/org/example/commands/InsertNull.java From 39c41520da835bfcdf7abcbfd0012bf060d928e9 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:13 +0300 Subject: [PATCH 46/72] Update src/main/java/org/example/commands/Remove_greater.java From c65057dd5b5a332dff7f07b09b694bf8a11cb649 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:14 +0300 Subject: [PATCH 47/72] Update src/main/java/org/example/commands/Remove_key.java From bc9390d306f71a64965889b2d01d7807bffcde65 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:16 +0300 Subject: [PATCH 48/72] Update src/main/java/org/example/commands/Remove_lower_key.java From 6e59872797e36503427f65548304ed0bda4565fc Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:18 +0300 Subject: [PATCH 49/72] Update src/main/java/org/example/commands/Save.java From bd61746832e162e3f548a57bddd125d4052b5b04 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:19 +0300 Subject: [PATCH 50/72] Update src/main/java/org/example/commands/Show.java From 6e4fab9372186b95ea63748d882ff7fcfb077102 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:21 +0300 Subject: [PATCH 51/72] Update src/main/java/org/example/commands/UpdateId.java From d3ead1de4bec0cd98806cae803583f8cdaf3859d Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:22 +0300 Subject: [PATCH 52/72] Update src/main/java/org/example/details/AnotherOneScript.txt From 187b00f5029e3929303d70121c6c5ca9938fc4f4 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:24 +0300 Subject: [PATCH 53/72] Update src/main/java/org/example/details/CollectionManager.java From 204c6f8167014bf02b5bdf11b6f1936fb650df3d Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:26 +0300 Subject: [PATCH 54/72] Update src/main/java/org/example/details/CommandScript.txt From d9f2efee1f13c883f714da20139096ae00b2e916 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:28 +0300 Subject: [PATCH 55/72] Update src/main/java/org/example/details/Data.json From c9a66952123781012560c0a433c61c5354776255 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:29 +0300 Subject: [PATCH 56/72] Update src/main/java/org/example/details/FileSystem.java From 6f1668cfa700a9773b70598ad964a02fd22231dc Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:30 +0300 Subject: [PATCH 57/72] Update src/main/java/org/example/details/Storage.java From f752ee5487ee29aa2f9f5532745b3463d9655644 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:32 +0300 Subject: [PATCH 58/72] Update src/main/java/org/example/details/StorageOfManagers.java From 5e80b5cfc4df95cd02971160e1a0fc8ea82ff2d4 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:34 +0300 Subject: [PATCH 59/72] Update src/main/java/org/example/details/UserInterface.java From f0b419c0b8542e91e86defa4ac7696f9825fa945 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:35 +0300 Subject: [PATCH 60/72] Update src/main/java/org/example/exception/IllegalValueException.java From 33e5dc76bef50e29d4ab11a8d2a7e12d31ad2885 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 05:28:37 +0300 Subject: [PATCH 61/72] Update src/main/java/org/example/exception/NoSuchCommandException.java From 2bd33393f63047a8801a29e45c1e1f6006ccd873 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 06:29:31 +0300 Subject: [PATCH 62/72] Add src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java new file mode 100644 index 0000000..011bc90 --- /dev/null +++ b/src/main/java/org/example/classes/Basket.java @@ -0,0 +1 @@ +{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From 7ace2166d37cd345e72642e372554290930208e8 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 07:00:35 +0300 Subject: [PATCH 63/72] Delete src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 - 1 file changed, 1 deletion(-) delete mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java deleted file mode 100644 index 011bc90..0000000 --- a/src/main/java/org/example/classes/Basket.java +++ /dev/null @@ -1 +0,0 @@ -{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From c7203354d6852df17f1b0671c7d47e38bec73dd4 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 07:01:20 +0300 Subject: [PATCH 64/72] Add src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java new file mode 100644 index 0000000..011bc90 --- /dev/null +++ b/src/main/java/org/example/classes/Basket.java @@ -0,0 +1 @@ +{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From 869bf1685f1f37b4ea95ea6aafcf90074c7bce09 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 07:02:13 +0300 Subject: [PATCH 65/72] Delete src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 - 1 file changed, 1 deletion(-) delete mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java deleted file mode 100644 index 011bc90..0000000 --- a/src/main/java/org/example/classes/Basket.java +++ /dev/null @@ -1 +0,0 @@ -{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From 9a607c4f14ba4967f3b7412c7714ac2070331ca1 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 14:11:38 +0300 Subject: [PATCH 66/72] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fa6401d..8b13789 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -фывапыавп + From 68faeebaf532e8c9aed18124a3e4f5db17ed2a7c Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 14:46:44 +0300 Subject: [PATCH 67/72] Add src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java new file mode 100644 index 0000000..011bc90 --- /dev/null +++ b/src/main/java/org/example/classes/Basket.java @@ -0,0 +1 @@ +{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From 5052c2a200fa7f9db873ed096cde55d9e22674fb Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 14:47:28 +0300 Subject: [PATCH 68/72] Delete src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 - 1 file changed, 1 deletion(-) delete mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java deleted file mode 100644 index 011bc90..0000000 --- a/src/main/java/org/example/classes/Basket.java +++ /dev/null @@ -1 +0,0 @@ -{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From e1263306e9f0c189b74da75342bf6a150e349a1d Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 17:19:29 +0300 Subject: [PATCH 69/72] Add src/main/java/org/example/classes/Basket.java --- src/main/java/org/example/classes/Basket.java | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/main/java/org/example/classes/Basket.java diff --git a/src/main/java/org/example/classes/Basket.java b/src/main/java/org/example/classes/Basket.java new file mode 100644 index 0000000..011bc90 --- /dev/null +++ b/src/main/java/org/example/classes/Basket.java @@ -0,0 +1 @@ +{"name":"Basket.java","path":"src/Things/Basket.java","sha":"d6300749525629cad11240918f656ecb62bc9a94","size":200,"url":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","html_url":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java","git_url":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","download_url":"https://raw.githubusercontent.com/blizzard-jr/Lab3/master/src/Things/Basket.java","type":"file","content":"cGFja2FnZSBUaGluZ3M7CgppbXBvcnQgVGhpbmdzLkluYW5pbWF0ZTsKaW1w\nb3J0IFRoaW5ncy5UaGluZzsKCnB1YmxpYyBjbGFzcyBCYXNrZXQgZXh0ZW5k\ncyBJbmFuaW1hdGUgaW1wbGVtZW50cyBUaGluZyB7CiAgICBwdWJsaWMgQmFz\na2V0KGludCB3LCBTdHJpbmcgYywgU3RyaW5nIG4pIHsKICAgICAgICBzdXBl\ncih3LCBjLCBuKTsKICAgIH0KfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/blizzard-jr/Lab3/contents/src/Things/Basket.java?ref=master","git":"https://api.github.com/repos/blizzard-jr/Lab3/git/blobs/d6300749525629cad11240918f656ecb62bc9a94","html":"https://github.com/blizzard-jr/Lab3/blob/master/src/Things/Basket.java"}} \ No newline at end of file From 67fae7799418a93f1e21ac4d5dca0986da56b2bc Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 18:40:24 +0300 Subject: [PATCH 70/72] Update src/main/java/org/example/classes/Basket.java From 770b9bff84caed570dc0b380388d9d07c3102f82 Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 18:42:06 +0300 Subject: [PATCH 71/72] Update src/main/java/org/example/classes/Basket.java From 952d9f9405f8e44bc0e432c172aeff04defb890a Mon Sep 17 00:00:00 2001 From: Leonard <155238820+blizzard-jr@users.noreply.github.com> Date: Tue, 20 Jan 2026 18:42:07 +0300 Subject: [PATCH 72/72] Add src/main/java/org/example/classes/Friend.java --- src/main/java/org/example/classes/Friend.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 src/main/java/org/example/classes/Friend.java diff --git a/src/main/java/org/example/classes/Friend.java b/src/main/java/org/example/classes/Friend.java new file mode 100644 index 0000000..b9ac467 --- /dev/null +++ b/src/main/java/org/example/classes/Friend.java @@ -0,0 +1,37 @@ +package mumiytroll; + +import Things.Jar; +import Things.ThingStatus; + +public class Friend extends Trolls implements Minor_characters{ + protected static TrollsEmotion generalEmotion; + + @Override + public void initiatorOfScream(){ + System.out.println(this.getName() + " закричал и все подхватили"); + } + + @Override + public void initiatorOfFill(Jar jar) { + System.out.println(this.getName() + " схватил банку из под варенья и они наполнили её волшебной водой"); + jar.setJarStat(ThingStatus.FILLED); + } + + @Override + public void initiatorOfBreak(Jar jar) { + System.out.println(this.getName() + " свитснул и они разбили её об нос лодки"); + jar.setJarStat(ThingStatus.BROKEN); + } + + public Friend(int x, int y, String name){ + super(x, y, name); + } + + + @Override + public void goTravel() { + System.out.println(this.getName() + " отправился в путешествие"); + } + + +}