diff --git a/internal/repo/sqlite/file_repo.go b/internal/adapter/sqlite/file_repo.go similarity index 100% rename from internal/repo/sqlite/file_repo.go rename to internal/adapter/sqlite/file_repo.go diff --git a/internal/repo/sqlite/transcript_job_repo.go b/internal/adapter/sqlite/transcript_job_repo.go similarity index 96% rename from internal/repo/sqlite/transcript_job_repo.go rename to internal/adapter/sqlite/transcript_job_repo.go index ad16146..679a28f 100644 --- a/internal/repo/sqlite/transcript_job_repo.go +++ b/internal/adapter/sqlite/transcript_job_repo.go @@ -5,9 +5,9 @@ import ( "fmt" "time" + "git.vakhrushev.me/av/transcriber/internal/contract" "git.vakhrushev.me/av/transcriber/internal/entity" - contracts "git.vakhrushev.me/av/transcriber/internal/repo" - "github.com/doug-martin/goqu/v9" + goqu "github.com/doug-martin/goqu/v9" ) type TranscriptJobRepository struct { @@ -162,7 +162,7 @@ func (repo *TranscriptJobRepository) FindAndAcquire(state, acquisitionId string, return nil, fmt.Errorf("failed check affected rows: %w", err) } if rowsAffected == 0 { - e := contracts.JobNotFoundError{State: state, Message: "appropriate job not found"} + e := contract.JobNotFoundError{State: state, Message: "appropriate job not found"} return nil, &e } if rowsAffected != 1 { diff --git a/internal/repo/contracts.go b/internal/contract/contract.go similarity index 97% rename from internal/repo/contracts.go rename to internal/contract/contract.go index c60b6f8..9f6cdf6 100644 --- a/internal/repo/contracts.go +++ b/internal/contract/contract.go @@ -1,4 +1,4 @@ -package repo +package contract import ( "fmt" diff --git a/internal/controller/http/transcribe.go b/internal/controller/http/transcribe.go index f681811..2b1b3e5 100644 --- a/internal/controller/http/transcribe.go +++ b/internal/controller/http/transcribe.go @@ -5,19 +5,19 @@ import ( "net/http" "time" - "git.vakhrushev.me/av/transcriber/internal/repo" - "git.vakhrushev.me/av/transcriber/internal/service/transcribe" + "git.vakhrushev.me/av/transcriber/internal/contract" + "git.vakhrushev.me/av/transcriber/internal/service" "github.com/gin-gonic/gin" ) const baseStorageDir = "data/files" type TranscribeHandler struct { - jobRepo repo.TranscriptJobRepository - trsService *transcribe.TranscribeService + jobRepo contract.TranscriptJobRepository + trsService *service.TranscribeService } -func NewTranscribeHandler(jobRepo repo.TranscriptJobRepository, trsService *transcribe.TranscribeService) *TranscribeHandler { +func NewTranscribeHandler(jobRepo contract.TranscriptJobRepository, trsService *service.TranscribeService) *TranscribeHandler { return &TranscribeHandler{jobRepo: jobRepo, trsService: trsService} } diff --git a/internal/controller/http/transcribe_test.go b/internal/controller/http/transcribe_test.go index b7261b5..aeb3d9f 100644 --- a/internal/controller/http/transcribe_test.go +++ b/internal/controller/http/transcribe_test.go @@ -15,9 +15,9 @@ import ( "testing" "time" + "git.vakhrushev.me/av/transcriber/internal/adapter/sqlite" "git.vakhrushev.me/av/transcriber/internal/entity" - "git.vakhrushev.me/av/transcriber/internal/repo/sqlite" - "git.vakhrushev.me/av/transcriber/internal/service/transcribe" + "git.vakhrushev.me/av/transcriber/internal/service" "github.com/doug-martin/goqu/v9" _ "github.com/doug-martin/goqu/v9/dialect/sqlite3" "github.com/gin-gonic/gin" @@ -56,7 +56,7 @@ func setupTestRouter(t *testing.T) (*gin.Engine, *TranscribeHandler) { fileRepo := sqlite.NewFileRepository(db, gq) jobRepo := sqlite.NewTranscriptJobRepository(db, gq) - trsService := transcribe.NewTranscribeService(jobRepo, fileRepo) + trsService := service.NewTranscribeService(jobRepo, fileRepo) handler := NewTranscribeHandler(jobRepo, trsService) diff --git a/internal/controller/worker/worker.go b/internal/controller/worker/worker.go index 2c63c16..0eecbc5 100644 --- a/internal/controller/worker/worker.go +++ b/internal/controller/worker/worker.go @@ -5,7 +5,7 @@ import ( "log" "time" - "git.vakhrushev.me/av/transcriber/internal/service/transcribe" + "git.vakhrushev.me/av/transcriber/internal/service" ) // Worker представляет базовый интерфейс для всех воркеров @@ -16,10 +16,10 @@ type Worker interface { // ConversionWorker обрабатывает задачи конвертации type ConversionWorker struct { - transcribeService *transcribe.TranscribeService + transcribeService *service.TranscribeService } -func NewConversionWorker(transcribeService *transcribe.TranscribeService) *ConversionWorker { +func NewConversionWorker(transcribeService *service.TranscribeService) *ConversionWorker { return &ConversionWorker{ transcribeService: transcribeService, } @@ -57,10 +57,10 @@ func (w *ConversionWorker) Start(ctx context.Context) { // TranscribeWorker обрабатывает задачи транскрипции type TranscribeWorker struct { - transcribeService *transcribe.TranscribeService + transcribeService *service.TranscribeService } -func NewTranscribeWorker(transcribeService *transcribe.TranscribeService) *TranscribeWorker { +func NewTranscribeWorker(transcribeService *service.TranscribeService) *TranscribeWorker { return &TranscribeWorker{ transcribeService: transcribeService, } @@ -98,10 +98,10 @@ func (w *TranscribeWorker) Start(ctx context.Context) { // CheckWorker обрабатывает задачи проверки статуса распознавания type CheckWorker struct { - transcribeService *transcribe.TranscribeService + transcribeService *service.TranscribeService } -func NewCheckWorker(transcribeService *transcribe.TranscribeService) *CheckWorker { +func NewCheckWorker(transcribeService *service.TranscribeService) *CheckWorker { return &CheckWorker{ transcribeService: transcribeService, } diff --git a/internal/service/transcribe/transcribe.go b/internal/service/transcribe.go similarity index 94% rename from internal/service/transcribe/transcribe.go rename to internal/service/transcribe.go index 730fb3e..06d6e3d 100644 --- a/internal/service/transcribe/transcribe.go +++ b/internal/service/transcribe.go @@ -1,4 +1,4 @@ -package transcribe +package service import ( "fmt" @@ -8,8 +8,8 @@ import ( "path/filepath" "time" + "git.vakhrushev.me/av/transcriber/internal/contract" "git.vakhrushev.me/av/transcriber/internal/entity" - "git.vakhrushev.me/av/transcriber/internal/repo" "git.vakhrushev.me/av/transcriber/internal/repo/ffmpeg" "git.vakhrushev.me/av/transcriber/internal/service/s3" "git.vakhrushev.me/av/transcriber/internal/service/speechkit" @@ -19,11 +19,11 @@ import ( const baseStorageDir = "data/files" type TranscribeService struct { - jobRepo repo.TranscriptJobRepository - fileRepo repo.FileRepository + jobRepo contract.TranscriptJobRepository + fileRepo contract.FileRepository } -func NewTranscribeService(jobRepo repo.TranscriptJobRepository, fileRepo repo.FileRepository) *TranscribeService { +func NewTranscribeService(jobRepo contract.TranscriptJobRepository, fileRepo contract.FileRepository) *TranscribeService { return &TranscribeService{jobRepo: jobRepo, fileRepo: fileRepo} } @@ -95,7 +95,7 @@ func (s *TranscribeService) FindAndRunConversionJob() error { job, err := s.jobRepo.FindAndAcquire(entity.StateCreated, acquisitionId, rottingTime) if err != nil { - if _, ok := err.(*repo.JobNotFoundError); ok { + if _, ok := err.(*contract.JobNotFoundError); ok { return nil } return err @@ -154,7 +154,7 @@ func (s *TranscribeService) FindAndRunTranscribeJob() error { jobRecord, err := s.jobRepo.FindAndAcquire(entity.StateConverted, acquisitionId, rottingTime) if err != nil { - if _, ok := err.(*repo.JobNotFoundError); ok { + if _, ok := err.(*contract.JobNotFoundError); ok { return nil } return err @@ -222,7 +222,7 @@ func (s *TranscribeService) FindAndRunTranscribeCheckJob() error { job, err := s.jobRepo.FindAndAcquire(entity.StateTranscribe, acquisitionId, rottingTime) if err != nil { - if _, ok := err.(*repo.JobNotFoundError); ok { + if _, ok := err.(*contract.JobNotFoundError); ok { return nil } return err diff --git a/main.go b/main.go index 8ee1231..24f0662 100644 --- a/main.go +++ b/main.go @@ -12,10 +12,10 @@ import ( "syscall" "time" + "git.vakhrushev.me/av/transcriber/internal/adapter/sqlite" httpcontroller "git.vakhrushev.me/av/transcriber/internal/controller/http" "git.vakhrushev.me/av/transcriber/internal/controller/worker" - "git.vakhrushev.me/av/transcriber/internal/repo/sqlite" - "git.vakhrushev.me/av/transcriber/internal/service/transcribe" + "git.vakhrushev.me/av/transcriber/internal/service" "github.com/doug-martin/goqu/v9" _ "github.com/doug-martin/goqu/v9/dialect/sqlite3" "github.com/gin-gonic/gin" @@ -55,7 +55,7 @@ func main() { fileRepo := sqlite.NewFileRepository(db, gq) jobRepo := sqlite.NewTranscriptJobRepository(db, gq) - transcribeService := transcribe.NewTranscribeService(jobRepo, fileRepo) + transcribeService := service.NewTranscribeService(jobRepo, fileRepo) // Создаем воркеры conversionWorker := worker.NewConversionWorker(transcribeService)