func (g *gregorHandler) InjectItem(cat string, body []byte) (gregor.MsgID, error) { var err error defer g.G().Trace(fmt.Sprintf("gregorHandler.InjectItem(%s)", cat), func() error { return err }, )() creation, err := g.templateMessage() if err != nil { return nil, err } creation.Ibm_.StateUpdate_.Creation_ = &gregor1.Item{ Category_: gregor1.Category(cat), Body_: gregor1.Body(body), } incomingClient := gregor1.IncomingClient{Cli: g.cli} // TODO: Should the interface take a context from the caller? err = incomingClient.ConsumeMessage(context.TODO(), *creation) return creation.Ibm_.StateUpdate_.Md_.MsgID_, err }
func rekeyBroadcast(tc libkb.TestContext, gUID gregor1.UID, h *gregorHandler, body string) { msgID := gregor1.MsgID("my_random_id") m := gregor1.Message{ Ibm_: &gregor1.InBandMessage{ StateUpdate_: &gregor1.StateUpdateMessage{ Md_: gregor1.Metadata{ MsgID_: msgID, Ctime_: gregor1.ToTime(tc.G.Clock().Now()), Uid_: gUID, }, Creation_: &gregor1.Item{ Category_: gregor1.Category("kbfs_tlf_rekey_needed"), Body_: gregor1.Body(body), }, }, }, } if err := h.BroadcastMessage(context.Background(), m); err != nil { tc.T.Fatal(err) } }