2020-11-26 16:39:06 +08:00
|
|
|
package dnsclients
|
|
|
|
|
|
2022-03-10 17:42:23 +08:00
|
|
|
import (
|
|
|
|
|
"errors"
|
|
|
|
|
"github.com/TeaOSLab/EdgeAPI/internal/dnsclients/dnstypes"
|
|
|
|
|
"github.com/iwind/TeaGo/types"
|
|
|
|
|
)
|
|
|
|
|
|
2020-11-26 16:39:06 +08:00
|
|
|
type BaseProvider struct {
|
|
|
|
|
}
|
2022-03-10 17:42:23 +08:00
|
|
|
|
|
|
|
|
// WrapError 封装解析相关错误
|
|
|
|
|
func (this *BaseProvider) WrapError(err error, domain string, record *dnstypes.Record) error {
|
|
|
|
|
if err == nil {
|
|
|
|
|
return nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if record == nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var fullname = ""
|
|
|
|
|
if len(record.Name) == 0 {
|
|
|
|
|
fullname = domain
|
|
|
|
|
} else {
|
|
|
|
|
fullname = record.Name + "." + domain
|
|
|
|
|
}
|
|
|
|
|
return errors.New("record operation failed: '" + fullname + " " + record.Type + " " + record.Value + " " + types.String(record.TTL) + "': " + err.Error())
|
|
|
|
|
}
|
2022-10-20 18:06:27 +08:00
|
|
|
|