From 9d7e1825f1e9137131b0e382e9812deaff610d60 Mon Sep 17 00:00:00 2001 From: FahdShalhoub Date: Wed, 26 Aug 2026 19:02:40 +0300 Subject: [PATCH] REFACTOR: Deleted Redundant Repo Interfaces --- cms/internal/db/repositories/catagories.go | 13 ++++--------- cms/internal/db/repositories/videos.go | 10 +++------- cms/main.go | 6 ++++-- 3 files changed, 11 insertions(+), 18 deletions(-) diff --git a/cms/internal/db/repositories/catagories.go b/cms/internal/db/repositories/catagories.go index 46e8313..8aa215c 100644 --- a/cms/internal/db/repositories/catagories.go +++ b/cms/internal/db/repositories/catagories.go @@ -6,18 +6,13 @@ import ( "thamanyah/cms/v2/internal/models" ) -type CatagoriesRepository interface { - ListCategories(ctx context.Context) ([]models.Category, error) - ListCategoriesIDs(ctx context.Context) ([]int16, error) +type CatagoriesRepository struct { + SQLDB *sql.DB } var CatagoriesRepo CatagoriesRepository -type ConcreteCatagoriesRepository struct { - SQLDB *sql.DB -} - -func (svc ConcreteCatagoriesRepository) ListCategories(ctx context.Context) ([]models.Category, error) { +func (svc CatagoriesRepository) ListCategories(ctx context.Context) ([]models.Category, error) { rows, err := svc.SQLDB.QueryContext(ctx, `SELECT id, name FROM categories ORDER BY name`) if err != nil { return nil, err @@ -35,7 +30,7 @@ func (svc ConcreteCatagoriesRepository) ListCategories(ctx context.Context) ([]m return categories, rows.Err() } -func (svc ConcreteCatagoriesRepository) ListCategoriesIDs(ctx context.Context) ([]int16, error) { +func (svc CatagoriesRepository) ListCategoriesIDs(ctx context.Context) ([]int16, error) { rows, err := svc.SQLDB.QueryContext(ctx, `SELECT id FROM categories`) if err != nil { return nil, err diff --git a/cms/internal/db/repositories/videos.go b/cms/internal/db/repositories/videos.go index ca553e1..4f4101f 100644 --- a/cms/internal/db/repositories/videos.go +++ b/cms/internal/db/repositories/videos.go @@ -8,17 +8,13 @@ import ( "thamanyah/cms/v2/internal/models" ) -type VideoRepository interface { - CreateVideo(ctx context.Context, v models.Video) (models.Video, error) +type VideoRepository struct { + SQLDB *sql.DB } var VideoRepo VideoRepository -type ConcreteVideoRepository struct { - SQLDB *sql.DB -} - -func (svc ConcreteVideoRepository) CreateVideo(ctx context.Context, v models.Video) (models.Video, error) { +func (svc VideoRepository) CreateVideo(ctx context.Context, v models.Video) (models.Video, error) { tx, err := svc.SQLDB.BeginTx(ctx, nil) if err != nil { return models.Video{}, err diff --git a/cms/main.go b/cms/main.go index 7648f2a..5777af9 100644 --- a/cms/main.go +++ b/cms/main.go @@ -84,10 +84,12 @@ func runServer() { concreteDBClient := db.CreateDBConnection(requireDBConnectionString()) defer db.CloseConnection(concreteDBClient) db.AssertSuccessfulConnection(context.Background(), concreteDBClient) - repositories.VideoRepo = &repositories.ConcreteVideoRepository{ + + repositories.VideoRepo = repositories.VideoRepository{ SQLDB: concreteDBClient, } - repositories.CatagoriesRepo = &repositories.ConcreteCatagoriesRepository{ + + repositories.CatagoriesRepo = repositories.CatagoriesRepository{ SQLDB: concreteDBClient, }