Added I/O try-catch and toasts

This commit is contained in:
2026-09-21 12:55:33 -07:00
committed by Tom
parent 338a7e4c0e
commit 8249c68266
2 changed files with 15 additions and 4 deletions

View File

@@ -237,10 +237,15 @@ public class MainActivity extends AppCompatActivity {
if (mOpen5eImportDisposable != null && mOpen5eImportDisposable.isDisposed()) { if (mOpen5eImportDisposable != null && mOpen5eImportDisposable.isDisposed()) {
break; break;
} }
((MonsterCardsApplication) getApplication()).getMonsterRepository() try {
.saveMonster(monster) ((MonsterCardsApplication) getApplication()).getMonsterRepository()
.blockingAwait(); .saveMonster(monster)
totalImported++; .blockingAwait();
totalImported++;
} catch (Exception e) {
Logger.logError("Failed to save monster to database", e);
runOnUiThread(() -> ToastHelper.showShort(MainActivity.this, "An error occurred while saving a monster."));
}
} }
nextUrl = page.nextUrl; nextUrl = page.nextUrl;
} while (nextUrl != null && !nextUrl.isEmpty()); } while (nextUrl != null && !nextUrl.isEmpty());
@@ -422,6 +427,7 @@ public class MainActivity extends AppCompatActivity {
} }
} catch (IOException e) { } catch (IOException e) {
Logger.logError("error reading file", e); Logger.logError("error reading file", e);
ToastHelper.showLong(this, "An error occurred while reading the file.");
return null; return null;
} }
return builder.toString(); return builder.toString();

View File

@@ -34,6 +34,7 @@ import com.majinnaibu.monstercards.importers.Open5eImporter;
import com.majinnaibu.monstercards.models.Monster; import com.majinnaibu.monstercards.models.Monster;
import com.majinnaibu.monstercards.utils.Logger; import com.majinnaibu.monstercards.utils.Logger;
import com.majinnaibu.monstercards.utils.SnackbarHelper; import com.majinnaibu.monstercards.utils.SnackbarHelper;
import com.majinnaibu.monstercards.utils.ToastHelper;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.InputStream; import java.io.InputStream;
@@ -212,6 +213,10 @@ public class MCFragment extends Fragment {
} }
} catch (Exception e) { } catch (Exception e) {
Logger.logError("Error reading URI contents for import", e); Logger.logError("Error reading URI contents for import", e);
Context ctx = getContext();
if (ctx != null) {
ToastHelper.showLong(ctx, "An error occurred while reading the file.");
}
return null; return null;
} }
return builder.toString(); return builder.toString();