diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/LogDisplayFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/LogDisplayFragment.java index ad5f9d53c..138f2f4e7 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/LogDisplayFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/LogDisplayFragment.java @@ -100,7 +100,7 @@ public class LogDisplayFragment extends ListFragment implements OnItemClickListe @Override public boolean onOptionsItemSelected(MenuItem item) { - switch(item.getItemId()) { + switch (item.getItemId()) { case R.id.menu_log_display_export_log: exportLog(); break; @@ -116,100 +116,94 @@ public class LogDisplayFragment extends ListFragment implements OnItemClickListe private void writeToLogFile(final OperationResult.OperationLog operationLog, final File f) { OperationResult.OperationLog currLog = new OperationResult.OperationLog(); - currLog.add(OperationResult.LogType.MSG_EXPORT_LOG,0); + currLog.add(OperationResult.LogType.MSG_EXPORT_LOG, 0); boolean error = false; PrintWriter pw = null; try { - pw = new PrintWriter(f); - pw.print(getPrintableOperationLog(operationLog,"")); - if(pw.checkError()) {//IOException - Log.e(Constants.TAG, "Log Export I/O Exception "+f.getAbsolutePath()); - currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_ERROR_WRITING,1); - error = true; - } - } catch(FileNotFoundException e) { - Log.e(Constants.TAG, "File not found for exporting log "+f.getAbsolutePath()); + pw = new PrintWriter(f); + pw.print(getPrintableOperationLog(operationLog, "")); + if (pw.checkError()) {//IOException + Log.e(Constants.TAG, "Log Export I/O Exception " + f.getAbsolutePath()); + currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_ERROR_WRITING, 1); + error = true; + } + } catch (FileNotFoundException e) { + Log.e(Constants.TAG, "File not found for exporting log " + f.getAbsolutePath()); currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_ERROR_FOPEN, 1); error = true; } - if(pw!=null) { + if (pw != null) { pw.close(); - if(!error && pw.checkError()) {//check if it is only pw.close() which generated error - currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_ERROR_WRITING,1); + if (!error && pw.checkError()) {//check if it is only pw.close() which generated error + currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_ERROR_WRITING, 1); error = true; } } - if(!error) currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_SUCCESS,1); + if (!error) currLog.add(OperationResult.LogType.MSG_EXPORT_LOG_EXPORT_SUCCESS, 1); - int opResultCode = error?OperationResult.RESULT_ERROR:OperationResult.RESULT_OK; - OperationResult opResult = new LogExportResult(opResultCode,currLog); + int opResultCode = error ? OperationResult.RESULT_ERROR : OperationResult.RESULT_OK; + OperationResult opResult = new LogExportResult(opResultCode, currLog); opResult.createNotify(getActivity()).show(); } - private static class LogExportResult extends OperationResult { - - public LogExportResult(int result, OperationLog log) { - super(result, log); - } - - /** trivial but necessary to implement the Parcelable protocol. */ - public LogExportResult(Parcel source) { - super(source); - } - - public static Creator CREATOR = new Creator() { - public LogExportResult createFromParcel(final Parcel source) { - return new LogExportResult(source); - } - - public LogExportResult[] newArray(final int size) { - return new LogExportResult[size]; - } - }; - } /** * returns an indented String of an entire OperationLog - * @param operationLog log to be converted to indented, printable format + * + * @param opLog log to be converted to indented, printable format * @param basePadding padding to add at the start of all log entries, made for use with SubLogs * @return printable, indented version of passed operationLog */ - private String getPrintableOperationLog(OperationResult.OperationLog operationLog, String basePadding) { + private String getPrintableOperationLog(OperationResult.OperationLog opLog, String basePadding) { String log = ""; - Iterator logIterator = operationLog.iterator(); - while(logIterator.hasNext()) { - log += getPrintableLogEntry(logIterator.next(), basePadding)+"\n"; + for (Iterator logIterator = opLog.iterator(); logIterator.hasNext(); ) { + log += getPrintableLogEntry(logIterator.next(), basePadding) + "\n"; } - log = log.substring(0,log.length()-1);//gets rid of extra new line + log = log.substring(0, log.length() - 1);//gets rid of extra new line return log; } + /** * returns an indented String of a LogEntryParcel including any sub-logs it may contain + * * @param entryParcel log entryParcel whose String representation is to be obtained * @return indented version of passed log entryParcel in a readable format */ private String getPrintableLogEntry(OperationResult.LogEntryParcel entryParcel, String basePadding) { - String logText = ""; final String indent = " ";//4 spaces = 1 Indent level String padding = basePadding; - for(int i =0;i CREATOR = new Creator() { + public LogExportResult createFromParcel(final Parcel source) { + return new LogExportResult(source); + } + + public LogExportResult[] newArray(final int size) { + return new LogExportResult[size]; + } + }; + + public LogExportResult(int result, OperationLog log) { + super(result, log); + } + + /** + * trivial but necessary to implement the Parcelable protocol. + */ + public LogExportResult(Parcel source) { + super(source); + } + } + @Override public void onItemClick(AdapterView parent, View view, int position, long id) { LogEntryParcel parcel = mAdapter.getItem(position);