mirror of
https://github.com/mxpv/podsync.git
synced 2024-05-11 05:55:04 +00:00
Refactor packages
This commit is contained in:
web/pkg/feeds
@ -13,12 +13,11 @@ import (
|
|||||||
type service struct {
|
type service struct {
|
||||||
id id
|
id id
|
||||||
storage storage
|
storage storage
|
||||||
parser parser
|
|
||||||
builders map[api.Provider]builder
|
builders map[api.Provider]builder
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *service) CreateFeed(ctx context.Context, req *api.CreateFeedRequest) (string, error) {
|
func (s *service) CreateFeed(ctx context.Context, req *api.CreateFeedRequest) (string, error) {
|
||||||
feed, err := s.parser.ParseURL(req.URL)
|
feed, err := parseURL(req.URL)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", errors.Wrapf(err, "failed to create feed for URL: %s", req.URL)
|
return "", errors.Wrapf(err, "failed to create feed for URL: %s", req.URL)
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,3 @@ type storage interface {
|
|||||||
type builder interface {
|
type builder interface {
|
||||||
Build(feed *api.Feed) (podcast *itunes.Podcast, err error)
|
Build(feed *api.Feed) (podcast *itunes.Podcast, err error)
|
||||||
}
|
}
|
||||||
|
|
||||||
type parser interface {
|
|
||||||
ParseURL(link string) (feed *api.Feed, err error)
|
|
||||||
}
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package parsers
|
package feeds
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"net/url"
|
"net/url"
|
||||||
@ -8,7 +8,7 @@ import (
|
|||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
)
|
)
|
||||||
|
|
||||||
func ParseURL(link string) (*api.Feed, error) {
|
func parseURL(link string) (*api.Feed, error) {
|
||||||
parsed, err := url.Parse(link)
|
parsed, err := url.Parse(link)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
err = errors.Wrapf(err, "failed to parse url: %s", link)
|
err = errors.Wrapf(err, "failed to parse url: %s", link)
|
@ -1,4 +1,4 @@
|
|||||||
package parsers
|
package feeds
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"net/url"
|
"net/url"
|
Reference in New Issue
Block a user