From eb9335f16e0f48a271078a99476580a4788196bd Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Wed, 9 Feb 2022 21:06:41 +0100
Subject: [PATCH] Fixed sonarlint warning

---
 .../categories/DestinationCategory.java       |   1 +
 .../budgetmaster/icon/IconService.java        |   1 +
 .../budgetmaster/images/ImageService.java     |   1 +
 .../reports/HeaderFooterPageEvent.java        |   1 +
 .../reports/ReportGeneratorService.java       | 114 ++++++++++--------
 .../budgetmaster/settings/Settings.java       |   1 +
 .../budgetmaster/tags/TagService.java         |   1 +
 .../templates/TemplateModelAttributes.java    |   4 +
 .../TransactionModelAttributes.java           |   4 +
 .../transactions/TransactionService.java      |   1 +
 10 files changed, 79 insertions(+), 50 deletions(-)

diff --git a/src/main/java/de/deadlocker8/budgetmaster/categories/DestinationCategory.java b/src/main/java/de/deadlocker8/budgetmaster/categories/DestinationCategory.java
index 582fd0696..08a4bd491 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/categories/DestinationCategory.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/categories/DestinationCategory.java
@@ -6,6 +6,7 @@ public class DestinationCategory
 
 	public DestinationCategory()
 	{
+		// empty
 	}
 
 	public Category getCategory()
diff --git a/src/main/java/de/deadlocker8/budgetmaster/icon/IconService.java b/src/main/java/de/deadlocker8/budgetmaster/icon/IconService.java
index 86f9dd2b3..7b8e20718 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/icon/IconService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/icon/IconService.java
@@ -77,6 +77,7 @@ public class IconService implements Resettable
 	@Override
 	public void createDefaults()
 	{
+		// no defaults needed
 	}
 
 	public Icon createIconReference(Integer iconImageID, String builtinIconIdentifier, String fontColor)
diff --git a/src/main/java/de/deadlocker8/budgetmaster/images/ImageService.java b/src/main/java/de/deadlocker8/budgetmaster/images/ImageService.java
index 40dcec5d3..c336bb966 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/images/ImageService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/images/ImageService.java
@@ -60,6 +60,7 @@ public class ImageService implements Resettable
 	@Override
 	public void createDefaults()
 	{
+		// no defaults needed
 	}
 
 	@Transactional
diff --git a/src/main/java/de/deadlocker8/budgetmaster/reports/HeaderFooterPageEvent.java b/src/main/java/de/deadlocker8/budgetmaster/reports/HeaderFooterPageEvent.java
index 5cd218c69..ea8bf6ef8 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/reports/HeaderFooterPageEvent.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/reports/HeaderFooterPageEvent.java
@@ -16,6 +16,7 @@ public class HeaderFooterPageEvent extends PdfPageEventHelper
 	@Override
 	public void onStartPage(PdfWriter writer, Document document)
 	{
+		// empty
 	}
 
 	@Override
diff --git a/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java b/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java
index 665fd68bd..a6aa558b9 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/reports/ReportGeneratorService.java
@@ -75,68 +75,82 @@ public class ReportGeneratorService
 			Font font = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 8, Font.NORMAL, BLACK);
 			Font fontBold = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 8, Font.BOLD, BLACK);
 
-			// add table header
-			for(ReportColumn column : columns)
-			{
-				ColumnType columnType = ColumnType.getByName(column.getKey());
+			createTableHeader(columns, table, font);
 
-				PdfPCell cell = new PdfPCell(new Phrase(columnType.getName(), font));
-				cell.setBackgroundColor(LIGHT_GRAY);
-				cell.setHorizontalAlignment(Element.ALIGN_CENTER);
-				cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
-				table.addCell(cell);
-			}
+			createTableContent(reportConfiguration, amountType, columns, table, font);
 
-			int index = 0;
-			for(Transaction currentItem : reportConfiguration.getTransactions())
-			{
-				if(amountType.equals(AmountType.INCOME) && currentItem.getAmount() <= 0)
-				{
-					continue;
-				}
+			createTotal(reportConfiguration, amountType, numberOfColumns, table, fontBold);
 
-				if(amountType.equals(AmountType.EXPENDITURE) && currentItem.getAmount() > 0)
-				{
-					continue;
-				}
+			return table;
+		}
+		return null;
+	}
 
-				index++;
+	private void createTotal(ReportConfiguration reportConfiguration, AmountType amountType, int numberOfColumns, PdfPTable table, Font fontBold)
+	{
+		PdfPCell cellTotal;
+		String total = "";
+		String totalIncomeString = currencyService.getCurrencyString(reportConfiguration.getBudget().getIncomeSum());
+		String totalExpenditureString = currencyService.getCurrencyString(reportConfiguration.getBudget().getExpenditureSum());
+		switch(amountType)
+		{
+			case BOTH:
+				total = Localization.getString(Strings.REPORT_SUM_TOTAL, totalIncomeString, totalExpenditureString);
+				break;
+			case INCOME:
+				total = Localization.getString(Strings.REPORT_SUM, totalIncomeString);
+				break;
+			case EXPENDITURE:
+				total = Localization.getString(Strings.REPORT_SUM, totalExpenditureString);
+				break;
+		}
 
-				for(ReportColumn column : columns)
-				{
-					ColumnType columnType = ColumnType.getByName(column.getKey());
-					PdfPCell cell = getTransactionTableCell(currentItem, columnType, index, font);
-					table.addCell(cell);
-				}
+		cellTotal = new PdfPCell(new Phrase(total, fontBold));
+		cellTotal.setBackgroundColor(getBaseColor(Color.WHITE));
+		cellTotal.setColspan(numberOfColumns);
+		cellTotal.setHorizontalAlignment(Element.ALIGN_RIGHT);
+		cellTotal.setVerticalAlignment(Element.ALIGN_MIDDLE);
+		table.addCell(cellTotal);
+	}
+
+	private void createTableContent(ReportConfiguration reportConfiguration, AmountType amountType, List<ReportColumn> columns, PdfPTable table, Font font)
+	{
+		int index = 0;
+		for(Transaction currentItem : reportConfiguration.getTransactions())
+		{
+			if(amountType.equals(AmountType.INCOME) && currentItem.getAmount() <= 0)
+			{
+				continue;
 			}
 
-			PdfPCell cellTotal;
-			String total = "";
-			String totalIncomeString = currencyService.getCurrencyString(reportConfiguration.getBudget().getIncomeSum());
-			String totalExpenditureString = currencyService.getCurrencyString(reportConfiguration.getBudget().getExpenditureSum());
-			switch(amountType)
+			if(amountType.equals(AmountType.EXPENDITURE) && currentItem.getAmount() > 0)
 			{
-				case BOTH:
-					total = Localization.getString(Strings.REPORT_SUM_TOTAL, totalIncomeString, totalExpenditureString);
-					break;
-				case INCOME:
-					total = Localization.getString(Strings.REPORT_SUM, totalIncomeString);
-					break;
-				case EXPENDITURE:
-					total = Localization.getString(Strings.REPORT_SUM, totalExpenditureString);
-					break;
+				continue;
 			}
 
-			cellTotal = new PdfPCell(new Phrase(total, fontBold));
-			cellTotal.setBackgroundColor(getBaseColor(Color.WHITE));
-			cellTotal.setColspan(numberOfColumns);
-			cellTotal.setHorizontalAlignment(Element.ALIGN_RIGHT);
-			cellTotal.setVerticalAlignment(Element.ALIGN_MIDDLE);
-			table.addCell(cellTotal);
+			index++;
 
-			return table;
+			for(ReportColumn column : columns)
+			{
+				ColumnType columnType = ColumnType.getByName(column.getKey());
+				PdfPCell cell = getTransactionTableCell(currentItem, columnType, index, font);
+				table.addCell(cell);
+			}
+		}
+	}
+
+	private void createTableHeader(List<ReportColumn> columns, PdfPTable table, Font font)
+	{
+		for(ReportColumn column : columns)
+		{
+			ColumnType columnType = ColumnType.getByName(column.getKey());
+
+			PdfPCell cell = new PdfPCell(new Phrase(columnType.getName(), font));
+			cell.setBackgroundColor(LIGHT_GRAY);
+			cell.setHorizontalAlignment(Element.ALIGN_CENTER);
+			cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
+			table.addCell(cell);
 		}
-		return null;
 	}
 
 	private PdfPCell getTransactionTableCell(Transaction transaction, ColumnType columnType, int position, Font font)
diff --git a/src/main/java/de/deadlocker8/budgetmaster/settings/Settings.java b/src/main/java/de/deadlocker8/budgetmaster/settings/Settings.java
index 55f09482d..28f7c8a19 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/settings/Settings.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/settings/Settings.java
@@ -45,6 +45,7 @@ public class Settings
 
 	public Settings()
 	{
+		// empty
 	}
 
 	public static Settings getDefault()
diff --git a/src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java b/src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java
index 6a1b692f1..054d4f5bc 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/tags/TagService.java
@@ -35,6 +35,7 @@ public class TagService implements Resettable, AccessAllEntities<Tag>
 	@Override
 	public void createDefaults()
 	{
+		// no defaults needed
 	}
 
 	@Override
diff --git a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateModelAttributes.java b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateModelAttributes.java
index afd8ee37a..8afe9ea75 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateModelAttributes.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateModelAttributes.java
@@ -2,6 +2,10 @@ package de.deadlocker8.budgetmaster.templates;
 
 public class TemplateModelAttributes
 {
+	private TemplateModelAttributes()
+	{
+	}
+
 	public static final String ERROR = "error";
 	public static final String TEMPLATES_BY_GROUP = "templatesByGroup";
 	public static final String EXISTING_TEMPLATE_NAMES = "existingTemplateNames";
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionModelAttributes.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionModelAttributes.java
index c2229bae2..fbe58af00 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionModelAttributes.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionModelAttributes.java
@@ -2,6 +2,10 @@ package de.deadlocker8.budgetmaster.transactions;
 
 public class TransactionModelAttributes
 {
+	private TransactionModelAttributes()
+	{
+	}
+
 	public static final String ERROR = "error";
 	public static final String ALL_ENTITIES = "transactions";
 	public static final String ONE_ENTITY = "transaction";
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java
index 3138f65b2..0870489e2 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java
@@ -232,6 +232,7 @@ public class TransactionService implements Resettable
 	@Override
 	public void createDefaults()
 	{
+		// no defaults needed
 	}
 
 	public void handleAmount(TransactionBase item)
-- 
GitLab