preset scraper added
This commit is contained in:
18
pkg/service/prescene.go
Normal file
18
pkg/service/prescene.go
Normal file
@@ -0,0 +1,18 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"git.amok.space/yevhen/resource-scraper/types/interface"
|
||||
"git.amok.space/yevhen/resource-scraper/types/model"
|
||||
)
|
||||
|
||||
type PresceneService struct {
|
||||
repo _interface.Prescene
|
||||
}
|
||||
|
||||
func NewPresceneService(repo _interface.Prescene) *PresceneService {
|
||||
return &PresceneService{repo: repo}
|
||||
}
|
||||
|
||||
func (p *PresceneService) GetPage(pageNumbers []string) ([]model.ExternalSources, error) {
|
||||
return p.repo.GetPage(pageNumbers)
|
||||
}
|
||||
@@ -1,17 +1,18 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
iface "git.amok.space/yevhen/resource-scraper/types"
|
||||
"git.amok.space/yevhen/resource-scraper/types/interface"
|
||||
"git.amok.space/yevhen/resource-scraper/types/model"
|
||||
)
|
||||
|
||||
type RutrackerService struct {
|
||||
repo iface.Rutracker
|
||||
repo _interface.Rutracker
|
||||
}
|
||||
|
||||
func NewRutrackerService(repo iface.Rutracker) *RutrackerService {
|
||||
func NewRutrackerService(repo _interface.Rutracker) *RutrackerService {
|
||||
return &RutrackerService{repo: repo}
|
||||
}
|
||||
|
||||
func (s *RutrackerService) GetTopic(topic []string) error {
|
||||
func (s *RutrackerService) GetTopic(topic []string) ([]model.ExternalSources, error) {
|
||||
return s.repo.GetTopic(topic)
|
||||
}
|
||||
|
||||
@@ -1,24 +1,18 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"github.com/spf13/viper"
|
||||
|
||||
"git.amok.space/yevhen/resource-scraper/pkg/repository"
|
||||
"git.amok.space/yevhen/resource-scraper/types"
|
||||
"git.amok.space/yevhen/resource-scraper/types/interface"
|
||||
)
|
||||
|
||||
type Service struct {
|
||||
types.Rutracker
|
||||
_interface.Rutracker
|
||||
_interface.Prescene
|
||||
}
|
||||
|
||||
func New(repos *repository.Repository) *Service {
|
||||
|
||||
switch viper.GetString("scope") {
|
||||
case types.RuTracker:
|
||||
return &Service{
|
||||
Rutracker: NewRutrackerService(repos.Rutracker),
|
||||
}
|
||||
return &Service{
|
||||
Rutracker: NewRutrackerService(repos.Rutracker),
|
||||
Prescene: NewPresceneService(repos.Prescene),
|
||||
}
|
||||
|
||||
return &Service{}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user