ae675d6451
Refactor provider usecase: fix ownership bug, use decorator pattern, enforce service layer
...
- Fix DeleteProvider skipping ownership check by adding getUserProvider call
- Replace RestrictedService struct embedding with decorator pattern to prevent
silent method promotion bypassing restriction checks
- Make providerSettingsUsecase delegate to ProviderUsecase instead of accessing
storage directly, ensuring validation and ownership are enforced
- Accept ProviderValidator as constructor parameter, removing SetValidator mutator
- Add instantiate() helper for consistent provider instantiation error handling
- Wrap ListUserProviders storage errors in InternalError for consistency
- Add Test_DeleteProvider_WrongUser test and reduce test boilerplate
2026-03-16 19:44:14 +07:00
1be73506cb
Reformat long function signatures
2026-03-14 12:02:00 +07:00
c9552fa9b2
Remove UsecaseDependancies service locator pattern
...
continuous-integration/drone/push Build is passing
Replace the UsecaseDependancies interface with plain Dependencies structs
defined locally in each route package. DeclareRoutes acts as the sole
composition root where use cases are resolved; sub-route functions and
controllers receive only the specific interfaces they need.
2026-02-14 10:49:46 +07:00
0d4348fc3b
Create admin interface base
2026-01-26 12:34:55 +08:00
33e2743da4
Refactor provider usecase: simplification
2025-11-07 17:59:57 +07:00
b2b6467575
Refactor domain/provider/zone usecase: split in multiple files
2025-05-28 23:02:22 +02:00
356e733e76
Move config struct to model, avoid dependancy to storage
2025-05-28 22:00:02 +02:00
5ef9419072
refactor: restructure project architecture and folder hierarchy
...
- Moved usecases into internal/usecase
- Renamed internal/utils to internal/helpers for better naming semantics
- Clarified separation between domain model, usecases, adapters, and web/API
2025-05-28 22:00:02 +02:00
b77e2b8c3a
Refactor App to add clarity
2025-05-22 15:46:06 +02:00
fb971236f9
Rename Service to Usecase to be consistent
2025-05-22 15:46:06 +02:00
0edc2e66e2
Clean architecture refactoring
2025-04-22 14:15:03 +02:00
1035610be0
Relicense the project to AGPL-3.0
2023-12-24 11:42:00 +01:00
a72a889442
Fix potential Slowloris Attack because ReadHeaderTimeout was not configured (CWE-400)
2023-11-22 10:03:43 +01:00
56b22bade5
Fix project name to permit go get
continuous-integration/drone/push Build is running
2023-09-07 11:37:18 +02:00
79c60c1472
Add listening info log
2023-08-23 23:37:42 +02:00
c0a3ea2d4c
This is happyDomain now
continuous-integration/drone/push Build is passing
2022-01-18 10:16:32 +01:00
cf416224d1
Refactor to use gin-gonic
2021-06-09 22:51:13 +02:00