func (g *gregorHandler) handleOutOfBandMessage(ctx context.Context, obm gregor.OutOfBandMessage) error { g.Debug("handleOutOfBand: %+v", obm) if obm.System() == nil { return errors.New("nil system in out of band message") } if tmp, ok := obm.(gregor1.OutOfBandMessage); ok { g.pushOutOfBandMessages([]gregor1.OutOfBandMessage{tmp}) } else { g.G().Log.Warning("Got non-exportable out-of-band message") } switch obm.System().String() { case "kbfs.favorites": return g.kbfsFavorites(ctx, obm) default: return fmt.Errorf("unhandled system: %s", obm.System()) } }