Files
gof3/forges/forgejo/options/options.go
2023-12-11 08:55:14 +01:00

44 lines
1.1 KiB
Go

// Copyright Earl Warren <contact@earl-warren.org>
// Copyright Loïc Dachary <loic@dachary.org>
// SPDX-License-Identifier: MIT
package options
import (
"context"
"net/http"
"lab.forgefriends.org/friendlyforgeformat/gof3/forges/helpers/auth"
"lab.forgefriends.org/friendlyforgeformat/gof3/options"
"lab.forgefriends.org/friendlyforgeformat/gof3/options/logger"
"github.com/urfave/cli/v2"
)
type NewMigrationHTTPClientFun func() *http.Client
type Options struct {
options.Options
logger.OptionsLogger
auth.ForgeAuth
Version string
NewMigrationHTTPClient NewMigrationHTTPClientFun
}
func (o *Options) GetNewMigrationHTTPClient() NewMigrationHTTPClientFun {
return o.NewMigrationHTTPClient
}
func (o *Options) SetNewMigrationHTTPClient(fun NewMigrationHTTPClientFun) {
o.NewMigrationHTTPClient = fun
}
func (o *Options) FromFlags(ctx context.Context, c *cli.Context, prefix string) {
o.ForgeAuth.FromFlags(ctx, c, prefix)
}
func (o *Options) GetFlags(prefix, category string) []cli.Flag {
return o.ForgeAuth.GetFlags(prefix, category)
}