Const: use default getters (#17534)
This commit is contained in:
parent
3b58b49429
commit
c39990c49a
2 changed files with 23 additions and 58 deletions
|
|
@ -11,6 +11,7 @@ import (
|
|||
)
|
||||
|
||||
type constProvider struct {
|
||||
*getter
|
||||
ctx context.Context
|
||||
str string
|
||||
set Config
|
||||
|
|
@ -42,72 +43,35 @@ func NewConstFromConfig(ctx context.Context, other map[string]interface{}) (Prov
|
|||
return nil, err
|
||||
}
|
||||
|
||||
o := &constProvider{
|
||||
p := &constProvider{
|
||||
ctx: ctx,
|
||||
str: string(b),
|
||||
set: cc.Set,
|
||||
}
|
||||
|
||||
return o, nil
|
||||
p.getter = defaultGetters(p, 1)
|
||||
|
||||
return p, nil
|
||||
}
|
||||
|
||||
var _ StringProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) StringGetter() (func() (string, error), error) {
|
||||
func (p *constProvider) StringGetter() (func() (string, error), error) {
|
||||
return func() (string, error) {
|
||||
return o.str, nil
|
||||
return p.str, nil
|
||||
}, nil
|
||||
}
|
||||
|
||||
var _ IntProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) IntGetter() (func() (int64, error), error) {
|
||||
val, err := strconv.ParseInt(o.str, 10, 64)
|
||||
if err != nil && o.str == "" {
|
||||
err = nil
|
||||
}
|
||||
|
||||
return func() (int64, error) {
|
||||
return val, err
|
||||
}, err
|
||||
}
|
||||
|
||||
var _ FloatProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) FloatGetter() (func() (float64, error), error) {
|
||||
val, err := strconv.ParseFloat(o.str, 64)
|
||||
if err != nil && o.str == "" {
|
||||
err = nil
|
||||
}
|
||||
|
||||
return func() (float64, error) {
|
||||
return val, err
|
||||
}, err
|
||||
}
|
||||
|
||||
var _ BoolProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) BoolGetter() (func() (bool, error), error) {
|
||||
val, err := strconv.ParseBool(o.str)
|
||||
if err != nil && o.str == "" {
|
||||
err = nil
|
||||
}
|
||||
|
||||
return func() (bool, error) {
|
||||
return val, err
|
||||
}, err
|
||||
}
|
||||
|
||||
var _ SetIntProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) IntSetter(param string) (func(int64) error, error) {
|
||||
set, err := NewIntSetterFromConfig(o.ctx, param, o.set)
|
||||
func (p *constProvider) IntSetter(param string) (func(int64) error, error) {
|
||||
set, err := NewIntSetterFromConfig(p.ctx, param, p.set)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
val, err := strconv.ParseInt(o.str, 10, 64)
|
||||
if err != nil && o.str == "" {
|
||||
val, err := strconv.ParseInt(p.str, 10, 64)
|
||||
if err != nil && p.str == "" {
|
||||
err = nil
|
||||
}
|
||||
|
||||
|
|
@ -118,14 +82,14 @@ func (o *constProvider) IntSetter(param string) (func(int64) error, error) {
|
|||
|
||||
var _ SetFloatProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) FloatSetter(param string) (func(float64) error, error) {
|
||||
set, err := NewFloatSetterFromConfig(o.ctx, param, o.set)
|
||||
func (p *constProvider) FloatSetter(param string) (func(float64) error, error) {
|
||||
set, err := NewFloatSetterFromConfig(p.ctx, param, p.set)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
val, err := strconv.ParseFloat(o.str, 64)
|
||||
if err != nil && o.str == "" {
|
||||
val, err := strconv.ParseFloat(p.str, 64)
|
||||
if err != nil && p.str == "" {
|
||||
err = nil
|
||||
}
|
||||
|
||||
|
|
@ -136,14 +100,14 @@ func (o *constProvider) FloatSetter(param string) (func(float64) error, error) {
|
|||
|
||||
var _ SetBoolProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) BoolSetter(param string) (func(bool) error, error) {
|
||||
set, err := NewBoolSetterFromConfig(o.ctx, param, o.set)
|
||||
func (p *constProvider) BoolSetter(param string) (func(bool) error, error) {
|
||||
set, err := NewBoolSetterFromConfig(p.ctx, param, p.set)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
val, err := strconv.ParseBool(o.str)
|
||||
if err != nil && o.str == "" {
|
||||
val, err := strconv.ParseBool(p.str)
|
||||
if err != nil && p.str == "" {
|
||||
err = nil
|
||||
}
|
||||
|
||||
|
|
@ -154,13 +118,13 @@ func (o *constProvider) BoolSetter(param string) (func(bool) error, error) {
|
|||
|
||||
var _ SetBytesProvider = (*constProvider)(nil)
|
||||
|
||||
func (o *constProvider) BytesSetter(param string) (func([]byte) error, error) {
|
||||
set, err := NewBytesSetterFromConfig(o.ctx, param, o.set)
|
||||
func (p *constProvider) BytesSetter(param string) (func([]byte) error, error) {
|
||||
set, err := NewBytesSetterFromConfig(p.ctx, param, p.set)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
str := strings.ReplaceAll(strings.TrimPrefix(o.str, "0x"), "_", "")
|
||||
str := strings.ReplaceAll(strings.TrimPrefix(p.str, "0x"), "_", "")
|
||||
|
||||
val, err := hex.DecodeString(str)
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ template: allinpower
|
|||
products:
|
||||
- brand: All in Power
|
||||
requirements:
|
||||
evcc: ["skiptest"]
|
||||
description:
|
||||
de: "Nur für die Niederlande verfügbar."
|
||||
en: "Only available for the Netherlands."
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue