From ea58cc920f15b28fd1d984ae294b1c16e3fd1223 Mon Sep 17 00:00:00 2001 From: Don Strawsburg Date: Thu, 15 Jan 2026 11:28:21 -0500 Subject: [PATCH] cleanup and fixes --- .../catalog/query/package-info.java | 8 +++++++- .../battlbuilder/common/Constants.java | 19 +++++++++++++++++++ .../battlbuilder/config/MinioConfig.java | 3 +++ .../config/ShortLinksProperties.java | 19 +++---------------- .../admin/AdminCategoryController.java | 2 +- .../admin/AdminDashboardController.java | 2 +- .../admin/AdminPartCategoryController.java | 2 +- .../admin/AdminPartRoleMappingController.java | 2 +- .../admin/AdminPlatformController.java | 2 +- .../admin/MerchantAdminController.java | 2 +- .../admin/PlatformViewController.java | 2 +- .../admin/AdminImportStatusController.java | 2 +- .../web/admin/AdminMappingController.java | 2 +- .../web/admin/AdminMerchantController.java | 2 +- .../web/admin/AdminUserController.java | 5 +++-- .../admin/CategoryMappingAdminController.java | 2 +- 16 files changed, 46 insertions(+), 30 deletions(-) create mode 100644 src/main/java/group/goforward/battlbuilder/common/Constants.java diff --git a/src/main/java/group/goforward/battlbuilder/catalog/query/package-info.java b/src/main/java/group/goforward/battlbuilder/catalog/query/package-info.java index b4b0cf0..bbd6d82 100644 --- a/src/main/java/group/goforward/battlbuilder/catalog/query/package-info.java +++ b/src/main/java/group/goforward/battlbuilder/catalog/query/package-info.java @@ -1,4 +1,10 @@ + /** - * Query projections for the catalog domain. + * Query projections for the catalog domain. + *

+ * + * @author Forward Group, LLC + * @version 1.0 + * @since 2025-12-10 */ package group.goforward.battlbuilder.catalog.query; diff --git a/src/main/java/group/goforward/battlbuilder/common/Constants.java b/src/main/java/group/goforward/battlbuilder/common/Constants.java new file mode 100644 index 0000000..b2c256e --- /dev/null +++ b/src/main/java/group/goforward/battlbuilder/common/Constants.java @@ -0,0 +1,19 @@ +package group.goforward.battlbuilder.common; + +public class Constants { + public static final String ROLE_ADMIN = "'ADMIN'"; + /** + * The public base URL used when generating short links (differs in dev vs prod). + * Examples: + * - http://localhost:8080 + * - https://bb.ooo + */ + public static final String PUBLIC_BASE_URL = "http://localhost:8080"; + /** + * The frontend base URL used when redirecting BUILD short links. + * Examples: + * - http://localhost:3000 + * - https://battlbuilder.com + */ + public static final String FRONT_END_BASE_URL = "http://localhost:3000"; +} diff --git a/src/main/java/group/goforward/battlbuilder/config/MinioConfig.java b/src/main/java/group/goforward/battlbuilder/config/MinioConfig.java index 0fdbc86..3ce3556 100644 --- a/src/main/java/group/goforward/battlbuilder/config/MinioConfig.java +++ b/src/main/java/group/goforward/battlbuilder/config/MinioConfig.java @@ -5,6 +5,9 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +/** + * see application.properties for values + */ @Configuration public class MinioConfig { diff --git a/src/main/java/group/goforward/battlbuilder/config/ShortLinksProperties.java b/src/main/java/group/goforward/battlbuilder/config/ShortLinksProperties.java index dfc90ad..d5b89f9 100644 --- a/src/main/java/group/goforward/battlbuilder/config/ShortLinksProperties.java +++ b/src/main/java/group/goforward/battlbuilder/config/ShortLinksProperties.java @@ -1,33 +1,20 @@ package group.goforward.battlbuilder.config; +import group.goforward.battlbuilder.common.Constants; import org.springframework.boot.context.properties.ConfigurationProperties; @ConfigurationProperties(prefix = "shortlinks") public class ShortLinksProperties { - /** - * The public base URL used when generating short links (differs in dev vs prod). - * Examples: - * - http://localhost:8080 - * - https://bb.ooo - */ - public static final String PUBLIC_BASE_URL = "http://localhost:8080"; - /** - * The frontend base URL used when redirecting BUILD short links. - * Examples: - * - http://localhost:3000 - * - https://battlbuilder.com - */ - public static final String FRONT_END_BASE_URL = "http://localhost:3000"; /** * Master switch to enable short links. */ private boolean enabled = true; - private String publicBaseUrl = PUBLIC_BASE_URL; + private String publicBaseUrl = Constants.PUBLIC_BASE_URL; - private String frontendBaseUrl = FRONT_END_BASE_URL; + private String frontendBaseUrl = Constants.FRONT_END_BASE_URL; public boolean isEnabled() { return enabled; diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminCategoryController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminCategoryController.java index 993ffa3..4b7aed1 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminCategoryController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminCategoryController.java @@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; @RestController -@RequestMapping("/api/admin/categories") +@RequestMapping({"/api/admin/categories","/api/v1/admin/categories"}) @CrossOrigin public class AdminCategoryController { diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminDashboardController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminDashboardController.java index 384add2..221d1e5 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminDashboardController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminDashboardController.java @@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController -@RequestMapping("/api/admin/dashboard") +@RequestMapping({"/api/admin/dashboard", "/api/v1/admin/dashboard"}) public class AdminDashboardController { private final AdminDashboardService adminDashboardService; diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartCategoryController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartCategoryController.java index 5ae1c30..ac6ad43 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartCategoryController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartCategoryController.java @@ -7,7 +7,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; @RestController -@RequestMapping("/api/admin/part-categories") +@RequestMapping({"/api/admin/part-categories", "/api/v1/admin/part-categories"}) @CrossOrigin // keep it loose for now, you can tighten origins later public class AdminPartCategoryController { diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartRoleMappingController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartRoleMappingController.java index 1d3d961..daf39cc 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartRoleMappingController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPartRoleMappingController.java @@ -14,7 +14,7 @@ import org.springframework.web.server.ResponseStatusException; import java.util.List; @RestController -@RequestMapping("/api/admin/part-role-mappings") +@RequestMapping({"/api/admin/part-role-mappings", "/api/v1/admin/part-role-mappings"}) @CrossOrigin public class AdminPartRoleMappingController { diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPlatformController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPlatformController.java index 294af44..a432e84 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPlatformController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/AdminPlatformController.java @@ -12,7 +12,7 @@ import java.util.List; import org.springframework.web.server.ResponseStatusException; @RestController -@RequestMapping("/api/platforms") +@RequestMapping({"/api/platforms", "/api/v1/platforms"}) @CrossOrigin public class AdminPlatformController { diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/MerchantAdminController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/MerchantAdminController.java index b86fa06..b33ad18 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/MerchantAdminController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/MerchantAdminController.java @@ -15,7 +15,7 @@ import group.goforward.battlbuilder.web.dto.MerchantAdminDto; import java.util.List; @RestController -@RequestMapping("/api/admin/merchants") +@RequestMapping({"/api/admin/merchants", "/api/v1/admin/merchants"}) @CrossOrigin(origins = "http://localhost:3000") // TEMP for Cross-Origin Bug public class MerchantAdminController { diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/PlatformViewController.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/PlatformViewController.java index 6951c1c..fe4a331 100644 --- a/src/main/java/group/goforward/battlbuilder/controllers/admin/PlatformViewController.java +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/PlatformViewController.java @@ -5,7 +5,7 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @Controller -@RequestMapping("/platforms") +@RequestMapping({"/platforms", "api/v1/platforms"}) public class PlatformViewController { @GetMapping("/manage") diff --git a/src/main/java/group/goforward/battlbuilder/web/admin/AdminImportStatusController.java b/src/main/java/group/goforward/battlbuilder/web/admin/AdminImportStatusController.java index 4a29820..fe424b2 100644 --- a/src/main/java/group/goforward/battlbuilder/web/admin/AdminImportStatusController.java +++ b/src/main/java/group/goforward/battlbuilder/web/admin/AdminImportStatusController.java @@ -10,7 +10,7 @@ import java.util.List; import java.util.Map; @RestController -@RequestMapping("/api/admin/import-status") +@RequestMapping({"/api/admin/import-status", "/api/v1/admin/import-status"}) public class AdminImportStatusController { private final ProductRepository productRepository; diff --git a/src/main/java/group/goforward/battlbuilder/web/admin/AdminMappingController.java b/src/main/java/group/goforward/battlbuilder/web/admin/AdminMappingController.java index e617f93..e7f8963 100644 --- a/src/main/java/group/goforward/battlbuilder/web/admin/AdminMappingController.java +++ b/src/main/java/group/goforward/battlbuilder/web/admin/AdminMappingController.java @@ -11,7 +11,7 @@ import java.util.List; import java.util.Map; @RestController -@RequestMapping("/api/admin/mapping") +@RequestMapping({"/api/admin/mapping", "/api/v1/admin/mapping"}) public class AdminMappingController { private final MappingAdminService mappingAdminService; diff --git a/src/main/java/group/goforward/battlbuilder/web/admin/AdminMerchantController.java b/src/main/java/group/goforward/battlbuilder/web/admin/AdminMerchantController.java index 93c1537..1f3f9df 100644 --- a/src/main/java/group/goforward/battlbuilder/web/admin/AdminMerchantController.java +++ b/src/main/java/group/goforward/battlbuilder/web/admin/AdminMerchantController.java @@ -7,7 +7,7 @@ import org.springframework.web.bind.annotation.*; import java.util.Map; @RestController -@RequestMapping("/api/admin/merchants") +@RequestMapping({"/api/admin/merchants", "/api/v1/admin/merchants"}) public class AdminMerchantController { private final MerchantFeedImportService merchantFeedImportService; diff --git a/src/main/java/group/goforward/battlbuilder/web/admin/AdminUserController.java b/src/main/java/group/goforward/battlbuilder/web/admin/AdminUserController.java index 3eece07..b108818 100644 --- a/src/main/java/group/goforward/battlbuilder/web/admin/AdminUserController.java +++ b/src/main/java/group/goforward/battlbuilder/web/admin/AdminUserController.java @@ -1,5 +1,6 @@ package group.goforward.battlbuilder.web.admin; +import group.goforward.battlbuilder.common.Constants; import group.goforward.battlbuilder.services.admin.AdminUserService; import group.goforward.battlbuilder.web.dto.admin.AdminUserDto; import group.goforward.battlbuilder.web.dto.admin.UpdateUserRoleRequest; @@ -11,8 +12,8 @@ import java.util.List; import java.util.UUID; @RestController -@RequestMapping("/admin/users") -@PreAuthorize("hasRole('ADMIN')") +@RequestMapping({"/admin/users", "/api/v1/admin/users"}) +@PreAuthorize("hasRole(" + Constants.ROLE_ADMIN + ")") public class AdminUserController { private final AdminUserService adminUserService; diff --git a/src/main/java/group/goforward/battlbuilder/web/admin/CategoryMappingAdminController.java b/src/main/java/group/goforward/battlbuilder/web/admin/CategoryMappingAdminController.java index 61681f1..cdd91db 100644 --- a/src/main/java/group/goforward/battlbuilder/web/admin/CategoryMappingAdminController.java +++ b/src/main/java/group/goforward/battlbuilder/web/admin/CategoryMappingAdminController.java @@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; @RestController -@RequestMapping("/api/admin/mappings") +@RequestMapping({"/api/admin/mappings", "/api/v1/admin/mappings"}) public class CategoryMappingAdminController { private final MappingAdminService mappingAdminService;