Refactor project structure

This commit is contained in:
2025-08-12 14:15:26 +03:00
parent 983de269ad
commit e1cb261570
8 changed files with 30 additions and 30 deletions

View File

@@ -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 {

View File

@@ -1,4 +1,4 @@
package repo
package contract
import (
"fmt"

View File

@@ -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}
}

View File

@@ -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)

View File

@@ -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,
}

View File

@@ -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

View File

@@ -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)