v/GTT
1
0
mirror of https://github.com/eeeXun/GTT.git synced 2025-05-17 00:00:16 -07:00

refactor: APIKey in struct

This commit is contained in:
eeeXun 2023-05-01 11:11:30 +08:00
parent 4cb525a97e
commit 76ae888f29
7 changed files with 27 additions and 22 deletions

View File

@ -16,6 +16,7 @@ const (
) )
type Translator struct { type Translator struct {
*core.APIKey
*core.Language *core.Language
*core.TTSLock *core.TTSLock
core.EngineName core.EngineName
@ -23,15 +24,13 @@ type Translator struct {
func NewTranslator() *Translator { func NewTranslator() *Translator {
return &Translator{ return &Translator{
APIKey: new(core.APIKey),
Language: new(core.Language), Language: new(core.Language),
TTSLock: core.NewTTSLock(), TTSLock: core.NewTTSLock(),
EngineName: core.NewEngineName("Apertium"), EngineName: core.NewEngineName("Apertium"),
} }
} }
func (t *Translator) SetAPIKey(key string) {
}
func (t *Translator) GetAllLang() []string { func (t *Translator) GetAllLang() []string {
return lang return lang
} }

View File

@ -16,6 +16,7 @@ const (
) )
type Translator struct { type Translator struct {
*core.APIKey
*core.Language *core.Language
*core.TTSLock *core.TTSLock
core.EngineName core.EngineName
@ -23,15 +24,13 @@ type Translator struct {
func NewTranslator() *Translator { func NewTranslator() *Translator {
return &Translator{ return &Translator{
APIKey: new(core.APIKey),
Language: new(core.Language), Language: new(core.Language),
TTSLock: core.NewTTSLock(), TTSLock: core.NewTTSLock(),
EngineName: core.NewEngineName("Argos"), EngineName: core.NewEngineName("Argos"),
} }
} }
func (t *Translator) SetAPIKey(key string) {
}
func (t *Translator) GetAllLang() []string { func (t *Translator) GetAllLang() []string {
return lang return lang
} }

View File

@ -25,6 +25,7 @@ const (
) )
type Translator struct { type Translator struct {
*core.APIKey
*core.Language *core.Language
*core.TTSLock *core.TTSLock
core.EngineName core.EngineName
@ -39,15 +40,13 @@ type setUpData struct {
func NewTranslator() *Translator { func NewTranslator() *Translator {
return &Translator{ return &Translator{
APIKey: new(core.APIKey),
Language: new(core.Language), Language: new(core.Language),
TTSLock: core.NewTTSLock(), TTSLock: core.NewTTSLock(),
EngineName: core.NewEngineName("Bing"), EngineName: core.NewEngineName("Bing"),
} }
} }
func (t *Translator) SetAPIKey(key string) {
}
func (t *Translator) GetAllLang() []string { func (t *Translator) GetAllLang() []string {
return lang return lang
} }

View File

@ -16,24 +16,21 @@ const (
) )
type Translator struct { type Translator struct {
*core.APIKey
*core.Language *core.Language
*core.TTSLock *core.TTSLock
core.EngineName core.EngineName
apiKey string
} }
func NewTranslator() *Translator { func NewTranslator() *Translator {
return &Translator{ return &Translator{
APIKey: new(core.APIKey),
Language: new(core.Language), Language: new(core.Language),
TTSLock: core.NewTTSLock(), TTSLock: core.NewTTSLock(),
EngineName: core.NewEngineName("ChatGPT"), EngineName: core.NewEngineName("ChatGPT"),
} }
} }
func (t *Translator) SetAPIKey(key string) {
t.apiKey = key
}
func (t *Translator) GetAllLang() []string { func (t *Translator) GetAllLang() []string {
return lang return lang
} }
@ -42,7 +39,7 @@ func (t *Translator) Translate(message string) (translation *core.Translation, e
translation = new(core.Translation) translation = new(core.Translation)
var data map[string]interface{} var data map[string]interface{}
if len(t.apiKey) <= 0 { if len(t.GetAPIKey()) <= 0 {
return nil, errors.New("Please write your API Key in config file for " + t.GetEngineName()) return nil, errors.New("Please write your API Key in config file for " + t.GetEngineName())
} }
@ -64,7 +61,7 @@ func (t *Translator) Translate(message string) (translation *core.Translation, e
bytes.NewBuffer(userData), bytes.NewBuffer(userData),
) )
req.Header.Add("Content-Type", "application/json") req.Header.Add("Content-Type", "application/json")
req.Header.Add("Authorization", "Bearer "+t.apiKey) req.Header.Add("Authorization", "Bearer "+t.GetAPIKey())
res, err := http.DefaultClient.Do(req) res, err := http.DefaultClient.Do(req)
if err != nil { if err != nil {
return nil, err return nil, err

View File

@ -0,0 +1,13 @@
package core
type APIKey struct {
key string
}
func (k *APIKey) SetAPIKey(key string) {
k.key = key
}
func (k *APIKey) GetAPIKey() string {
return k.key
}

View File

@ -20,6 +20,7 @@ const (
) )
type Translator struct { type Translator struct {
*core.APIKey
*core.Language *core.Language
*core.TTSLock *core.TTSLock
core.EngineName core.EngineName
@ -27,15 +28,13 @@ type Translator struct {
func NewTranslator() *Translator { func NewTranslator() *Translator {
return &Translator{ return &Translator{
APIKey: new(core.APIKey),
Language: new(core.Language), Language: new(core.Language),
TTSLock: core.NewTTSLock(), TTSLock: core.NewTTSLock(),
EngineName: core.NewEngineName("Google"), EngineName: core.NewEngineName("Google"),
} }
} }
func (t *Translator) SetAPIKey(key string) {
}
func (t *Translator) GetAllLang() []string { func (t *Translator) GetAllLang() []string {
return lang return lang
} }

View File

@ -22,6 +22,7 @@ const (
) )
type Translator struct { type Translator struct {
*core.APIKey
*core.Language *core.Language
*core.TTSLock *core.TTSLock
core.EngineName core.EngineName
@ -29,15 +30,13 @@ type Translator struct {
func NewTranslator() *Translator { func NewTranslator() *Translator {
return &Translator{ return &Translator{
APIKey: new(core.APIKey),
Language: new(core.Language), Language: new(core.Language),
TTSLock: core.NewTTSLock(), TTSLock: core.NewTTSLock(),
EngineName: core.NewEngineName("Reverso"), EngineName: core.NewEngineName("Reverso"),
} }
} }
func (t *Translator) SetAPIKey(key string) {
}
func (t *Translator) GetAllLang() []string { func (t *Translator) GetAllLang() []string {
return lang return lang
} }