From e8284b6ee199b160a196f0c3d5ba746c9328114a Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sat, 2 Mar 2019 16:44:21 +0100
Subject: [PATCH] big refactoring: classes related to tags

---
 .../budgetmaster/database/DatabaseParser_v3.java            | 2 +-
 .../budgetmaster/database/legacy/LegacyParser.java          | 6 +++---
 .../budgetmaster/reports/ReportGeneratorService.java        | 3 +--
 .../budgetmaster/reports/columns/ReportColumnService.java   | 2 --
 .../deadlocker8/budgetmaster/services/DatabaseService.java  | 1 +
 .../budgetmaster/services/FilterHelpersService.java         | 3 ++-
 .../deadlocker8/budgetmaster/services/HelpersService.java   | 4 ++--
 .../de/deadlocker8/budgetmaster/services/ImportService.java | 4 ++--
 .../budgetmaster/{entities/tag => tags}/Tag.java            | 2 +-
 .../budgetmaster/{repositories => tags}/TagRepository.java  | 4 ++--
 .../budgetmaster/{entities/tag => tags}/TagScheduler.java   | 3 +--
 .../budgetmaster/{services => tags}/TagService.java         | 5 +++--
 .../deadlocker8/budgetmaster/transactions/Transaction.java  | 2 +-
 .../budgetmaster/transactions/TransactionController.java    | 3 ++-
 .../budgetmaster/transactions/TransactionRepository.java    | 2 +-
 .../deadlocker8/budgetmaster/transactions/Transaction_.java | 2 +-
 .../deadlocker8/budgetmaster/TransactionRepositoryTest.java | 3 ++-
 .../budgetmaster/database/DatabaseImportTest.java           | 4 ++--
 .../budgetmaster/database/DatabaseParser_v3Test.java        | 2 +-
 .../deadlocker8/budgetmaster/database/LegacyParserTest.java | 2 +-
 20 files changed, 30 insertions(+), 29 deletions(-)
 rename src/main/java/de/deadlocker8/budgetmaster/{entities/tag => tags}/Tag.java (96%)
 rename src/main/java/de/deadlocker8/budgetmaster/{repositories => tags}/TagRepository.java (68%)
 rename src/main/java/de/deadlocker8/budgetmaster/{entities/tag => tags}/TagScheduler.java (90%)
 rename src/main/java/de/deadlocker8/budgetmaster/{services => tags}/TagService.java (80%)

diff --git a/src/main/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3.java b/src/main/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3.java
index af8ee9271..7836c2f29 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3.java
@@ -3,7 +3,7 @@ package de.deadlocker8.budgetmaster.database;
 import com.google.gson.*;
 import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.categories.Category;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
 import de.deadlocker8.budgetmaster.repeating.endoption.*;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/database/legacy/LegacyParser.java b/src/main/java/de/deadlocker8/budgetmaster/database/legacy/LegacyParser.java
index 9fd7406fa..048602b4d 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/database/legacy/LegacyParser.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/database/legacy/LegacyParser.java
@@ -237,14 +237,14 @@ public class LegacyParser
 		return null;
 	}
 
-	private List<de.deadlocker8.budgetmaster.entities.tag.Tag> getTagsByPaymentID(int paymentID)
+	private List<de.deadlocker8.budgetmaster.tags.Tag> getTagsByPaymentID(int paymentID)
 	{
-		List<de.deadlocker8.budgetmaster.entities.tag.Tag> tags = new ArrayList<>();
+		List<de.deadlocker8.budgetmaster.tags.Tag> tags = new ArrayList<>();
 		for(TagMatch tagMatch : tagMatches)
 		{
 			if(tagMatch.getPaymentID() == paymentID)
 			{
-				tags.add(new de.deadlocker8.budgetmaster.entities.tag.Tag(tagMatch.getTagName()));
+				tags.add(new de.deadlocker8.budgetmaster.tags.Tag(tagMatch.getTagName()));
 			}
 		}
 
diff --git a/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java b/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java
index 42f102880..41faab5b8 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java
@@ -2,10 +2,9 @@ package de.deadlocker8.budgetmaster.reports;
 
 import com.itextpdf.text.*;
 import com.itextpdf.text.pdf.*;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.reports.columns.ReportColumn;
-import de.deadlocker8.budgetmaster.reports.*;
 import de.deadlocker8.budgetmaster.reports.categoryBudget.CategoryBudget;
 import de.deadlocker8.budgetmaster.services.HelpersService;
 import de.deadlocker8.budgetmaster.utils.Strings;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/reports/columns/ReportColumnService.java b/src/main/java/de/deadlocker8/budgetmaster/reports/columns/ReportColumnService.java
index bda80eb4d..7c59f20ab 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/reports/columns/ReportColumnService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/reports/columns/ReportColumnService.java
@@ -1,8 +1,6 @@
 package de.deadlocker8.budgetmaster.reports.columns;
 
-import de.deadlocker8.budgetmaster.reports.columns.ReportColumn;
 import de.deadlocker8.budgetmaster.reports.settings.ReportSettings;
-import de.deadlocker8.budgetmaster.reports.columns.ReportColumnRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/DatabaseService.java b/src/main/java/de/deadlocker8/budgetmaster/services/DatabaseService.java
index 34b1ef8f8..602d18ee7 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/services/DatabaseService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/services/DatabaseService.java
@@ -6,6 +6,7 @@ import de.deadlocker8.budgetmaster.categories.CategoryService;
 import de.deadlocker8.budgetmaster.database.Database;
 import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.categories.Category;
+import de.deadlocker8.budgetmaster.tags.TagService;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
 import de.deadlocker8.budgetmaster.transactions.TransactionService;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/FilterHelpersService.java b/src/main/java/de/deadlocker8/budgetmaster/services/FilterHelpersService.java
index 8d9266965..90ff0776b 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/services/FilterHelpersService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/services/FilterHelpersService.java
@@ -3,9 +3,10 @@ package de.deadlocker8.budgetmaster.services;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.categories.CategoryService;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.filter.FilterObject;
 import de.deadlocker8.budgetmaster.filter.FilterConfiguration;
+import de.deadlocker8.budgetmaster.tags.TagService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java b/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java
index 84f718068..6024996a5 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/services/HelpersService.java
@@ -3,7 +3,7 @@ package de.deadlocker8.budgetmaster.services;
 import de.deadlocker8.budgetmaster.accounts.AccountService;
 import de.deadlocker8.budgetmaster.database.accountmatches.AccountMatch;
 import de.deadlocker8.budgetmaster.entities.Settings;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.accounts.AccountType;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
@@ -13,7 +13,7 @@ import de.deadlocker8.budgetmaster.repeating.modifier.RepeatingModifierType;
 import de.deadlocker8.budgetmaster.accounts.AccountRepository;
 import de.deadlocker8.budgetmaster.categories.CategoryRepository;
 import de.deadlocker8.budgetmaster.repositories.SettingsRepository;
-import de.deadlocker8.budgetmaster.repositories.TagRepository;
+import de.deadlocker8.budgetmaster.tags.TagRepository;
 import de.deadlocker8.budgetmaster.transactions.TransactionService;
 import de.deadlocker8.budgetmaster.update.BudgetMasterUpdateService;
 import de.deadlocker8.budgetmaster.utils.Colors;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/ImportService.java b/src/main/java/de/deadlocker8/budgetmaster/services/ImportService.java
index 9fa63aefe..59700cc2d 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/services/ImportService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/services/ImportService.java
@@ -5,10 +5,10 @@ import de.deadlocker8.budgetmaster.database.accountmatches.AccountMatch;
 import de.deadlocker8.budgetmaster.database.accountmatches.AccountMatchList;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.categories.CategoryRepository;
-import de.deadlocker8.budgetmaster.repositories.TagRepository;
+import de.deadlocker8.budgetmaster.tags.TagRepository;
 import de.deadlocker8.budgetmaster.transactions.TransactionRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/entities/tag/Tag.java b/src/main/java/de/deadlocker8/budgetmaster/tags/Tag.java
similarity index 96%
rename from src/main/java/de/deadlocker8/budgetmaster/entities/tag/Tag.java
rename to src/main/java/de/deadlocker8/budgetmaster/tags/Tag.java
index 19a2da1f6..2dd31d96e 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/entities/tag/Tag.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/tags/Tag.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.entities.tag;
+package de.deadlocker8.budgetmaster.tags;
 
 import com.google.gson.annotations.Expose;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/repositories/TagRepository.java b/src/main/java/de/deadlocker8/budgetmaster/tags/TagRepository.java
similarity index 68%
rename from src/main/java/de/deadlocker8/budgetmaster/repositories/TagRepository.java
rename to src/main/java/de/deadlocker8/budgetmaster/tags/TagRepository.java
index dce776463..0c4e6205e 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/repositories/TagRepository.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/tags/TagRepository.java
@@ -1,6 +1,6 @@
-package de.deadlocker8.budgetmaster.repositories;
+package de.deadlocker8.budgetmaster.tags;
 
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import org.springframework.data.jpa.repository.JpaRepository;
 
 import java.util.List;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/entities/tag/TagScheduler.java b/src/main/java/de/deadlocker8/budgetmaster/tags/TagScheduler.java
similarity index 90%
rename from src/main/java/de/deadlocker8/budgetmaster/entities/tag/TagScheduler.java
rename to src/main/java/de/deadlocker8/budgetmaster/tags/TagScheduler.java
index 87838298c..e79851cbc 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/entities/tag/TagScheduler.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/tags/TagScheduler.java
@@ -1,6 +1,5 @@
-package de.deadlocker8.budgetmaster.entities.tag;
+package de.deadlocker8.budgetmaster.tags;
 
-import de.deadlocker8.budgetmaster.repositories.TagRepository;
 import de.deadlocker8.budgetmaster.transactions.TransactionRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/services/TagService.java b/src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java
similarity index 80%
rename from src/main/java/de/deadlocker8/budgetmaster/services/TagService.java
rename to src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java
index e5f767dcf..661759d35 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/services/TagService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java
@@ -1,6 +1,7 @@
-package de.deadlocker8.budgetmaster.services;
+package de.deadlocker8.budgetmaster.tags;
 
-import de.deadlocker8.budgetmaster.repositories.TagRepository;
+import de.deadlocker8.budgetmaster.services.Resetable;
+import de.deadlocker8.budgetmaster.tags.TagRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction.java
index 24962d0f6..8e35aea79 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction.java
@@ -1,7 +1,7 @@
 package de.deadlocker8.budgetmaster.transactions;
 
 import com.google.gson.annotations.Expose;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java
index 97f214c17..f932af67a 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java
@@ -3,7 +3,7 @@ package de.deadlocker8.budgetmaster.transactions;
 import de.deadlocker8.budgetmaster.categories.CategoryRepository;
 import de.deadlocker8.budgetmaster.controller.BaseController;
 import de.deadlocker8.budgetmaster.entities.Settings;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.filter.FilterConfiguration;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
 import de.deadlocker8.budgetmaster.repeating.RepeatingTransactionUpdater;
@@ -14,6 +14,7 @@ import de.deadlocker8.budgetmaster.repositories.*;
 import de.deadlocker8.budgetmaster.accounts.AccountService;
 import de.deadlocker8.budgetmaster.services.FilterHelpersService;
 import de.deadlocker8.budgetmaster.services.HelpersService;
+import de.deadlocker8.budgetmaster.tags.TagRepository;
 import de.deadlocker8.budgetmaster.utils.ResourceNotFoundException;
 import org.joda.time.DateTime;
 import org.joda.time.format.DateTimeFormat;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionRepository.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionRepository.java
index 18c29775f..bf13afcde 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionRepository.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionRepository.java
@@ -1,6 +1,6 @@
 package de.deadlocker8.budgetmaster.transactions;
 
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.accounts.Account;
 import org.joda.time.DateTime;
 import org.springframework.data.jpa.repository.JpaRepository;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction_.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction_.java
index 9020515ea..38498990a 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction_.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/Transaction_.java
@@ -1,6 +1,6 @@
 package de.deadlocker8.budgetmaster.transactions;
 
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
diff --git a/src/test/java/de/deadlocker8/budgetmaster/TransactionRepositoryTest.java b/src/test/java/de/deadlocker8/budgetmaster/TransactionRepositoryTest.java
index 740ea316c..5f48b9b76 100644
--- a/src/test/java/de/deadlocker8/budgetmaster/TransactionRepositoryTest.java
+++ b/src/test/java/de/deadlocker8/budgetmaster/TransactionRepositoryTest.java
@@ -6,7 +6,8 @@ import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.accounts.AccountType;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
+import de.deadlocker8.budgetmaster.tags.TagRepository;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.transactions.TransactionRepository;
 import de.deadlocker8.budgetmaster.transactions.TransactionSpecifications;
diff --git a/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseImportTest.java b/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseImportTest.java
index b54e71004..cc7351c13 100644
--- a/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseImportTest.java
+++ b/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseImportTest.java
@@ -4,10 +4,10 @@ import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.accounts.AccountType;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.categories.CategoryRepository;
-import de.deadlocker8.budgetmaster.repositories.TagRepository;
+import de.deadlocker8.budgetmaster.tags.TagRepository;
 import de.deadlocker8.budgetmaster.transactions.TransactionRepository;
 import de.deadlocker8.budgetmaster.services.ImportService;
 import org.joda.time.DateTime;
diff --git a/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3Test.java b/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3Test.java
index a00968459..533399ea6 100644
--- a/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3Test.java
+++ b/src/test/java/de/deadlocker8/budgetmaster/database/DatabaseParser_v3Test.java
@@ -4,7 +4,7 @@ import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.accounts.AccountType;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
 import de.deadlocker8.budgetmaster.repeating.endoption.RepeatingEndAfterXTimes;
diff --git a/src/test/java/de/deadlocker8/budgetmaster/database/LegacyParserTest.java b/src/test/java/de/deadlocker8/budgetmaster/database/LegacyParserTest.java
index 1b7cb4691..cd2dee408 100644
--- a/src/test/java/de/deadlocker8/budgetmaster/database/LegacyParserTest.java
+++ b/src/test/java/de/deadlocker8/budgetmaster/database/LegacyParserTest.java
@@ -5,7 +5,7 @@ import de.deadlocker8.budgetmaster.accounts.Account;
 import de.deadlocker8.budgetmaster.accounts.AccountType;
 import de.deadlocker8.budgetmaster.categories.Category;
 import de.deadlocker8.budgetmaster.categories.CategoryType;
-import de.deadlocker8.budgetmaster.entities.tag.Tag;
+import de.deadlocker8.budgetmaster.tags.Tag;
 import de.deadlocker8.budgetmaster.transactions.Transaction;
 import de.deadlocker8.budgetmaster.repeating.RepeatingOption;
 import de.deadlocker8.budgetmaster.repeating.endoption.RepeatingEndDate;
-- 
GitLab