mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-23 04:33:54 -04:00
Increment: Update code to use FileItem to represent files for transfer
This commit is contained in:
parent
b40cfe779a
commit
af5a4e1c65
@ -60,6 +60,7 @@ import java.util.List;
|
||||
|
||||
import static android.view.View.GONE;
|
||||
import static org.kiwix.kiwixmobile.zim_manager.local_file_transfer.DeviceListFragment.TAG;
|
||||
import static org.kiwix.kiwixmobile.zim_manager.local_file_transfer.FileItem.TO_BE_SENT;
|
||||
import static org.kiwix.kiwixmobile.zim_manager.local_file_transfer.LocalFileTransferActivity.filePath;
|
||||
|
||||
public class DeviceListFragment extends ListFragment implements WifiP2pManager.PeerListListener, WifiP2pManager.ConnectionInfoListener {
|
||||
@ -83,7 +84,7 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
private ArrayList<Uri> fileUriList;
|
||||
private int totalFiles = -1;
|
||||
private int totalFilesSent = 0;
|
||||
private ArrayList<String> fileNames = new ArrayList<>();
|
||||
private ArrayList<FileItem> fileItems = new ArrayList<>();
|
||||
|
||||
@Override
|
||||
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
|
||||
@ -122,7 +123,7 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
totalFiles = fileUriList.size();
|
||||
|
||||
for(int i = 0; i < fileUriList.size(); i++)
|
||||
fileNames.add(getFileName(fileUriList.get(i)));
|
||||
fileItems.add(new FileItem(getFileName(fileUriList.get(i)), TO_BE_SENT));
|
||||
}
|
||||
}
|
||||
|
||||
@ -231,12 +232,12 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
this.totalFiles = totalFiles;
|
||||
}
|
||||
|
||||
public ArrayList<String> getFileNames() {
|
||||
return fileNames;
|
||||
public ArrayList<FileItem> getFileItems() {
|
||||
return fileItems;
|
||||
}
|
||||
|
||||
public void setFileNames(ArrayList<String> fileNames) {
|
||||
this.fileNames = fileNames;
|
||||
public void setFileItems(ArrayList<FileItem> fileItems) {
|
||||
this.fileItems = fileItems;
|
||||
}
|
||||
|
||||
public ArrayList<Uri> getFileUriList() {
|
||||
@ -260,7 +261,7 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
}
|
||||
|
||||
private void displayTransferProgressFragment() {
|
||||
TransferProgressFragment fragment = new TransferProgressFragment(fileNames);
|
||||
TransferProgressFragment fragment = new TransferProgressFragment(fileItems);
|
||||
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
|
||||
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
|
||||
fragmentTransaction.add(R.id.container_fragment_transfer_progress, fragment)
|
||||
@ -434,15 +435,15 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
int total = Integer.parseInt((String) totalFilesObject);
|
||||
deviceListFragment.setTotalFiles(total);
|
||||
Log.d(TAG, "### Transfer of "+ total + " files");
|
||||
ArrayList<String> fileNames = new ArrayList<>();
|
||||
ArrayList<FileItem> fileItems = new ArrayList<>();
|
||||
for (int i = 0; i < total; i++) {
|
||||
Object fileNameObject = objectInputStream.readObject();
|
||||
if(fileNameObject.getClass().equals(String.class)){
|
||||
Log.d(TAG, "File - "+ (String) fileNameObject);
|
||||
fileNames.add((String) fileNameObject);
|
||||
fileItems.add(new FileItem((String) fileNameObject, TO_BE_SENT));
|
||||
}
|
||||
}
|
||||
deviceListFragment.setFileNames(fileNames);
|
||||
deviceListFragment.setFileItems(fileItems);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -478,15 +479,15 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
int total = Integer.parseInt((String) totalFilesObject);
|
||||
deviceListFragment.setTotalFiles(total);
|
||||
Log.d(TAG, "### Transfer of "+ total + " files");
|
||||
ArrayList<String> fileNames = new ArrayList<>();
|
||||
ArrayList<FileItem> fileItems = new ArrayList<>();
|
||||
for (int i = 0; i < total; i++) {
|
||||
Object fileNameObject = objectInputStream.readObject();
|
||||
if(fileNameObject.getClass().equals(String.class)) {
|
||||
Log.d(TAG, "File - "+ (String) fileNameObject);
|
||||
fileNames.add((String) fileNameObject);
|
||||
fileItems.add(new FileItem((String) fileNameObject, TO_BE_SENT));
|
||||
}
|
||||
}
|
||||
deviceListFragment.setFileNames(fileNames);
|
||||
deviceListFragment.setFileItems(fileItems);
|
||||
}
|
||||
}
|
||||
oos.close();
|
||||
@ -627,8 +628,8 @@ public class DeviceListFragment extends ListFragment implements WifiP2pManager.P
|
||||
Socket client = serverSocket.accept();
|
||||
Log.d(LocalFileTransferActivity.TAG, "Server: Client connected");
|
||||
|
||||
ArrayList<String> fileNames = deviceListFragment.getFileNames();
|
||||
String incomingFileName = fileNames.get(currentFile-1);
|
||||
ArrayList<FileItem> fileItems = deviceListFragment.getFileItems();
|
||||
String incomingFileName = fileItems.get(currentFile-1).getFileName();
|
||||
|
||||
// TODO:? File selector, file not exists,
|
||||
final File clientNoteFileLocation = new File(KIWIX_ROOT + incomingFileName);
|
||||
|
@ -13,9 +13,9 @@ public class FileItem {
|
||||
this.fileStatus = fileStatus;
|
||||
}
|
||||
|
||||
public void setFileName(String fileName) {
|
||||
/*public void setFileName(String fileName) {
|
||||
this.fileName = fileName;
|
||||
}
|
||||
}*/
|
||||
|
||||
public void setFileStatus(short fileStatus) {
|
||||
this.fileStatus = fileStatus;
|
||||
|
@ -14,12 +14,12 @@ import org.kiwix.kiwixmobile.R;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class FileListAdapter extends RecyclerView.Adapter<FileListAdapter.FileViewHolder> {
|
||||
private final ArrayList<String> fileNames;
|
||||
private final ArrayList<FileItem> fileItems;
|
||||
private LayoutInflater layoutInflater;
|
||||
|
||||
public FileListAdapter(Context context, ArrayList<String> fileNames) {
|
||||
public FileListAdapter(Context context, ArrayList<FileItem> fileItems) {
|
||||
this.layoutInflater = LayoutInflater.from(context);
|
||||
this.fileNames = fileNames;
|
||||
this.fileItems = fileItems;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@ -31,13 +31,13 @@ public class FileListAdapter extends RecyclerView.Adapter<FileListAdapter.FileVi
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull FileListAdapter.FileViewHolder holder, int position) {
|
||||
String name = fileNames.get(position);
|
||||
String name = fileItems.get(position).getFileName();
|
||||
holder.fileItemView.setText(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return fileNames.size();
|
||||
return fileItems.size();
|
||||
}
|
||||
|
||||
class FileViewHolder extends RecyclerView.ViewHolder {
|
||||
|
@ -37,7 +37,7 @@ public class TransferProgressFragment extends Fragment {
|
||||
private String mParam1;
|
||||
private String mParam2;
|
||||
|
||||
private ArrayList<String> fileNames;
|
||||
private ArrayList<FileItem> fileItems;
|
||||
private RecyclerView filesRecyclerView;
|
||||
private FileListAdapter fileListAdapter;
|
||||
|
||||
@ -47,8 +47,8 @@ public class TransferProgressFragment extends Fragment {
|
||||
// Required empty public constructor
|
||||
}
|
||||
|
||||
public TransferProgressFragment(ArrayList<String> fileNames) {
|
||||
this.fileNames = fileNames;
|
||||
public TransferProgressFragment(ArrayList<FileItem> fileItems) {
|
||||
this.fileItems = fileItems;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -85,7 +85,7 @@ public class TransferProgressFragment extends Fragment {
|
||||
View view = inflater.inflate(R.layout.fragment_transfer_progress, container, false);
|
||||
// TODO: RECYCLERVIEW
|
||||
filesRecyclerView = view.findViewById(R.id.recycler_view_transfer_files);
|
||||
fileListAdapter = new FileListAdapter(getActivity(), fileNames);
|
||||
fileListAdapter = new FileListAdapter(getActivity(), fileItems);
|
||||
filesRecyclerView.setAdapter(fileListAdapter);
|
||||
filesRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user