diff --git a/src/ArrayStorage.java b/src/ArrayStorage.java index 7aff0388..fdc1b9bb 100644 --- a/src/ArrayStorage.java +++ b/src/ArrayStorage.java @@ -1,30 +1,63 @@ +import java.util.Arrays; + /** * Array based storage for Resumes */ public class ArrayStorage { Resume[] storage = new Resume[10000]; + private int size = 0; void clear() { + for (int i = 0; i < size; i++) { + storage[i] = null; + } + size--; } void save(Resume r) { + if (r == null) throw new + IllegalArgumentException("resume is null"); + size++; + storage[0] = r; + storage[size] = r; } - Resume get(String uuid) { + String get(String uuid) { + for (int i = 0; i < size; i++) { + if (storage[i].uuid.equals(uuid)) { + return storage[i].toString(); + } + } return null; } void delete(String uuid) { + for (int i = 0; i < size; i++) { + if (storage[i].uuid.equals(uuid)) { + storage[i] = storage[size - 1]; + storage[size - 1] = storage[size - 2]; + size--; + } + } } /** * @return array, contains only Resumes in storage (without null) */ Resume[] getAll() { - return new Resume[0]; + Resume[] resumes = new Resume[size]; + for (int i = 0; i < size; i++) { + resumes[i] = storage[i]; + } + return resumes; } int size() { - return 0; + return size; + } + + @Override + public String toString() { + return Arrays.toString(storage); } -} +} \ No newline at end of file