Documentation
¶
Index ¶
- func BuildDetectionIndex(configs []ProviderConfig) ([]PrefixEntry, []PatternEntry)
- func DetectProviderFromIndex(key string, prefixes []PrefixEntry, patterns []PatternEntry, ...) string
- func InitValidators(proxy string, timeout int) (map[string]Validator, error)
- type Detector
- type GenericValidator
- type MetadataConfig
- type MetadataFromValidation
- type PatternEntry
- type PrefixEntry
- type ProviderConfig
- type ProviderInfo
- type ValidationConfig
- type Validator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildDetectionIndex ¶
func BuildDetectionIndex(configs []ProviderConfig) ([]PrefixEntry, []PatternEntry)
func DetectProviderFromIndex ¶
func DetectProviderFromIndex(key string, prefixes []PrefixEntry, patterns []PatternEntry, manualCategory string) string
Types ¶
type Detector ¶
type Detector struct {
// contains filtered or unexported fields
}
func NewDetector ¶
func NewDetector() *Detector
func NewDetectorFromConfigs ¶
func NewDetectorFromConfigs(configs []ProviderConfig) *Detector
type GenericValidator ¶
type GenericValidator struct {
// contains filtered or unexported fields
}
func NewGenericValidator ¶
func NewGenericValidator(cfg ProviderConfig, proxy string, timeout int) (*GenericValidator, error)
func NewGenericValidatorWithClient ¶
func NewGenericValidatorWithClient(cfg ProviderConfig, httpClient *http.Client) *GenericValidator
func (*GenericValidator) KeyPatterns ¶
func (v *GenericValidator) KeyPatterns() []string
func (*GenericValidator) Name ¶
func (v *GenericValidator) Name() string
func (*GenericValidator) Validate ¶
func (v *GenericValidator) Validate(ctx context.Context, apiKey string) (*models.ValidationResult, error)
type MetadataConfig ¶
type MetadataFromValidation ¶
type MetadataFromValidation struct {
BalancePath string `yaml:"balance_path"`
BalanceSubtractPath string `yaml:"balance_subtract_path"`
NamePath string `yaml:"name_path"`
NameFallbackPath string `yaml:"name_fallback_path"`
EmailPath string `yaml:"email_path"`
QuotaPath string `yaml:"quota_path"`
CreditsPath string `yaml:"credits_path"`
VIPLevelPath string `yaml:"vip_level_path"`
TeamNamePath string `yaml:"team_name_path"`
UsernamePath string `yaml:"username_path"`
}
type PatternEntry ¶
type PrefixEntry ¶
type ProviderConfig ¶
type ProviderConfig struct {
Name string `yaml:"name"`
Category string `yaml:"category"`
KeyPrefixes []string `yaml:"key_prefixes"`
KeyPatterns []string `yaml:"key_patterns"`
Validation ValidationConfig `yaml:"validation"`
Metadata []MetadataConfig `yaml:"metadata"`
MetadataFromValidation *MetadataFromValidation `yaml:"metadata_from_validation"`
}
func LoadProviderConfigs ¶
func LoadProviderConfigs() ([]ProviderConfig, error)
type ProviderInfo ¶
func GetAllProviders ¶
func GetAllProviders() ([]ProviderInfo, error)
type ValidationConfig ¶
Click to show internal directories.
Click to hide internal directories.