- Реализовать тесты для поиска MP3-файлов и переименования/организации папок книг в репозитории файловой системы. - Создать FileLogger для записи сообщений в файл с поддержкой различных уровней журналирования и управления размером файлов. - Разработать репозиторий RuTracker для обработки поиска торрентов, получения метаданных и загрузки торрент-файлов. - Добавить тесты для нормализации URL в репозиторий RuTracker. - Реализовать адаптер логгера TUI для отображения логов в терминальном интерфейсе и, при необходимости, для записи логов в базовый логгер. - Создать менеджер TUI для управления пользовательским интерфейсом приложения, включая главное меню, экран обработки, настройки и отображение результатов.
22 lines
707 B
Go
22 lines
707 B
Go
package repositories
|
||
|
||
import "audio-catalyst/internal/domain/entities"
|
||
|
||
// RuTrackerRepository интерфейс для работы с RuTracker
|
||
type RuTrackerRepository interface {
|
||
// Login выполняет авторизацию
|
||
Login() error
|
||
|
||
// Search выполняет поиск торрентов
|
||
Search(query string, page int) ([]entities.Torrent, error)
|
||
|
||
// GetTopicMetadata получает метаданные со страницы темы
|
||
GetTopicMetadata(topicID string) (*entities.RuTrackerResult, error)
|
||
|
||
// DownloadTorrent скачивает торрент файл
|
||
DownloadTorrent(topicID string) ([]byte, error)
|
||
|
||
// Close закрывает соединение
|
||
Close()
|
||
}
|