Mam podmiot, który ma właściwość ENUM:użyciu enum switch/case
// MyFile.java
public class MyFile {
private DownloadStatus downloadStatus;
// other properties, setters and getters
}
// DownloadStatus.java
public enum DownloadStatus {
NOT_DOWNLOADED(1),
DOWNLOAD_IN_PROGRESS(2),
DOWNLOADED(3);
private int value;
private DownloadStatus(int value) {
this.value = value;
}
public int getValue() {
return value;
}
}
Chcę zapisać ten podmiot w bazie danych i pobrać go. Problem polega na tym, że zapisuję wartość int w bazie danych i otrzymuję wartość int! Nie mogę użyć przełącznika jak poniżej:
MyFile file = new MyFile();
int downloadStatus = ...
switch(downloadStatus) {
case NOT_DOWNLOADED:
file.setDownloadStatus(NOT_DOWNLOADED);
break;
// ...
}
Co mam zrobić?
może to być najgorszy przypadek, ale tylko rozwiązanie, które mogę se, użyć innego gettera przez rozszerzenie klasy, która zwraca wartość jako wyliczenie. –