func (u *User) ToUntrackingStatement(w *jsonw.Wrapper) (err error) { untrack := jsonw.NewDictionary() untrack.SetKey("basics", u.ToUntrackingStatementBasics()) untrack.SetKey("id", UIDWrapper(u.GetUID())) w.SetKey("untrack", untrack) return }
func remoteProofToTrackingStatement(s RemoteProofChainLink, base *jsonw.Wrapper) error { typS := s.TableKey() i, found := RemoteServiceTypes[typS] if !found { return fmt.Errorf("No service type found for %q in proof %d", typS, s.GetSeqno()) } base.AtKey("remote_key_proof").SetKey("proof_type", jsonw.NewInt(int(i))) base.AtKey("remote_key_proof").SetKey("check_data_json", s.CheckDataJSON()) base.SetKey("sig_type", jsonw.NewInt(SigTypeRemoteProof)) return nil }
func (u *User) ToTrackingStatement(w *jsonw.Wrapper, outcome *IdentifyOutcome) (err error) { track := jsonw.NewDictionary() track.SetKey("key", u.ToTrackingStatementKey(&err)) if pgpkeys := u.ToTrackingStatementPGPKeys(&err); pgpkeys != nil { track.SetKey("pgp_keys", pgpkeys) } track.SetKey("seq_tail", u.ToTrackingStatementSeqTail()) track.SetKey("basics", u.ToTrackingStatementBasics(&err)) track.SetKey("id", UIDWrapper(u.id)) track.SetKey("remote_proofs", outcome.TrackingStatement()) if err != nil { return } w.SetKey("track", track) return }