fix NamespacedName decoder

This commit is contained in:
Murat Kabilov 2017-05-24 18:37:36 +02:00
parent 009db16c7c
commit 94e175eb12
1 changed files with 10 additions and 5 deletions

View File

@ -1,6 +1,8 @@
package spec
import (
"fmt"
"strings"
"database/sql"
"k8s.io/client-go/pkg/api/v1"
@ -62,10 +64,6 @@ type UserSyncer interface {
}
func (n NamespacedName) String() string {
if n.Namespace == "" && n.Name == "" {
return ""
}
return types.NamespacedName(n).String()
}
@ -75,9 +73,16 @@ func (n NamespacedName) MarshalJSON() ([]byte, error) {
func (n *NamespacedName) Decode(value string) error {
name := types.NewNamespacedNameFromString(value)
if value != "" && name == (types.NamespacedName{}) {
if strings.Trim(value, string(types.Separator)) != "" && name == (types.NamespacedName{}) {
name.Name = value
name.Namespace = v1.NamespaceDefault
} else if name.Namespace == "" {
name.Namespace = v1.NamespaceDefault
}
if name.Name == "" {
return fmt.Errorf("Incorrect namespaced name")
}
*n = NamespacedName(name)