diff options
Diffstat (limited to 'internal/fetcher/channel.go')
-rw-r--r-- | internal/fetcher/channel.go | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/internal/fetcher/channel.go b/internal/fetcher/channel.go index 5dc84b4..fd7427c 100644 --- a/internal/fetcher/channel.go +++ b/internal/fetcher/channel.go @@ -22,6 +22,23 @@ type ChannelFetcher struct { Logger *slog.Logger } +func NewChannelFetcher( + source *config.Source, + dataPath string, + logger *slog.Logger, +) (*ChannelFetcher, error) { + switch source.Importer { + case config.Options: + return &ChannelFetcher{ + DataPath: dataPath, + Source: source, + Logger: logger, + }, nil + default: + return nil, fmt.Errorf("unsupported importer type %s", source.Importer) + } +} + func (i *ChannelFetcher) FetchIfNeeded( parent context.Context, ) (f FetchedFiles, updated bool, err error) { @@ -91,8 +108,7 @@ func (i *ChannelFetcher) FetchIfNeeded( updated = before != after f = FetchedFiles{ - Options: path.Join(dest, i.Source.OutputPath, "options.json"), - Packages: path.Join(dest, i.Source.OutputPath, "packages.json"), + Options: path.Join(dest, i.Source.OutputPath, "options.json"), } return |