Make a change to visitor to allow it to accept an error, like Go's path walker

This commit is contained in:
feihujiang
2015-06-15 10:48:56 +08:00
parent b5a4a548df
commit 29dc7f6ec2
12 changed files with 128 additions and 101 deletions

View File

@@ -115,7 +115,10 @@ func RunReplace(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []st
return err
}
return r.Visit(func(info *resource.Info) error {
return r.Visit(func(info *resource.Info, err error) error {
if err != nil {
return err
}
data, err := info.Mapping.Codec.Encode(info.Object)
if err != nil {
return cmdutil.AddSourceToErr("replacing", info.Source, err)
@@ -196,7 +199,10 @@ func forceReplace(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []
}
count := 0
err = r.Visit(func(info *resource.Info) error {
err = r.Visit(func(info *resource.Info, err error) error {
if err != nil {
return err
}
data, err := info.Mapping.Codec.Encode(info.Object)
if err != nil {
return err