package com.openfarmanager.android.filesystem;
import com.mediafire.sdk.api.responses.data_models.File;
import com.mediafire.sdk.api.responses.data_models.FileInfo;
import com.mediafire.sdk.api.responses.data_models.Folder;
import com.openfarmanager.android.App;
import com.openfarmanager.android.model.Bookmark;
import java.util.ArrayList;
import java.util.List;
import static com.openfarmanager.android.utils.Extensions.isNullOrEmpty;
/**
* @author Vlad Namashko
*/
public class MediaFireFile implements FileProxy {
private String mId;
private String mName;
private boolean mIsDirectory;
private long mSize;
private String mFullPath;
private String mParentPath;
private String mMimeType;
private String mFileType;
public MediaFireFile(Folder folder, String parentPath, String parentPathRaw) {
mIsDirectory = true;
mId = folder.getFolderkey();
mName = folder.getFolderName();
mSize = folder.getSize();
mParentPath = parentPath;
if (parentPathRaw != null) {
mFullPath = parentPathRaw.endsWith("/") ? parentPathRaw + getName() : parentPathRaw + "/" + getName();
}
}
public MediaFireFile(File file, String parentPath, String parentPathRaw) {
mIsDirectory = false;
mId = file.getQuickKey();
mName = file.getFilename();
mSize = file.getSize();
mParentPath = parentPath;
mMimeType = file.getMimeType();
mFileType = file.getFileType();
if (parentPathRaw != null) {
mFullPath = parentPathRaw.endsWith("/") ? parentPathRaw + getName() : parentPathRaw + "/" + getName();
}
}
public MediaFireFile(FileInfo info) {
mIsDirectory = false;
mId = info.getQuickKey();
mName = info.getFileName();
mSize = info.getSize();
mParentPath = info.getParentFolderKey();
mMimeType = info.getMimeType();
mFileType = info.getFileType();
}
@Override
public String getId() {
return mId;
}
@Override
public String getName() {
return mName;
}
@Override
public boolean isDirectory() {
return mIsDirectory;
}
@Override
public long getSize() {
return mSize;
}
@Override
public long lastModifiedDate() {
return 0;
}
@Override
public List getChildren() {
return new ArrayList();
}
@Override
public String getFullPath() {
return getId();
}
@Override
public String getFullPathRaw() {
return mFullPath;
}
@Override
public String getParentPath() {
return mParentPath;
}
@Override
public boolean isUpNavigator() {
return false;
}
@Override
public boolean isRoot() {
return false;
}
@Override
public boolean isVirtualDirectory() {
return false;
}
@Override
public boolean isBookmark() {
return false;
}
@Override
public Bookmark getBookmark() {
return null;
}
@Override
public String getMimeType() {
return null;
}
}