本文整理汇总了Golang中github.com/koding/kite/dnode.Partial.MustUnmarshal方法的典型用法代码示例。如果您正苦于以下问题:Golang Partial.MustUnmarshal方法的具体用法?Golang Partial.MustUnmarshal怎么用?Golang Partial.MustUnmarshal使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/koding/kite/dnode.Partial
的用法示例。
在下文中一共展示了Partial.MustUnmarshal方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Callback
// Callback is the callback, used to update the progress bar as remote.cache
// downloads
func (cb *CacheCallback) Callback(par *dnode.Partial) {
type Progress struct {
Progress int `json:progress`
Error kite.Error `json:error`
}
// TODO: Why is this an array from Klient? How can this be written cleaner?
ps := []Progress{{}}
par.MustUnmarshal(&ps)
p := ps[0]
cb.Log.Debug("CacheCallback Progress: %#v", p)
if p.Error.Message != "" {
cb.doneErr <- p.Error
}
cb.Bar.Set(p.Progress)
// TODO: Disable the callback here, so that it's impossible to double call
// the progress after competion - to avoid weird/bad UX and errors.
if p.Progress == 100 {
cb.doneErr <- nil
}
}