diff --git a/src/main/java/hhn/temp/project/TaskManager.java b/src/main/java/hhn/temp/project/TaskManager.java index aebed57..08bffa3 100644 --- a/src/main/java/hhn/temp/project/TaskManager.java +++ b/src/main/java/hhn/temp/project/TaskManager.java @@ -17,6 +17,10 @@ public class TaskManager { public Task createTask(String name, String description) { + if(!checkOnlyLetterOrDigit(name)) { + throw new TaskAlreadyExistsException("Only Letters or Digit are allowed in the name: " + name); + } + boolean taskExited = this.taskMap.values().stream().anyMatch(task -> task.getName().equals(name)); if(taskExited) { throw new TaskAlreadyExistsException("Task already exits, with the name: " + name); @@ -55,4 +59,29 @@ public class TaskManager { .orElseThrow().getTaskID()); } + + private boolean checkOnlyLetterOrDigit(String text) { + boolean result = true; + + for(int i = 0; i < text.length(); i++) { + char c = text.charAt(i); + if(!Character.isLetterOrDigit(c)) { + result = false; + break; + } + } + return result; + } + private boolean checkOnlyLetter(String text) { + boolean result = true; + + for(int i = 0; i < text.length(); i++) { + char c = text.charAt(i); + if(!Character.isLetter(c)) { + result = false; + break; + } + } + return result; + } }