38 lines
937 B
Java
38 lines
937 B
Java
package store;
|
|
|
|
import model.Student;
|
|
|
|
import java.util.*;
|
|
|
|
public class StudentStore {
|
|
private Map<Integer, Student> students = new HashMap<>();
|
|
|
|
public Optional<Student> addStudent(Student student) {
|
|
int id = students.size();
|
|
student.setId(id);
|
|
students.put(id, student);
|
|
return Optional.ofNullable(student);
|
|
}
|
|
|
|
public Optional<Student> getStudent(int id) {
|
|
return Optional.ofNullable(students.get(id));
|
|
}
|
|
|
|
public Set<Student> getAllStudents() {
|
|
return new HashSet<>(students.values());
|
|
}
|
|
|
|
public Optional<Student> updateStudent(Student student) {
|
|
int id = student.getId();
|
|
if (students.containsKey(id)) {
|
|
students.put(id, student);
|
|
return Optional.ofNullable(student);
|
|
}
|
|
return Optional.empty();
|
|
}
|
|
|
|
public boolean deleteStudent(int id) {
|
|
return students.remove(id) != null;
|
|
}
|
|
}
|