From 4ee46e2dc8e90e81d3c37b7cc788c80533b91a5a Mon Sep 17 00:00:00 2001 From: "Gustavo \"Guz\" L de Mello" Date: Wed, 12 Mar 2025 10:04:43 -0300 Subject: [PATCH] refactor(service): use service as struct instead of interface --- router/router.go | 6 ++++-- service/service.go | 12 +++--------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/router/router.go b/router/router.go index df20af3..dad5455 100644 --- a/router/router.go +++ b/router/router.go @@ -15,7 +15,7 @@ import ( ) type router struct { - service service.Service + service *service.Service templates *template.Template staticFiles fs.FS @@ -43,6 +43,8 @@ func New(cfg Config) (http.Handler, error) { } r := &router{ + service: cfg.Service, + templates: cfg.Templates, staticFiles: cfg.StaticFiles, @@ -55,7 +57,7 @@ func New(cfg Config) (http.Handler, error) { } type Config struct { - Service service.Service + Service *service.Service Templates *template.Template StaticFiles fs.FS diff --git a/service/service.go b/service/service.go index 9d54e8d..7cb64b4 100644 --- a/service/service.go +++ b/service/service.go @@ -10,8 +10,7 @@ import ( "github.com/aws/aws-sdk-go-v2/service/s3" ) -type service struct { - s3 *s3.Client +type Service struct { db *database.Database ctx context.Context @@ -20,7 +19,7 @@ type service struct { log *slog.Logger } -func New(cfg Config) (Service, error) { +func New(cfg Config) (*Service, error) { if cfg.DB == nil { return nil, errors.New("database should not be a nil pointer") } @@ -36,8 +35,8 @@ func New(cfg Config) (Service, error) { if cfg.Logger == nil { return nil, errors.New("logger should not be a nil pointer") } - return &service{ db: cfg.DB, + return &Service{ ctx: cfg.Context, @@ -55,8 +54,3 @@ type Config struct { Assertions tinyssert.Assertions Logger *slog.Logger } - -type Service interface { - ListProjects() - NewProject() -}