Pass exceptions through from BoteHelper (like in GeneralHelper)
Todo: handle them.
This commit is contained in:
@ -16,8 +16,10 @@ public class BoteHelper extends GeneralHelper {
|
||||
* @param folder The folder.
|
||||
* @param showNew Should the name contain the number of new messages?
|
||||
* @return The name of the folder.
|
||||
* @throws PasswordException
|
||||
* @throws GeneralSecurityException
|
||||
*/
|
||||
public static String getFolderDisplayName(Context ctx, EmailFolder folder, boolean showNew) {
|
||||
public static String getFolderDisplayName(Context ctx, EmailFolder folder, boolean showNew) throws PasswordException, GeneralSecurityException {
|
||||
String displayName = "";
|
||||
|
||||
String name = folder.getName();
|
||||
@ -33,15 +35,9 @@ public class BoteHelper extends GeneralHelper {
|
||||
displayName = name;
|
||||
|
||||
if (showNew) {
|
||||
try {
|
||||
int numNew = folder.getNumNewEmails();
|
||||
if (numNew > 0)
|
||||
displayName = displayName + " (" + numNew + ")";
|
||||
} catch (GeneralSecurityException e) {
|
||||
// TODO Auto-generated catch block
|
||||
} catch (PasswordException e) {
|
||||
// TODO Auto-generated catch block
|
||||
}
|
||||
int numNew = folder.getNumNewEmails();
|
||||
if (numNew > 0)
|
||||
displayName = displayName + " (" + numNew + ")";
|
||||
}
|
||||
|
||||
return displayName;
|
||||
|
@ -1,7 +1,9 @@
|
||||
package i2p.bote;
|
||||
|
||||
import java.security.GeneralSecurityException;
|
||||
import java.util.List;
|
||||
|
||||
import i2p.bote.fileencryption.PasswordException;
|
||||
import i2p.bote.folder.EmailFolder;
|
||||
import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
@ -34,7 +36,15 @@ public class FolderAdapter extends ArrayAdapter<EmailFolder> {
|
||||
|
||||
TextView name = (TextView) v.findViewById(R.id.folder_name);
|
||||
// TODO: This needs to be updated when emails change.
|
||||
name.setText(BoteHelper.getFolderDisplayName(getContext(), folder, true));
|
||||
try {
|
||||
name.setText(BoteHelper.getFolderDisplayName(getContext(), folder, true));
|
||||
} catch (PasswordException e) {
|
||||
// TODO: Get password from user and retry
|
||||
name.setText("ERROR: " + e.getMessage());
|
||||
} catch (GeneralSecurityException e) {
|
||||
// TODO: Handle properly
|
||||
name.setText("ERROR: " + e.getMessage());
|
||||
}
|
||||
|
||||
return v;
|
||||
}
|
||||
|
@ -1,8 +1,10 @@
|
||||
package i2p.bote;
|
||||
|
||||
import java.security.GeneralSecurityException;
|
||||
import java.util.List;
|
||||
|
||||
import i2p.bote.email.Email;
|
||||
import i2p.bote.fileencryption.PasswordException;
|
||||
import i2p.bote.folder.EmailFolder;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.ListFragment;
|
||||
@ -43,8 +45,16 @@ public class FolderFragment extends ListFragment implements
|
||||
setListShown(false);
|
||||
setEmptyText(getResources().getString(
|
||||
R.string.folder_empty));
|
||||
getActivity().setTitle(
|
||||
BoteHelper.getFolderDisplayName(getActivity(), mFolder, false));
|
||||
try {
|
||||
getActivity().setTitle(
|
||||
BoteHelper.getFolderDisplayName(getActivity(), mFolder, false));
|
||||
} catch (PasswordException e) {
|
||||
// TODO: Get password from user and retry
|
||||
getActivity().setTitle("ERROR: " + e.getMessage());
|
||||
} catch (GeneralSecurityException e) {
|
||||
// TODO: Handle properly
|
||||
getActivity().setTitle("ERROR: " + e.getMessage());
|
||||
}
|
||||
getLoaderManager().initLoader(EMAIL_LIST_LOADER, null, this);
|
||||
}
|
||||
}
|
||||
@ -58,8 +68,16 @@ public class FolderFragment extends ListFragment implements
|
||||
public void onLoadFinished(Loader<List<Email>> loader,
|
||||
List<Email> data) {
|
||||
mAdapter.setData(data);
|
||||
getActivity().setTitle(
|
||||
BoteHelper.getFolderDisplayName(getActivity(), mFolder, true));
|
||||
try {
|
||||
getActivity().setTitle(
|
||||
BoteHelper.getFolderDisplayName(getActivity(), mFolder, true));
|
||||
} catch (PasswordException e) {
|
||||
// TODO: Get password from user and retry
|
||||
getActivity().setTitle("ERROR: " + e.getMessage());
|
||||
} catch (GeneralSecurityException e) {
|
||||
// TODO: Handle properly
|
||||
getActivity().setTitle("ERROR: " + e.getMessage());
|
||||
}
|
||||
|
||||
if (isResumed()) {
|
||||
setListShown(true);
|
||||
@ -70,7 +88,15 @@ public class FolderFragment extends ListFragment implements
|
||||
|
||||
public void onLoaderReset(Loader<List<Email>> loader) {
|
||||
mAdapter.setData(null);
|
||||
getActivity().setTitle(
|
||||
BoteHelper.getFolderDisplayName(getActivity(), mFolder, false));
|
||||
try {
|
||||
getActivity().setTitle(
|
||||
BoteHelper.getFolderDisplayName(getActivity(), mFolder, false));
|
||||
} catch (PasswordException e) {
|
||||
// TODO: Get password from user and retry
|
||||
getActivity().setTitle("ERROR: " + e.getMessage());
|
||||
} catch (GeneralSecurityException e) {
|
||||
// TODO: Handle properly
|
||||
getActivity().setTitle("ERROR: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user