+ @Override
+ public boolean equals(@Nullable Object o) {
+ if (!(o instanceof Profile))
+ return false;
+ Profile p = (Profile) o;
+ return id == p.id && Misc.equalStrings(name, p.name) && Misc.equalStrings(uuid, p.uuid) &&
+ Misc.equalStrings(url, p.url) && useAuthentication == p.useAuthentication &&
+ Misc.equalStrings(authUser, p.authUser) &&
+ Misc.equalStrings(authPassword, p.authPassword) && orderNo == p.orderNo &&
+ permitPosting == p.permitPosting && theme == p.theme &&
+ Misc.equalStrings(preferredAccountsFilter, p.preferredAccountsFilter) &&
+ futureDates == p.futureDates && apiVersion == p.apiVersion &&
+ showCommentsByDefault == p.showCommentsByDefault &&
+ Misc.equalStrings(defaultCommodity, p.defaultCommodity) &&
+ showCommentsByDefault == p.showCommentsByDefault &&
+ detectedVersionPre_1_19 == p.detectedVersionPre_1_19 &&
+ detectedVersionMajor == p.detectedVersionMajor &&
+ detectedVersionMinor == p.detectedVersionMinor;
+ }
+ @Transaction
+ public void wipeAllDataSync() {
+ OptionDAO optDao = DB.get()
+ .getOptionDAO();
+ optDao.deleteSync(optDao.allForProfileSync(id));
+
+ AccountDAO accDao = DB.get()
+ .getAccountDAO();
+ accDao.deleteSync(accDao.allForProfileSync(id));
+
+ TransactionDAO trnDao = DB.get()
+ .getTransactionDAO();
+ trnDao.deleteSync(trnDao.getAllForProfileUnorderedSync(id));
+ }
+ public void wipeAllData() {
+ AsyncTask.execute(this::wipeAllDataSync);
+ }
+