mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-22 12:03:09 -04:00
Refactor FileItem
- No longer Parcelable - Add private constructor for the two public constructors
This commit is contained in:
parent
72ccd4f7e3
commit
4b260e15ed
@ -16,7 +16,7 @@ import static org.kiwix.kiwixmobile.zim_manager.local_file_transfer.FileItem.Fil
|
||||
*
|
||||
* Defines a file-item to represent the files being transferred.
|
||||
*/
|
||||
public class FileItem implements Parcelable {
|
||||
public class FileItem {
|
||||
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@IntDef({ TO_BE_SENT, SENDING, SENT, ERROR })
|
||||
@ -32,48 +32,19 @@ public class FileItem implements Parcelable {
|
||||
private int fileStatus;
|
||||
|
||||
public FileItem(@NonNull Uri fileUri) { // For sender devices
|
||||
this.fileUri = fileUri;
|
||||
this.fileName = WifiDirectManager.getFileName(fileUri);
|
||||
this.fileStatus = TO_BE_SENT;
|
||||
this(fileUri, WifiDirectManager.getFileName(fileUri));
|
||||
}
|
||||
|
||||
public FileItem(@NonNull String fileName) { // For receiver devices
|
||||
this.fileUri = null;
|
||||
this(null, fileName);
|
||||
}
|
||||
|
||||
private FileItem(Uri fileUri, String fileName) {
|
||||
this.fileUri = fileUri;
|
||||
this.fileName = fileName;
|
||||
this.fileStatus = TO_BE_SENT;
|
||||
}
|
||||
|
||||
// For making FileItem a Parcelable
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToParcel(@NonNull Parcel dest, int flags) {
|
||||
dest.writeString(fileName);
|
||||
dest.writeInt(fileStatus);
|
||||
}
|
||||
|
||||
public static final Parcelable.Creator<FileItem> CREATOR
|
||||
= new Parcelable.Creator<FileItem>() {
|
||||
|
||||
@Override
|
||||
public FileItem createFromParcel(Parcel source) {
|
||||
return (new FileItem(source));
|
||||
}
|
||||
|
||||
@Override
|
||||
public FileItem[] newArray(int size) {
|
||||
return new FileItem[size];
|
||||
}
|
||||
};
|
||||
|
||||
public FileItem(@NonNull Parcel parcel) {
|
||||
this.fileName = parcel.readString();
|
||||
this.fileStatus = parcel.readInt();
|
||||
}
|
||||
|
||||
// Helper methods
|
||||
public void setFileStatus(@FileStatus int fileStatus) {
|
||||
this.fileStatus = fileStatus;
|
||||
@ -87,8 +58,7 @@ public class FileItem implements Parcelable {
|
||||
return fileName;
|
||||
}
|
||||
|
||||
@FileStatus
|
||||
public int getFileStatus() {
|
||||
public @FileStatus int getFileStatus() {
|
||||
return fileStatus;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user